Bartosz wrote: >> +#define AT24_OF_DEVICE_ID(_mfg, _name) \ >> + { .compatible = #_mfg "," #_name, .data = &platdata_##_name } > > I don't like hiding the way the compatible is created here from the > user. It doesn't save any code neither. Please make the macro accept > the whole compatible string. > If the macro accepts the whole compatible string "mfg,chip-name" (e.g. "atmel,24c01") then how can I extract chip-name from that string? I need to attach chip-name to the platdata_ static structures. (e.g. "atmel,24c01" -> .data = platdata_24c01)