Its okay with me if they use flashram for trouble codes, learning modes, and radio stations, GPS, even menu setups. But everything else should be stored in PROM, and they should write the code correct the first time!
They did have to do this with OBD I! Sure keep a close eye on your battery and its connections, the only filter for the alternator, in can generate spikes up to 150 V that will wipe out your code with flashram, only take 0.5volts on the wrong pin to do this. At times I wish I didn't know this stuff, a million transistors to fire an injector or a spark plug, but been carrying towing insurance ever since. We could use a linear voltage regulator to prevent this, but the bean counters and stock holders carry a lot more weight, so switching the field coil constantly to save a buck, each time that field collapses, we are talking about what Tesla discovered over a hundred years ago, and doing this from anywhere to 50 to 400 times per second.
To the best of my knowledge EPA emission requirement are only to a given year, no need to change this, but also requires a hardware change, can't do this with firmware. You still can drive a 57 Chevy without a catalytic converter, seat belts, or air bags.
Some "green" guy in a house painted white someplace learned about this, so came out with cash for clunkers to get this old stuff off the road. It's key benefit was to skyrocket the cost of used vehicles so poorer folks could not afford them anymore.