On Mon, Sep 28, 2020 at 03:13:53PM +0200, Bartosz Golaszewski wrote: > On Mon, Sep 28, 2020 at 3:00 PM Andy Shevchenko > <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > > > On Mon, Sep 28, 2020 at 12:41:53PM +0200, Bartosz Golaszewski wrote: > > > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > > > > > > While we do check the "chip-name" property in probe(), we never actually > > > use it. Let's pass the chip label to the driver using device properties > > > as we'll want to allow users to define their own once dynamically > > > created chips are supported. > > > > > > The property is renamed to "chip-label" to not cause any confusion with > > > the actual chip name which is of the form: "gpiochipX". > > > > > ^^^ here, see below > > > > If the "chip-label" property is missing, let's do what most devices in > > > drivers/gpio/ do and use dev_name(). > > > > ... > > > > > + snprintf(chip_label, sizeof(chip_label), > > > + "gpio-mockup-%c", i + 'A'); > > > + properties[prop++] = PROPERTY_ENTRY_STRING("chip-label", > > > + chip_label); > > > > You added new property, now count is up to 4. But at the same time > > > > #define GPIO_MOCKUP_MAX_PROP 4 > > > > how do you avoid overflow? > > > > I renamed the property, the previous "chip-name" is no longer used. In > fact it was never used but was accounted for in GPIO_MOCKUP_MAX_PROP. Either I'm missing something or... Current code in linux-next has 3 properties to be possible PROPERTY_ENTRY_U32("gpio-base", base); PROPERTY_ENTRY_U16("nr-gpios", ngpio); PROPERTY_ENTRY_BOOL("named-gpio-lines"); You adding here PROPERTY_ENTRY_STRING("chip-label", chip_label); Altogether after this patch is 4 which is maximum, but since array is passed by a solely pointer, the terminator is a must. -- With Best Regards, Andy Shevchenko