Messages in this thread | | | Subject | Re: [PATCH 01/17] bitfield: Add non-constant field_{prep,get}() helpers | From | Johannes Berg <> | Date | Tue, 23 Nov 2021 17:24:15 +0100 |
| |
On Tue, 2021-11-23 at 09:36 +0100, Geert Uytterhoeven wrote:
Ah, here's your comment wrt. which one is nicer :)
> > > We have the upper-case (constant) versions, and already > > > {u32,...}_get_bits()/etc. > > TBH, I don't like the *_get_bits() API: in general, u32_get_bits() does > the same as FIELD_GET(), but the order of the parameters is different?
I don't really see how "the order of parameters is different" is a downside? Yeah it means if you're used to FIELD_GET() then you'll retrain, but ...?
> (*_replace_bits() seems to be useful, though)
Indeed.
Also as I said in my other mail, the le32/be32/... variants are tremendously useful, and they fundamentally cannot be expressed with the FIELD_GET() or field_get() macros. IMHO this is a clear advantage to the typed versions, and if you ask me we should get rid of the FIELD_GETand FIELD_PREP entirely - difficult now, but at least let's not propagate that?
johannes
| |