On 4/12/22 13:22, Andy Shevchenko wrote: > On Tue, Apr 12, 2022 at 02:21:08PM +0300, Andy Shevchenko wrote: >> On Tue, Apr 12, 2022 at 10:07:02AM +0200, Javier Martinez Canillas wrote: >>> On 4/12/22 09:23, Geert Uytterhoeven wrote: >>>> On Mon, Apr 11, 2022 at 11:12 PM Javier Martinez Canillas >>>> <javierm@xxxxxxxxxx> wrote: > > ... > >>>>> - ssd130x->device_info = device_get_match_data(dev); >>>>> + >>>>> + variant = (enum ssd130x_variants)device_get_match_data(dev); >>>> >>>> (uintptr_t), to avoid a cast from pointer to integer of different >>>> size warning. >>>> >>> >>> Indeed. The kernel test robot reported the same. >> >> Not only because of this, but also with the non-NULL pointers I prefer the old >> style without ugly castings. >> >> Instead, you may export the array (in the driver's namespace) and use >> &info[ID] pointer for the specific device info. > > Note that device_get_match_data() has no clue if the data is absent or > data == (void *)0. > Yep, we could make the enum start at 1 and check for !variant but that's something that will also be prevented by your suggestion to just use the &info[ID] instead. -- Best regards, Javier Martinez Canillas Linux Engineering Red Hat