While I find the BIT() macro to be much better than the BITx defines
Why?
The BITx defines seem to be a rather redundant way of doing things to me.
I don't think it was invented by edk2, so edk2 using it shouldn't be held against the format. :)
Sure, but that's where I remember seeing those defines in coreboot [1].
I don't mind those being "inconsistent" because they represent two different things; one is a single bit value, the other a multibit value.
When you have a register with single bit values and multibit values which is a very common case, I prefer having both in the same style/format. At least for me this improves readability.
There could of course be a multibit macro, but the benefit diminishes because the macro is neither shorter nor simpler than the expansion.
Yeah, that would likely also be bad for readability.
Regards, Felix
[1] https://review.coreboot.org/plugins/gitiles/coreboot/+/refs/heads/master/src...