Attention is currently required from: Thomas Heijligen, Edward O'Callaghan, Angel Pons, Anastasia Klimchuk, Nikolai Artemiev, Peter Marheine. Nico Huber has posted comments on this change. ( https://review.coreboot.org/c/flashrom/+/64488 )
Change subject: [RFC] dummyflasher: Wire variable size feature via opaque infra ......................................................................
Patch Set 2:
(1 comment)
File dummyflasher.c:
https://review.coreboot.org/c/flashrom/+/64488/comment/8cb5d49d_3c29eb50 PS1, Line 1269: rmst.spi = *s_mst; : rmst.opaque = *o_mst;
So... do you think it's too bad? :) I don't have another ideas at the moment :\
With the flashrom design in mind it's kind of undefined behavior. CB:50246 is not supposed to change behavior and I assume your current version wouldn't work without that patch. Building hacks on hacks is exactly why we need a bug tracker now.
Maybe worth to share: When Edward started to push chromium code, I said sometimes it can save a lot of time to ignore the existing implementation, find the requirements and implement it from scratch instead. I made exactly that experience before when I tried to port things from chromium myself.
I think it's the same with code on our master branch today. If I wanted to implement this, I'd probably checkout v1.2, implement what is needed and then port it forward. The master branch was in a better state to add new things back then.
Anyway, you already made much progress, so I think such a stunt is not necessary. The only obstacle I see left is the usage of the spi read/ write/erase functions. So how about you try one version without them, i.e. memcpy()/memset() instead. Hmmm, looking at emulate_spi_chip_ response(), also setting `emu_modified` in case but that seems to be all to do. And then let the customer team test that? If it works, there is no need to discuss hacks.