Message ID | 20180808153150.23444-23-brgl@bgdev.pl (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | at24: remove at24_platform_data | expand |
On Wed, Aug 8, 2018 at 6:31 PM, Bartosz Golaszewski <brgl@bgdev.pl> wrote: > From: Bartosz Golaszewski <bgolaszewski@baylibre.com> > > We want to work towards phasing out the at24_platform_data structure. > There are few users and its contents can be represented using generic > device properties. Using device properties only will allow us to > significantly simplify the at24 configuration code. > > Remove the at24_platform_data structure and replace it with an array > of property entries. Drop the byte_len/size property, as the model name > already implies the EEPROM's size. > Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> > Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> > --- > arch/arm/mach-davinci/board-dm646x-evm.c | 13 +++++-------- > 1 file changed, 5 insertions(+), 8 deletions(-) > > diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c > index 5a9de47bc8a2..5049f0c6cd1a 100644 > --- a/arch/arm/mach-davinci/board-dm646x-evm.c > +++ b/arch/arm/mach-davinci/board-dm646x-evm.c > @@ -22,7 +22,7 @@ > #include <linux/gpio.h> > #include <linux/platform_device.h> > #include <linux/i2c.h> > -#include <linux/platform_data/at24.h> > +#include <linux/property.h> > #include <linux/platform_data/pcf857x.h> > > #include <media/i2c/tvp514x.h> > @@ -320,12 +320,9 @@ static struct nvmem_cell_lookup dm646x_evm_mac_address_cell = { > .nvmem_name = "1-00500", > }; > > -static struct at24_platform_data eeprom_info = { > - .byte_len = (256*1024) / 8, > - .page_size = 64, > - .flags = AT24_FLAG_ADDR16, > - .setup = davinci_get_mac_addr, > - .context = (void *)0x7f00, > +static const struct property_entry eeprom_properties[] = { > + PROPERTY_ENTRY_U32("pagesize", 64), > + { } > }; > #endif > > @@ -396,7 +393,7 @@ static void evm_init_cpld(void) > static struct i2c_board_info __initdata i2c_info[] = { > { > I2C_BOARD_INFO("24c256", 0x50), > - .platform_data = &eeprom_info, > + .properties = eeprom_properties, > }, > { > I2C_BOARD_INFO("pcf8574a", 0x38), > -- > 2.18.0 >
diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 5a9de47bc8a2..5049f0c6cd1a 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c @@ -22,7 +22,7 @@ #include <linux/gpio.h> #include <linux/platform_device.h> #include <linux/i2c.h> -#include <linux/platform_data/at24.h> +#include <linux/property.h> #include <linux/platform_data/pcf857x.h> #include <media/i2c/tvp514x.h> @@ -320,12 +320,9 @@ static struct nvmem_cell_lookup dm646x_evm_mac_address_cell = { .nvmem_name = "1-00500", }; -static struct at24_platform_data eeprom_info = { - .byte_len = (256*1024) / 8, - .page_size = 64, - .flags = AT24_FLAG_ADDR16, - .setup = davinci_get_mac_addr, - .context = (void *)0x7f00, +static const struct property_entry eeprom_properties[] = { + PROPERTY_ENTRY_U32("pagesize", 64), + { } }; #endif @@ -396,7 +393,7 @@ static void evm_init_cpld(void) static struct i2c_board_info __initdata i2c_info[] = { { I2C_BOARD_INFO("24c256", 0x50), - .platform_data = &eeprom_info, + .properties = eeprom_properties, }, { I2C_BOARD_INFO("pcf8574a", 0x38),