diff options
Diffstat (limited to 'drivers/gpio')
48 files changed, 324 insertions, 333 deletions
diff --git a/drivers/gpio/74x164_gpio.c b/drivers/gpio/74x164_gpio.c index 64717a6780..0c06301a81 100644 --- a/drivers/gpio/74x164_gpio.c +++ b/drivers/gpio/74x164_gpio.c @@ -187,6 +187,6 @@ U_BOOT_DRIVER(74x164) = { .id = UCLASS_GPIO, .ops = &gen_74x164_ops, .probe = gen_74x164_probe, - .priv_auto_alloc_size = sizeof(struct gen_74x164_priv), + .priv_auto = sizeof(struct gen_74x164_priv), .of_match = gen_74x164_ids, }; diff --git a/drivers/gpio/altera_pio.c b/drivers/gpio/altera_pio.c index 75800d9f31..f4582b1467 100644 --- a/drivers/gpio/altera_pio.c +++ b/drivers/gpio/altera_pio.c @@ -19,7 +19,7 @@ struct altera_pio_regs { u32 direction; /* Direction register */ }; -struct altera_pio_platdata { +struct altera_pio_plat { struct altera_pio_regs *regs; int gpio_count; const char *bank_name; @@ -27,7 +27,7 @@ struct altera_pio_platdata { static int altera_pio_direction_input(struct udevice *dev, unsigned pin) { - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); struct altera_pio_regs *const regs = plat->regs; clrbits_le32(®s->direction, 1 << pin); @@ -38,7 +38,7 @@ static int altera_pio_direction_input(struct udevice *dev, unsigned pin) static int altera_pio_direction_output(struct udevice *dev, unsigned pin, int val) { - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); struct altera_pio_regs *const regs = plat->regs; if (val) @@ -53,7 +53,7 @@ static int altera_pio_direction_output(struct udevice *dev, unsigned pin, static int altera_pio_get_value(struct udevice *dev, unsigned pin) { - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); struct altera_pio_regs *const regs = plat->regs; return !!(readl(®s->data) & (1 << pin)); @@ -62,7 +62,7 @@ static int altera_pio_get_value(struct udevice *dev, unsigned pin) static int altera_pio_set_value(struct udevice *dev, unsigned pin, int val) { - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); struct altera_pio_regs *const regs = plat->regs; if (val) @@ -76,7 +76,7 @@ static int altera_pio_set_value(struct udevice *dev, unsigned pin, int val) static int altera_pio_probe(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); uc_priv->gpio_count = plat->gpio_count; uc_priv->bank_name = plat->bank_name; @@ -84,9 +84,9 @@ static int altera_pio_probe(struct udevice *dev) return 0; } -static int altera_pio_ofdata_to_platdata(struct udevice *dev) +static int altera_pio_of_to_plat(struct udevice *dev) { - struct altera_pio_platdata *plat = dev_get_platdata(dev); + struct altera_pio_plat *plat = dev_get_plat(dev); plat->regs = map_physmem(dev_read_addr(dev), sizeof(struct altera_pio_regs), @@ -116,7 +116,7 @@ U_BOOT_DRIVER(altera_pio) = { .id = UCLASS_GPIO, .of_match = altera_pio_ids, .ops = &altera_pio_ops, - .ofdata_to_platdata = altera_pio_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct altera_pio_platdata), + .of_to_plat = altera_pio_of_to_plat, + .plat_auto = sizeof(struct altera_pio_plat), .probe = altera_pio_probe, }; diff --git a/drivers/gpio/at91_gpio.c b/drivers/gpio/at91_gpio.c index ef7984374b..1409db5dc1 100644 --- a/drivers/gpio/at91_gpio.c +++ b/drivers/gpio/at91_gpio.c @@ -590,7 +590,7 @@ static const struct dm_gpio_ops gpio_at91_ops = { static int at91_gpio_probe(struct udevice *dev) { struct at91_port_priv *port = dev_get_priv(dev); - struct at91_port_platdata *plat = dev_get_platdata(dev); + struct at91_port_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct clk clk; int ret; @@ -629,10 +629,10 @@ U_BOOT_DRIVER(atmel_at91rm9200_gpio) = { .id = UCLASS_GPIO, #if CONFIG_IS_ENABLED(OF_CONTROL) .of_match = at91_gpio_ids, - .platdata_auto_alloc_size = sizeof(struct at91_port_platdata), + .plat_auto = sizeof(struct at91_port_plat), #endif .ops = &gpio_at91_ops, .probe = at91_gpio_probe, - .priv_auto_alloc_size = sizeof(struct at91_port_priv), + .priv_auto = sizeof(struct at91_port_priv), }; #endif diff --git a/drivers/gpio/atmel_pio4.c b/drivers/gpio/atmel_pio4.c index 18f365fa41..e7b8f231cc 100644 --- a/drivers/gpio/atmel_pio4.c +++ b/drivers/gpio/atmel_pio4.c @@ -176,14 +176,14 @@ struct atmel_pioctrl_data { u32 nbanks; }; -struct atmel_pio4_platdata { +struct atmel_pio4_plat { struct atmel_pio4_port *reg_base; }; static struct atmel_pio4_port *atmel_pio4_bank_base(struct udevice *dev, u32 bank) { - struct atmel_pio4_platdata *plat = dev_get_platdata(dev); + struct atmel_pio4_plat *plat = dev_get_plat(dev); struct atmel_pio4_port *port_base = (struct atmel_pio4_port *)((u32)plat->reg_base + ATMEL_PIO_BANK_OFFSET * bank); @@ -281,7 +281,7 @@ static int atmel_pio4_bind(struct udevice *dev) static int atmel_pio4_probe(struct udevice *dev) { - struct atmel_pio4_platdata *plat = dev_get_platdata(dev); + struct atmel_pio4_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct atmel_pioctrl_data *pioctrl_data; struct clk clk; @@ -338,7 +338,7 @@ U_BOOT_DRIVER(gpio_atmel_pio4) = { .probe = atmel_pio4_probe, .bind = atmel_pio4_bind, .of_match = atmel_pio4_ids, - .platdata_auto_alloc_size = sizeof(struct atmel_pio4_platdata), + .plat_auto = sizeof(struct atmel_pio4_plat), }; #endif diff --git a/drivers/gpio/bcm2835_gpio.c b/drivers/gpio/bcm2835_gpio.c index 0dff9ac711..704a6fa712 100644 --- a/drivers/gpio/bcm2835_gpio.c +++ b/drivers/gpio/bcm2835_gpio.c @@ -102,7 +102,7 @@ static const struct dm_gpio_ops gpio_bcm2835_ops = { static int bcm2835_gpio_probe(struct udevice *dev) { struct bcm2835_gpios *gpios = dev_get_priv(dev); - struct bcm2835_gpio_platdata *plat = dev_get_platdata(dev); + struct bcm2835_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); uc_priv->bank_name = "GPIO"; @@ -116,9 +116,9 @@ static int bcm2835_gpio_probe(struct udevice *dev) } #if CONFIG_IS_ENABLED(OF_CONTROL) -static int bcm2835_gpio_ofdata_to_platdata(struct udevice *dev) +static int bcm2835_gpio_of_to_plat(struct udevice *dev) { - struct bcm2835_gpio_platdata *plat = dev_get_platdata(dev); + struct bcm2835_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t addr; addr = dev_read_addr(dev); @@ -133,10 +133,10 @@ static int bcm2835_gpio_ofdata_to_platdata(struct udevice *dev) U_BOOT_DRIVER(gpio_bcm2835) = { .name = "gpio_bcm2835", .id = UCLASS_GPIO, - .ofdata_to_platdata = of_match_ptr(bcm2835_gpio_ofdata_to_platdata), - .platdata_auto_alloc_size = sizeof(struct bcm2835_gpio_platdata), + .of_to_plat = of_match_ptr(bcm2835_gpio_of_to_plat), + .plat_auto = sizeof(struct bcm2835_gpio_plat), .ops = &gpio_bcm2835_ops, .probe = bcm2835_gpio_probe, .flags = DM_FLAG_PRE_RELOC, - .priv_auto_alloc_size = sizeof(struct bcm2835_gpios), + .priv_auto = sizeof(struct bcm2835_gpios), }; diff --git a/drivers/gpio/bcm6345_gpio.c b/drivers/gpio/bcm6345_gpio.c index 5da11d988e..e031f71a78 100644 --- a/drivers/gpio/bcm6345_gpio.c +++ b/drivers/gpio/bcm6345_gpio.c @@ -114,6 +114,6 @@ U_BOOT_DRIVER(bcm6345_gpio) = { .id = UCLASS_GPIO, .of_match = bcm6345_gpio_ids, .ops = &bcm6345_gpio_ops, - .priv_auto_alloc_size = sizeof(struct bcm6345_gpio_priv), + .priv_auto = sizeof(struct bcm6345_gpio_priv), .probe = bcm6345_gpio_probe, }; diff --git a/drivers/gpio/cortina_gpio.c b/drivers/gpio/cortina_gpio.c index 055907c1a1..72ef523be9 100644 --- a/drivers/gpio/cortina_gpio.c +++ b/drivers/gpio/cortina_gpio.c @@ -107,7 +107,7 @@ U_BOOT_DRIVER(cortina_gpio) = { .id = UCLASS_GPIO, .ops = &gpio_cortina_ops, .probe = ca_gpio_probe, - .priv_auto_alloc_size = sizeof(struct cortina_gpio_bank), + .priv_auto = sizeof(struct cortina_gpio_bank), .of_match = ca_gpio_ids, }; #endif /* CONFIG_DM_GPIO */ diff --git a/drivers/gpio/da8xx_gpio.c b/drivers/gpio/da8xx_gpio.c index f875888510..9a52a5e414 100644 --- a/drivers/gpio/da8xx_gpio.c +++ b/drivers/gpio/da8xx_gpio.c @@ -522,7 +522,7 @@ static const struct dm_gpio_ops gpio_davinci_ops = { static int davinci_gpio_probe(struct udevice *dev) { struct davinci_gpio_bank *bank = dev_get_priv(dev); - struct davinci_gpio_platdata *plat = dev_get_platdata(dev); + struct davinci_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); const void *fdt = gd->fdt_blob; int node = dev_of_offset(dev); @@ -540,9 +540,9 @@ static const struct udevice_id davinci_gpio_ids[] = { { } }; -static int davinci_gpio_ofdata_to_platdata(struct udevice *dev) +static int davinci_gpio_of_to_plat(struct udevice *dev) { - struct davinci_gpio_platdata *plat = dev_get_platdata(dev); + struct davinci_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t addr; addr = dev_read_addr(dev); @@ -557,12 +557,12 @@ U_BOOT_DRIVER(ti_dm6441_gpio) = { .name = "ti_dm6441_gpio", .id = UCLASS_GPIO, .ops = &gpio_davinci_ops, - .ofdata_to_platdata = of_match_ptr(davinci_gpio_ofdata_to_platdata), + .of_to_plat = of_match_ptr(davinci_gpio_of_to_plat), .of_match = davinci_gpio_ids, .bind = dm_scan_fdt_dev, - .platdata_auto_alloc_size = sizeof(struct davinci_gpio_platdata), + .plat_auto = sizeof(struct davinci_gpio_plat), .probe = davinci_gpio_probe, - .priv_auto_alloc_size = sizeof(struct davinci_gpio_bank), + .priv_auto = sizeof(struct davinci_gpio_bank), }; #endif diff --git a/drivers/gpio/da8xx_gpio.h b/drivers/gpio/da8xx_gpio.h index 849e8d2dcf..ca59d6a90b 100644 --- a/drivers/gpio/da8xx_gpio.h +++ b/drivers/gpio/da8xx_gpio.h @@ -31,7 +31,7 @@ struct davinci_gpio_bank { #if CONFIG_IS_ENABLED(DM_GPIO) /* Information about a GPIO bank */ -struct davinci_gpio_platdata { +struct davinci_gpio_plat { int bank_index; ulong base; /* address of registers in physical memory */ const char *port_name; diff --git a/drivers/gpio/dwapb_gpio.c b/drivers/gpio/dwapb_gpio.c index 37916e7771..acd77b6892 100644 --- a/drivers/gpio/dwapb_gpio.c +++ b/drivers/gpio/dwapb_gpio.c @@ -36,7 +36,7 @@ struct gpio_dwapb_priv { struct reset_ctl_bulk resets; }; -struct gpio_dwapb_platdata { +struct gpio_dwapb_plat { const char *name; int bank; int pins; @@ -45,7 +45,7 @@ struct gpio_dwapb_platdata { static int dwapb_gpio_direction_input(struct udevice *dev, unsigned pin) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); clrbits_le32(plat->base + GPIO_SWPORT_DDR(plat->bank), 1 << pin); return 0; @@ -54,7 +54,7 @@ static int dwapb_gpio_direction_input(struct udevice *dev, unsigned pin) static int dwapb_gpio_direction_output(struct udevice *dev, unsigned pin, int val) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); setbits_le32(plat->base + GPIO_SWPORT_DDR(plat->bank), 1 << pin); @@ -68,7 +68,7 @@ static int dwapb_gpio_direction_output(struct udevice *dev, unsigned pin, static int dwapb_gpio_set_value(struct udevice *dev, unsigned pin, int val) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); if (val) setbits_le32(plat->base + GPIO_SWPORT_DR(plat->bank), 1 << pin); @@ -80,7 +80,7 @@ static int dwapb_gpio_set_value(struct udevice *dev, unsigned pin, int val) static int dwapb_gpio_get_function(struct udevice *dev, unsigned offset) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); u32 gpio; gpio = readl(plat->base + GPIO_SWPORT_DDR(plat->bank)); @@ -93,7 +93,7 @@ static int dwapb_gpio_get_function(struct udevice *dev, unsigned offset) static int dwapb_gpio_get_value(struct udevice *dev, unsigned pin) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); u32 value; if (dwapb_gpio_get_function(dev, pin) == GPIOF_OUTPUT) @@ -141,7 +141,7 @@ static int gpio_dwapb_reset(struct udevice *dev) static int gpio_dwapb_probe(struct udevice *dev) { struct gpio_dev_priv *priv = dev_get_uclass_priv(dev); - struct gpio_dwapb_platdata *plat = dev->platdata; + struct gpio_dwapb_plat *plat = dev->plat; if (!plat) { /* Reset on parent device only */ @@ -156,7 +156,7 @@ static int gpio_dwapb_probe(struct udevice *dev) static int gpio_dwapb_bind(struct udevice *dev) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); struct udevice *subdev; fdt_addr_t base; int ret, bank = 0; @@ -202,8 +202,8 @@ static int gpio_dwapb_bind(struct udevice *dev) } } - ret = device_bind_ofnode(dev, dev->driver, plat->name, - plat, node, &subdev); + ret = device_bind(dev, dev->driver, plat->name, plat, node, + &subdev); if (ret) return ret; @@ -215,7 +215,7 @@ static int gpio_dwapb_bind(struct udevice *dev) static int gpio_dwapb_remove(struct udevice *dev) { - struct gpio_dwapb_platdata *plat = dev_get_platdata(dev); + struct gpio_dwapb_plat *plat = dev_get_plat(dev); struct gpio_dwapb_priv *priv = dev_get_priv(dev); if (!plat && priv) @@ -237,5 +237,5 @@ U_BOOT_DRIVER(gpio_dwapb) = { .bind = gpio_dwapb_bind, .probe = gpio_dwapb_probe, .remove = gpio_dwapb_remove, - .priv_auto_alloc_size = sizeof(struct gpio_dwapb_priv), + .priv_auto = sizeof(struct gpio_dwapb_priv), }; diff --git a/drivers/gpio/gpio-rcar.c b/drivers/gpio/gpio-rcar.c index a993fd4d70..beae34f233 100644 --- a/drivers/gpio/gpio-rcar.c +++ b/drivers/gpio/gpio-rcar.c @@ -189,6 +189,6 @@ U_BOOT_DRIVER(rcar_gpio) = { .id = UCLASS_GPIO, .of_match = rcar_gpio_ids, .ops = &rcar_gpio_ops, - .priv_auto_alloc_size = sizeof(struct rcar_gpio_priv), + .priv_auto = sizeof(struct rcar_gpio_priv), .probe = rcar_gpio_probe, }; diff --git a/drivers/gpio/gpio-rza1.c b/drivers/gpio/gpio-rza1.c index 86804ac2f5..ee7de4c17e 100644 --- a/drivers/gpio/gpio-rza1.c +++ b/drivers/gpio/gpio-rza1.c @@ -130,6 +130,6 @@ U_BOOT_DRIVER(r7s72100_gpio) = { .name = "r7s72100-gpio", .id = UCLASS_GPIO, .ops = &r7s72100_gpio_ops, - .priv_auto_alloc_size = sizeof(struct r7s72100_gpio_priv), + .priv_auto = sizeof(struct r7s72100_gpio_priv), .probe = r7s72100_gpio_probe, }; diff --git a/drivers/gpio/gpio-uclass.c b/drivers/gpio/gpio-uclass.c index 4785b6b34a..65b18ce6c8 100644 --- a/drivers/gpio/gpio-uclass.c +++ b/drivers/gpio/gpio-uclass.c @@ -239,9 +239,9 @@ struct gpio_hog_data { u32 val[2]; }; -static int gpio_hog_ofdata_to_platdata(struct udevice *dev) +static int gpio_hog_of_to_plat(struct udevice *dev) { - struct gpio_hog_data *plat = dev_get_platdata(dev); + struct gpio_hog_data *plat = dev_get_plat(dev); const char *nodename; int ret; @@ -272,7 +272,7 @@ static int gpio_hog_ofdata_to_platdata(struct udevice *dev) static int gpio_hog_probe(struct udevice *dev) { - struct gpio_hog_data *plat = dev_get_platdata(dev); + struct gpio_hog_data *plat = dev_get_plat(dev); struct gpio_hog_priv *priv = dev_get_priv(dev); int ret; @@ -338,10 +338,10 @@ int gpio_hog_lookup_name(const char *name, struct gpio_desc **desc) U_BOOT_DRIVER(gpio_hog) = { .name = "gpio_hog", .id = UCLASS_NOP, - .ofdata_to_platdata = gpio_hog_ofdata_to_platdata, + .of_to_plat = gpio_hog_of_to_plat, .probe = gpio_hog_probe, - .priv_auto_alloc_size = sizeof(struct gpio_hog_priv), - .platdata_auto_alloc_size = sizeof(struct gpio_hog_data), + .priv_auto = sizeof(struct gpio_hog_priv), + .plat_auto = sizeof(struct gpio_hog_data), }; #else int gpio_hog_lookup_name(const char *name, struct gpio_desc **desc) @@ -1339,5 +1339,5 @@ UCLASS_DRIVER(gpio) = { .post_probe = gpio_post_probe, .post_bind = gpio_post_bind, .pre_remove = gpio_pre_remove, - .per_device_auto_alloc_size = sizeof(struct gpio_dev_priv), + .per_device_auto = sizeof(struct gpio_dev_priv), }; diff --git a/drivers/gpio/gpio-uniphier.c b/drivers/gpio/gpio-uniphier.c index 54a38da0f1..61c705b5ac 100644 --- a/drivers/gpio/gpio-uniphier.c +++ b/drivers/gpio/gpio-uniphier.c @@ -166,6 +166,6 @@ U_BOOT_DRIVER(uniphier_gpio) = { .id = UCLASS_GPIO, .of_match = uniphier_gpio_match, .probe = uniphier_gpio_probe, - .priv_auto_alloc_size = sizeof(struct uniphier_gpio_priv), + .priv_auto = sizeof(struct uniphier_gpio_priv), .ops = &uniphier_gpio_ops, }; diff --git a/drivers/gpio/hi6220_gpio.c b/drivers/gpio/hi6220_gpio.c index 95de2ae366..f5e5fc6e48 100644 --- a/drivers/gpio/hi6220_gpio.c +++ b/drivers/gpio/hi6220_gpio.c @@ -66,7 +66,7 @@ static const struct dm_gpio_ops gpio_hi6220_ops = { static int hi6220_gpio_probe(struct udevice *dev) { struct gpio_bank *bank = dev_get_priv(dev); - struct hikey_gpio_platdata *plat = dev_get_platdata(dev); + struct hikey_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev->uclass_priv; char name[18], *str; @@ -89,7 +89,7 @@ U_BOOT_DRIVER(gpio_hi6220) = { .id = UCLASS_GPIO, .ops = &gpio_hi6220_ops, .probe = hi6220_gpio_probe, - .priv_auto_alloc_size = sizeof(struct gpio_bank), + .priv_auto = sizeof(struct gpio_bank), }; diff --git a/drivers/gpio/hsdk-creg-gpio.c b/drivers/gpio/hsdk-creg-gpio.c index 35b114904d..66f8441840 100644 --- a/drivers/gpio/hsdk-creg-gpio.c +++ b/drivers/gpio/hsdk-creg-gpio.c @@ -165,5 +165,5 @@ U_BOOT_DRIVER(gpio_hsdk_creg) = { .ops = &hsdk_creg_gpio_ops, .probe = hsdk_creg_gpio_probe, .of_match = hsdk_creg_gpio_ids, - .platdata_auto_alloc_size = sizeof(struct hsdk_creg_gpio), + .plat_auto = sizeof(struct hsdk_creg_gpio), }; diff --git a/drivers/gpio/imx_rgpio2p.c b/drivers/gpio/imx_rgpio2p.c index 1e876f6914..70ced75ea7 100644 --- a/drivers/gpio/imx_rgpio2p.c +++ b/drivers/gpio/imx_rgpio2p.c @@ -132,7 +132,7 @@ static const struct dm_gpio_ops imx_rgpio2p_ops = { static int imx_rgpio2p_probe(struct udevice *dev) { struct imx_rgpio2p_data *bank = dev_get_priv(dev); - struct imx_rgpio2p_plat *plat = dev_get_platdata(dev); + struct imx_rgpio2p_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); int banknum; char name[18], *str; @@ -151,12 +151,12 @@ static int imx_rgpio2p_probe(struct udevice *dev) static int imx_rgpio2p_bind(struct udevice *dev) { - struct imx_rgpio2p_plat *plat = dev->platdata; + struct imx_rgpio2p_plat *plat = dev->plat; fdt_addr_t addr; /* - * If platdata already exsits, directly return. - * Actually only when DT is not supported, platdata + * If plat already exsits, directly return. + * Actually only when DT is not supported, plat * is statically initialized in U_BOOT_DEVICES.Here * will return. */ @@ -171,7 +171,7 @@ static int imx_rgpio2p_bind(struct udevice *dev) * TODO: * When every board is converted to driver model and DT is supported, * this can be done by auto-alloc feature, but not using calloc - * to alloc memory for platdata. + * to alloc memory for plat. * * For example imx_rgpio2p_plat uses platform data rather than device * tree. @@ -184,7 +184,7 @@ static int imx_rgpio2p_bind(struct udevice *dev) plat->regs = (struct gpio_regs *)addr; plat->bank_index = dev->req_seq; - dev->platdata = plat; + dev->plat = plat; return 0; } @@ -200,7 +200,7 @@ U_BOOT_DRIVER(imx_rgpio2p) = { .id = UCLASS_GPIO, .ops = &imx_rgpio2p_ops, .probe = imx_rgpio2p_probe, - .priv_auto_alloc_size = sizeof(struct imx_rgpio2p_plat), + .priv_auto = sizeof(struct imx_rgpio2p_plat), .of_match = imx_rgpio2p_ids, .bind = imx_rgpio2p_bind, }; diff --git a/drivers/gpio/intel_broadwell_gpio.c b/drivers/gpio/intel_broadwell_gpio.c index 95f8b2ba6c..68d72eedc5 100644 --- a/drivers/gpio/intel_broadwell_gpio.c +++ b/drivers/gpio/intel_broadwell_gpio.c @@ -117,7 +117,7 @@ static int broadwell_gpio_get_function(struct udevice *dev, unsigned offset) static int broadwell_gpio_probe(struct udevice *dev) { - struct broadwell_bank_platdata *plat = dev_get_platdata(dev); + struct broadwell_bank_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct broadwell_bank_priv *priv = dev_get_priv(dev); struct udevice *pinctrl; @@ -139,9 +139,9 @@ static int broadwell_gpio_probe(struct udevice *dev) return 0; } -static int broadwell_gpio_ofdata_to_platdata(struct udevice *dev) +static int broadwell_gpio_of_to_plat(struct udevice *dev) { - struct broadwell_bank_platdata *plat = dev_get_platdata(dev); + struct broadwell_bank_plat *plat = dev_get_plat(dev); u32 gpiobase; int bank; int ret; @@ -182,8 +182,8 @@ U_BOOT_DRIVER(gpio_broadwell) = { .id = UCLASS_GPIO, .of_match = intel_broadwell_gpio_ids, .ops = &gpio_broadwell_ops, - .ofdata_to_platdata = broadwell_gpio_ofdata_to_platdata, + .of_to_plat = broadwell_gpio_of_to_plat, .probe = broadwell_gpio_probe, - .priv_auto_alloc_size = sizeof(struct broadwell_bank_priv), - .platdata_auto_alloc_size = sizeof(struct broadwell_bank_platdata), + .priv_auto = sizeof(struct broadwell_bank_priv), + .plat_auto = sizeof(struct broadwell_bank_plat), }; diff --git a/drivers/gpio/intel_gpio.c b/drivers/gpio/intel_gpio.c index c3b67f24d8..41540d8ebc 100644 --- a/drivers/gpio/intel_gpio.c +++ b/drivers/gpio/intel_gpio.c @@ -164,7 +164,7 @@ static int intel_gpio_probe(struct udevice *dev) return 0; } -static int intel_gpio_ofdata_to_platdata(struct udevice *dev) +static int intel_gpio_of_to_plat(struct udevice *dev) { struct gpio_dev_priv *upriv = dev_get_uclass_priv(dev); struct intel_pinctrl_priv *pinctrl_priv = dev_get_priv(dev->parent); @@ -198,6 +198,6 @@ U_BOOT_DRIVER(intel_gpio) = { .id = UCLASS_GPIO, .of_match = intel_intel_gpio_ids, .ops = &gpio_intel_ops, - .ofdata_to_platdata = intel_gpio_ofdata_to_platdata, + .of_to_plat = intel_gpio_of_to_plat, .probe = intel_gpio_probe, }; diff --git a/drivers/gpio/intel_ich6_gpio.c b/drivers/gpio/intel_ich6_gpio.c index 73d98fde55..11d4be04f5 100644 --- a/drivers/gpio/intel_ich6_gpio.c +++ b/drivers/gpio/intel_ich6_gpio.c @@ -93,9 +93,9 @@ static int _ich6_gpio_set_direction(uint16_t base, unsigned offset, int dir) return 0; } -static int gpio_ich6_ofdata_to_platdata(struct udevice *dev) +static int gpio_ich6_of_to_plat(struct udevice *dev) { - struct ich6_bank_platdata *plat = dev_get_platdata(dev); + struct ich6_bank_plat *plat = dev_get_plat(dev); u32 gpiobase; int offset; int ret; @@ -119,7 +119,7 @@ static int gpio_ich6_ofdata_to_platdata(struct udevice *dev) static int ich6_gpio_probe(struct udevice *dev) { - struct ich6_bank_platdata *plat = dev_get_platdata(dev); + struct ich6_bank_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct ich6_bank_priv *bank = dev_get_priv(dev); const void *prop; @@ -234,8 +234,8 @@ U_BOOT_DRIVER(gpio_ich6) = { .id = UCLASS_GPIO, .of_match = intel_ich6_gpio_ids, .ops = &gpio_ich6_ops, - .ofdata_to_platdata = gpio_ich6_ofdata_to_platdata, + .of_to_plat = gpio_ich6_of_to_plat, .probe = ich6_gpio_probe, - .priv_auto_alloc_size = sizeof(struct ich6_bank_priv), - .platdata_auto_alloc_size = sizeof(struct ich6_bank_platdata), + .priv_auto = sizeof(struct ich6_bank_priv), + .plat_auto = sizeof(struct ich6_bank_plat), }; diff --git a/drivers/gpio/iproc_gpio.c b/drivers/gpio/iproc_gpio.c index cc26a1306b..0561b36e54 100644 --- a/drivers/gpio/iproc_gpio.c +++ b/drivers/gpio/iproc_gpio.c @@ -55,7 +55,7 @@ struct iproc_gpio_pctrl_map { * @name: gpio device name, ex GPIO0, GPIO1 * @ngpios: total number of gpios */ -struct iproc_gpio_platdata { +struct iproc_gpio_plat { struct udevice *pinctrl_dev; struct list_head gpiomap; void __iomem *base; @@ -73,7 +73,7 @@ struct iproc_gpio_platdata { * @gpio: GPIO pin * @set: set or clear */ -static inline void iproc_gpio_set_bit(struct iproc_gpio_platdata *plat, +static inline void iproc_gpio_set_bit(struct iproc_gpio_plat *plat, u32 reg, u32 gpio, bool set) { u32 offset = GPIO_REG(gpio, reg); @@ -83,7 +83,7 @@ static inline void iproc_gpio_set_bit(struct iproc_gpio_platdata *plat, (set ? BIT(shift) : 0)); } -static inline bool iproc_gpio_get_bit(struct iproc_gpio_platdata *plat, +static inline bool iproc_gpio_get_bit(struct iproc_gpio_plat *plat, u32 reg, u32 gpio) { u32 offset = GPIO_REG(gpio, reg); @@ -98,7 +98,7 @@ static inline bool iproc_gpio_get_bit(struct iproc_gpio_platdata *plat, * @plat: iproc GPIO device * @gpio: GPIO pin */ -static u32 iproc_get_pctrl_from_gpio(struct iproc_gpio_platdata *plat, u32 gpio) +static u32 iproc_get_pctrl_from_gpio(struct iproc_gpio_plat *plat, u32 gpio) { struct iproc_gpio_pctrl_map *range = NULL; struct list_head *pos, *tmp; @@ -127,7 +127,7 @@ static u32 iproc_get_pctrl_from_gpio(struct iproc_gpio_platdata *plat, u32 gpio) */ static int iproc_get_gpio_pctrl_mapping(struct udevice *dev) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); struct iproc_gpio_pctrl_map *range = NULL; struct ofnode_phandle_args args; int index = 0, ret; @@ -153,7 +153,7 @@ static int iproc_get_gpio_pctrl_mapping(struct udevice *dev) static int iproc_gpio_request(struct udevice *dev, u32 gpio, const char *label) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); u32 pctrl; /* nothing to do if there is no corresponding pinctrl device */ @@ -167,7 +167,7 @@ static int iproc_gpio_request(struct udevice *dev, u32 gpio, const char *label) static int iproc_gpio_direction_input(struct udevice *dev, u32 gpio) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); iproc_gpio_set_bit(plat, OUT_EN_OFFSET, gpio, false); dev_dbg(dev, "gpio:%u set input\n", gpio); @@ -177,7 +177,7 @@ static int iproc_gpio_direction_input(struct udevice *dev, u32 gpio) static int iproc_gpio_direction_output(struct udevice *dev, u32 gpio, int value) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); iproc_gpio_set_bit(plat, OUT_EN_OFFSET, gpio, true); iproc_gpio_set_bit(plat, DATA_OUT_OFFSET, gpio, value); @@ -188,7 +188,7 @@ static int iproc_gpio_direction_output(struct udevice *dev, u32 gpio, int value) static int iproc_gpio_get_value(struct udevice *dev, u32 gpio) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); int value; value = iproc_gpio_get_bit(plat, DATA_IN_OFFSET, gpio); @@ -199,7 +199,7 @@ static int iproc_gpio_get_value(struct udevice *dev, u32 gpio) static int iproc_gpio_set_value(struct udevice *dev, u32 gpio, int value) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); if (iproc_gpio_get_bit(plat, OUT_EN_OFFSET, gpio)) iproc_gpio_set_bit(plat, DATA_OUT_OFFSET, gpio, value); @@ -210,7 +210,7 @@ static int iproc_gpio_set_value(struct udevice *dev, u32 gpio, int value) static int iproc_gpio_get_function(struct udevice *dev, u32 gpio) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); if (iproc_gpio_get_bit(plat, OUT_EN_OFFSET, gpio)) return GPIOF_OUTPUT; @@ -218,9 +218,9 @@ static int iproc_gpio_get_function(struct udevice *dev, u32 gpio) return GPIOF_INPUT; } -static int iproc_gpio_ofdata_to_platdata(struct udevice *dev) +static int iproc_gpio_of_to_plat(struct udevice *dev) { - struct iproc_gpio_platdata *plat = dev_get_platdata(dev); + struct iproc_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); int ret; char name[10]; @@ -285,6 +285,6 @@ U_BOOT_DRIVER(iproc_gpio) = { .id = UCLASS_GPIO, .of_match = iproc_gpio_ids, .ops = &iproc_gpio_ops, - .ofdata_to_platdata = iproc_gpio_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct iproc_gpio_platdata), + .of_to_plat = iproc_gpio_of_to_plat, + .plat_auto = sizeof(struct iproc_gpio_plat), }; diff --git a/drivers/gpio/lpc32xx_gpio.c b/drivers/gpio/lpc32xx_gpio.c index 1265ee41a6..ffaec32ac2 100644 --- a/drivers/gpio/lpc32xx_gpio.c +++ b/drivers/gpio/lpc32xx_gpio.c @@ -317,5 +317,5 @@ U_BOOT_DRIVER(gpio_lpc32xx) = { .id = UCLASS_GPIO, .ops = &gpio_lpc32xx_ops, .probe = lpc32xx_gpio_probe, - .priv_auto_alloc_size = sizeof(struct lpc32xx_gpio_priv), + .priv_auto = sizeof(struct lpc32xx_gpio_priv), }; diff --git a/drivers/gpio/mpc83xx_spisel_boot.c b/drivers/gpio/mpc83xx_spisel_boot.c index 54dc437e1c..fd26a36a0f 100644 --- a/drivers/gpio/mpc83xx_spisel_boot.c +++ b/drivers/gpio/mpc83xx_spisel_boot.c @@ -61,9 +61,9 @@ static int mpc83xx_spisel_boot_get_function(struct udevice *dev, uint gpio) } #if CONFIG_IS_ENABLED(OF_CONTROL) -static int mpc83xx_spisel_boot_ofdata_to_platdata(struct udevice *dev) +static int mpc83xx_spisel_boot_of_to_plat(struct udevice *dev) { - struct mpc8xxx_gpio_plat *plat = dev_get_platdata(dev); + struct mpc8xxx_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t addr; u32 reg[2]; @@ -78,10 +78,10 @@ static int mpc83xx_spisel_boot_ofdata_to_platdata(struct udevice *dev) } #endif -static int mpc83xx_spisel_boot_platdata_to_priv(struct udevice *dev) +static int mpc83xx_spisel_boot_plat_to_priv(struct udevice *dev) { struct mpc83xx_spisel_boot *priv = dev_get_priv(dev); - struct mpc8xxx_gpio_plat *plat = dev_get_platdata(dev); + struct mpc8xxx_gpio_plat *plat = dev_get_plat(dev); unsigned long size = plat->size; ulong driver_data = dev_get_driver_data(dev); @@ -107,7 +107,7 @@ static int mpc83xx_spisel_boot_probe(struct udevice *dev) struct mpc83xx_spisel_boot *data = dev_get_priv(dev); char name[32], *str; - mpc83xx_spisel_boot_platdata_to_priv(dev); + mpc83xx_spisel_boot_plat_to_priv(dev); snprintf(name, sizeof(name), "MPC@%lx_", data->addr); str = strdup(name); @@ -140,10 +140,10 @@ U_BOOT_DRIVER(spisel_boot_mpc83xx) = { .id = UCLASS_GPIO, .ops = &mpc83xx_spisel_boot_ops, #if CONFIG_IS_ENABLED(OF_CONTROL) - .ofdata_to_platdata = mpc83xx_spisel_boot_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct mpc8xxx_gpio_plat), + .of_to_plat = mpc83xx_spisel_boot_of_to_plat, + .plat_auto = sizeof(struct mpc8xxx_gpio_plat), .of_match = mpc83xx_spisel_boot_ids, #endif .probe = mpc83xx_spisel_boot_probe, - .priv_auto_alloc_size = sizeof(struct mpc83xx_spisel_boot), + .priv_auto = sizeof(struct mpc83xx_spisel_boot), }; diff --git a/drivers/gpio/mpc8xxx_gpio.c b/drivers/gpio/mpc8xxx_gpio.c index 27881a7322..2bc1a0d571 100644 --- a/drivers/gpio/mpc8xxx_gpio.c +++ b/drivers/gpio/mpc8xxx_gpio.c @@ -183,9 +183,9 @@ static int mpc8xxx_gpio_get_function(struct udevice *dev, uint gpio) } #if CONFIG_IS_ENABLED(OF_CONTROL) -static int mpc8xxx_gpio_ofdata_to_platdata(struct udevice *dev) +static int mpc8xxx_gpio_of_to_plat(struct udevice *dev) { - struct mpc8xxx_gpio_plat *plat = dev_get_platdata(dev); + struct mpc8xxx_gpio_plat *plat = dev_get_plat(dev); struct mpc8xxx_gpio_data *data = dev_get_priv(dev); fdt_addr_t addr; u32 i; @@ -219,10 +219,10 @@ static int mpc8xxx_gpio_ofdata_to_platdata(struct udevice *dev) } #endif -static int mpc8xxx_gpio_platdata_to_priv(struct udevice *dev) +static int mpc8xxx_gpio_plat_to_priv(struct udevice *dev) { struct mpc8xxx_gpio_data *priv = dev_get_priv(dev); - struct mpc8xxx_gpio_plat *plat = dev_get_platdata(dev); + struct mpc8xxx_gpio_plat *plat = dev_get_plat(dev); unsigned long size = plat->size; ulong driver_data = dev_get_driver_data(dev); @@ -249,7 +249,7 @@ static int mpc8xxx_gpio_probe(struct udevice *dev) struct mpc8xxx_gpio_data *data = dev_get_priv(dev); char name[32], *str; - mpc8xxx_gpio_platdata_to_priv(dev); + mpc8xxx_gpio_plat_to_priv(dev); snprintf(name, sizeof(name), "MPC@%lx_", data->addr); str = strdup(name); @@ -294,10 +294,10 @@ U_BOOT_DRIVER(gpio_mpc8xxx) = { .id = UCLASS_GPIO, .ops = &gpio_mpc8xxx_ops, #if CONFIG_IS_ENABLED(OF_CONTROL) - .ofdata_to_platdata = mpc8xxx_gpio_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct mpc8xxx_gpio_plat), + .of_to_plat = mpc8xxx_gpio_of_to_plat, + .plat_auto = sizeof(struct mpc8xxx_gpio_plat), .of_match = mpc8xxx_gpio_ids, #endif .probe = mpc8xxx_gpio_probe, - .priv_auto_alloc_size = sizeof(struct mpc8xxx_gpio_data), + .priv_auto = sizeof(struct mpc8xxx_gpio_data), }; diff --git a/drivers/gpio/mscc_sgpio.c b/drivers/gpio/mscc_sgpio.c index 780d77b2f8..1cbcc43489 100644 --- a/drivers/gpio/mscc_sgpio.c +++ b/drivers/gpio/mscc_sgpio.c @@ -275,5 +275,5 @@ U_BOOT_DRIVER(gpio_mscc_sgpio) = { .of_match = mscc_sgpio_ids, .ops = &mscc_sgpio_ops, .probe = mscc_sgpio_probe, - .priv_auto_alloc_size = sizeof(struct mscc_sgpio_priv), + .priv_auto = sizeof(struct mscc_sgpio_priv), }; diff --git a/drivers/gpio/msm_gpio.c b/drivers/gpio/msm_gpio.c index 416fb56a98..af6c8383aa 100644 --- a/drivers/gpio/msm_gpio.c +++ b/drivers/gpio/msm_gpio.c @@ -101,7 +101,7 @@ static int msm_gpio_probe(struct udevice *dev) return priv->base == FDT_ADDR_T_NONE ? -EINVAL : 0; } -static int msm_gpio_ofdata_to_platdata(struct udevice *dev) +static int msm_gpio_of_to_plat(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); @@ -126,8 +126,8 @@ U_BOOT_DRIVER(gpio_msm) = { .name = "gpio_msm", .id = UCLASS_GPIO, .of_match = msm_gpio_ids, - .ofdata_to_platdata = msm_gpio_ofdata_to_platdata, + .of_to_plat = msm_gpio_of_to_plat, .probe = msm_gpio_probe, .ops = &gpio_msm_ops, - .priv_auto_alloc_size = sizeof(struct msm_gpio_bank), + .priv_auto = sizeof(struct msm_gpio_bank), }; diff --git a/drivers/gpio/mt7621_gpio.c b/drivers/gpio/mt7621_gpio.c index 612413e17b..65b4cbf61b 100644 --- a/drivers/gpio/mt7621_gpio.c +++ b/drivers/gpio/mt7621_gpio.c @@ -38,20 +38,20 @@ enum mediatek_gpio_reg { static void __iomem *mediatek_gpio_membase; -struct mediatek_gpio_platdata { +struct mediatek_gpio_plat { char bank_name[3]; /* Name of bank, e.g. "PA", "PB" etc */ int gpio_count; int bank; }; -static u32 reg_offs(struct mediatek_gpio_platdata *plat, int reg) +static u32 reg_offs(struct mediatek_gpio_plat *plat, int reg) { return (reg * 0x10) + (plat->bank * 0x4); } static int mediatek_gpio_get_value(struct udevice *dev, unsigned int offset) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); return !!(ioread32(mediatek_gpio_membase + reg_offs(plat, GPIO_REG_DATA)) & BIT(offset)); @@ -60,7 +60,7 @@ static int mediatek_gpio_get_value(struct udevice *dev, unsigned int offset) static int mediatek_gpio_set_value(struct udevice *dev, unsigned int offset, int value) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); iowrite32(BIT(offset), mediatek_gpio_membase + reg_offs(plat, value ? GPIO_REG_DSET : GPIO_REG_DCLR)); @@ -70,7 +70,7 @@ static int mediatek_gpio_set_value(struct udevice *dev, unsigned int offset, static int mediatek_gpio_direction_input(struct udevice *dev, unsigned int offset) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); clrbits_le32(mediatek_gpio_membase + reg_offs(plat, GPIO_REG_CTRL), BIT(offset)); @@ -81,7 +81,7 @@ static int mediatek_gpio_direction_input(struct udevice *dev, unsigned int offse static int mediatek_gpio_direction_output(struct udevice *dev, unsigned int offset, int value) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); setbits_le32(mediatek_gpio_membase + reg_offs(plat, GPIO_REG_CTRL), BIT(offset)); @@ -92,7 +92,7 @@ static int mediatek_gpio_direction_output(struct udevice *dev, unsigned int offs static int mediatek_gpio_get_function(struct udevice *dev, unsigned int offset) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); u32 t; t = ioread32(mediatek_gpio_membase + reg_offs(plat, GPIO_REG_CTRL)); @@ -112,7 +112,7 @@ static const struct dm_gpio_ops gpio_mediatek_ops = { static int gpio_mediatek_probe(struct udevice *dev) { - struct mediatek_gpio_platdata *plat = dev_get_platdata(dev); + struct mediatek_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); /* Tell the uclass how many GPIOs we have */ @@ -130,7 +130,7 @@ static int gpio_mediatek_probe(struct udevice *dev) */ static int gpio_mediatek_bind(struct udevice *parent) { - struct mediatek_gpio_platdata *plat = parent->platdata; + struct mediatek_gpio_plat *plat = parent->plat; ofnode node; int bank = 0; int ret; @@ -145,7 +145,7 @@ static int gpio_mediatek_bind(struct udevice *parent) for (node = dev_read_first_subnode(parent); ofnode_valid(node); node = dev_read_next_subnode(node)) { - struct mediatek_gpio_platdata *plat; + struct mediatek_gpio_plat *plat; struct udevice *dev; plat = calloc(1, sizeof(*plat)); @@ -157,12 +157,11 @@ static int gpio_mediatek_bind(struct udevice *parent) plat->gpio_count = MTK_BANK_WIDTH; plat->bank = bank; - ret = device_bind(parent, parent->driver, - plat->bank_name, plat, -1, &dev); + ret = device_bind(parent, parent->driver, plat->bank_name, plat, + node, &dev); if (ret) return ret; - dev->node = node; bank++; } diff --git a/drivers/gpio/mvebu_gpio.c b/drivers/gpio/mvebu_gpio.c index 65eaa71c20..166fc66884 100644 --- a/drivers/gpio/mvebu_gpio.c +++ b/drivers/gpio/mvebu_gpio.c @@ -117,5 +117,5 @@ U_BOOT_DRIVER(gpio_mvebu) = { .of_match = mvebu_gpio_ids, .ops = &mvebu_gpio_ops, .probe = mvebu_gpio_probe, - .priv_auto_alloc_size = sizeof(struct mvebu_gpio_priv), + .priv_auto = sizeof(struct mvebu_gpio_priv), }; diff --git a/drivers/gpio/mxc_gpio.c b/drivers/gpio/mxc_gpio.c index 88b920a074..29d1bc3517 100644 --- a/drivers/gpio/mxc_gpio.c +++ b/drivers/gpio/mxc_gpio.c @@ -281,7 +281,7 @@ static const struct dm_gpio_ops gpio_mxc_ops = { static int mxc_gpio_probe(struct udevice *dev) { struct mxc_bank_info *bank = dev_get_priv(dev); - struct mxc_gpio_plat *plat = dev_get_platdata(dev); + struct mxc_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); int banknum; char name[18], *str; @@ -307,9 +307,9 @@ static int mxc_gpio_probe(struct udevice *dev) return 0; } -static int mxc_gpio_ofdata_to_platdata(struct udevice *dev) +static int mxc_gpio_of_to_plat(struct udevice *dev) { - struct mxc_gpio_plat *plat = dev_get_platdata(dev); + struct mxc_gpio_plat *plat = dev_get_plat(dev); if (!CONFIG_IS_ENABLED(OF_PLATDATA)) { fdt_addr_t addr; addr = dev_read_addr(dev); @@ -338,9 +338,9 @@ U_BOOT_DRIVER(gpio_mxc) = { .id = UCLASS_GPIO, .ops = &gpio_mxc_ops, .probe = mxc_gpio_probe, - .ofdata_to_platdata = mxc_gpio_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct mxc_gpio_plat), - .priv_auto_alloc_size = sizeof(struct mxc_bank_info), + .of_to_plat = mxc_gpio_of_to_plat, + .plat_auto = sizeof(struct mxc_gpio_plat), + .priv_auto = sizeof(struct mxc_bank_info), .of_match = mxc_gpio_ids, .bind = mxc_gpio_bind, }; diff --git a/drivers/gpio/mxs_gpio.c b/drivers/gpio/mxs_gpio.c index aaabb0216b..5ad65e4ee0 100644 --- a/drivers/gpio/mxs_gpio.c +++ b/drivers/gpio/mxs_gpio.c @@ -150,7 +150,7 @@ DECLARE_GLOBAL_DATA_PTR; * Bank 4: 0-20 -> 21 PINS */ -struct mxs_gpio_platdata { +struct mxs_gpio_plat { #if CONFIG_IS_ENABLED(OF_PLATDATA) struct dtd_fsl_imx23_gpio dtplat; #endif @@ -235,7 +235,7 @@ static const struct dm_gpio_ops gpio_mxs_ops = { static int mxs_gpio_probe(struct udevice *dev) { - struct mxs_gpio_platdata *plat = dev_get_platdata(dev); + struct mxs_gpio_plat *plat = dev_get_plat(dev); struct mxs_gpio_priv *priv = dev_get_priv(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); char name[16], *str; @@ -262,9 +262,9 @@ static int mxs_gpio_probe(struct udevice *dev) } #if CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA) -static int mxs_ofdata_to_platdata(struct udevice *dev) +static int mxs_of_to_plat(struct udevice *dev) { - struct mxs_gpio_platdata *plat = dev->platdata; + struct mxs_gpio_plat *plat = dev->plat; struct fdtdec_phandle_args args; int node = dev_of_offset(dev); int ret; @@ -298,11 +298,11 @@ U_BOOT_DRIVER(fsl_imx23_gpio) = { .id = UCLASS_GPIO, .ops = &gpio_mxs_ops, .probe = mxs_gpio_probe, - .priv_auto_alloc_size = sizeof(struct mxs_gpio_priv), - .platdata_auto_alloc_size = sizeof(struct mxs_gpio_platdata), + .priv_auto = sizeof(struct mxs_gpio_priv), + .plat_auto = sizeof(struct mxs_gpio_plat), #if CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA) .of_match = mxs_gpio_ids, - .ofdata_to_platdata = mxs_ofdata_to_platdata, + .of_to_plat = mxs_of_to_plat, #endif }; diff --git a/drivers/gpio/nx_gpio.c b/drivers/gpio/nx_gpio.c index 5ec73c4359..52851e58b6 100644 --- a/drivers/gpio/nx_gpio.c +++ b/drivers/gpio/nx_gpio.c @@ -36,7 +36,7 @@ struct nx_alive_gpio_regs { u32 pad; /* Alive GPIO Input Value Register */ }; -struct nx_gpio_platdata { +struct nx_gpio_plat { void *regs; int gpio_count; const char *bank_name; @@ -44,7 +44,7 @@ struct nx_gpio_platdata { static int nx_alive_gpio_is_check(struct udevice *dev) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); const char *bank_name = plat->bank_name; if (!strcmp(bank_name, "gpio_alv")) @@ -55,7 +55,7 @@ static int nx_alive_gpio_is_check(struct udevice *dev) static int nx_alive_gpio_direction_input(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_alive_gpio_regs *const regs = plat->regs; setbits_le32(®s->outputenb_reset, 1 << pin); @@ -66,7 +66,7 @@ static int nx_alive_gpio_direction_input(struct udevice *dev, unsigned int pin) static int nx_alive_gpio_direction_output(struct udevice *dev, unsigned int pin, int val) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_alive_gpio_regs *const regs = plat->regs; if (val) @@ -81,7 +81,7 @@ static int nx_alive_gpio_direction_output(struct udevice *dev, unsigned int pin, static int nx_alive_gpio_get_value(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_alive_gpio_regs *const regs = plat->regs; unsigned int mask = 1UL << pin; unsigned int value; @@ -94,7 +94,7 @@ static int nx_alive_gpio_get_value(struct udevice *dev, unsigned int pin) static int nx_alive_gpio_set_value(struct udevice *dev, unsigned int pin, int val) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_alive_gpio_regs *const regs = plat->regs; if (val) @@ -107,7 +107,7 @@ static int nx_alive_gpio_set_value(struct udevice *dev, unsigned int pin, static int nx_alive_gpio_get_function(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_alive_gpio_regs *const regs = plat->regs; unsigned int mask = (1UL << pin); unsigned int output; @@ -122,7 +122,7 @@ static int nx_alive_gpio_get_function(struct udevice *dev, unsigned int pin) static int nx_gpio_direction_input(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_gpio_regs *const regs = plat->regs; if (nx_alive_gpio_is_check(dev)) @@ -136,7 +136,7 @@ static int nx_gpio_direction_input(struct udevice *dev, unsigned int pin) static int nx_gpio_direction_output(struct udevice *dev, unsigned int pin, int val) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_gpio_regs *const regs = plat->regs; if (nx_alive_gpio_is_check(dev)) @@ -154,7 +154,7 @@ static int nx_gpio_direction_output(struct udevice *dev, unsigned int pin, static int nx_gpio_get_value(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_gpio_regs *const regs = plat->regs; unsigned int mask = 1UL << pin; unsigned int value; @@ -169,7 +169,7 @@ static int nx_gpio_get_value(struct udevice *dev, unsigned int pin) static int nx_gpio_set_value(struct udevice *dev, unsigned int pin, int val) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_gpio_regs *const regs = plat->regs; if (nx_alive_gpio_is_check(dev)) @@ -185,7 +185,7 @@ static int nx_gpio_set_value(struct udevice *dev, unsigned int pin, int val) static int nx_gpio_get_function(struct udevice *dev, unsigned int pin) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); struct nx_gpio_regs *const regs = plat->regs; unsigned int mask = (1UL << pin); unsigned int output; @@ -204,7 +204,7 @@ static int nx_gpio_get_function(struct udevice *dev, unsigned int pin) static int nx_gpio_probe(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); uc_priv->gpio_count = plat->gpio_count; uc_priv->bank_name = plat->bank_name; @@ -212,9 +212,9 @@ static int nx_gpio_probe(struct udevice *dev) return 0; } -static int nx_gpio_ofdata_to_platdata(struct udevice *dev) +static int nx_gpio_of_to_plat(struct udevice *dev) { - struct nx_gpio_platdata *plat = dev_get_platdata(dev); + struct nx_gpio_plat *plat = dev_get_plat(dev); plat->regs = map_physmem(devfdt_get_addr(dev), sizeof(struct nx_gpio_regs), @@ -244,7 +244,7 @@ U_BOOT_DRIVER(nx_gpio) = { .id = UCLASS_GPIO, .of_match = nx_gpio_ids, .ops = &nx_gpio_ops, - .ofdata_to_platdata = nx_gpio_ofdata_to_platdata, - .platdata_auto_alloc_size = sizeof(struct nx_gpio_platdata), + .of_to_plat = nx_gpio_of_to_plat, + .plat_auto = sizeof(struct nx_gpio_plat), .probe = nx_gpio_probe, }; diff --git a/drivers/gpio/octeon_gpio.c b/drivers/gpio/octeon_gpio.c index 45acaadcdb..f34b05d427 100644 --- a/drivers/gpio/octeon_gpio.c +++ b/drivers/gpio/octeon_gpio.c @@ -236,7 +236,7 @@ U_BOOT_DRIVER(octeon_gpio) = { .id = UCLASS_GPIO, .of_match = of_match_ptr(octeon_gpio_ids), .probe = octeon_gpio_probe, - .priv_auto_alloc_size = sizeof(struct octeon_gpio), + .priv_auto = sizeof(struct octeon_gpio), .ops = &octeon_gpio_ops, .flags = DM_FLAG_PRE_RELOC, }; diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c index 6eaa0a08a2..400c6ca472 100644 --- a/drivers/gpio/omap_gpio.c +++ b/drivers/gpio/omap_gpio.c @@ -285,7 +285,7 @@ static const struct dm_gpio_ops gpio_omap_ops = { static int omap_gpio_probe(struct udevice *dev) { struct gpio_bank *bank = dev_get_priv(dev); - struct omap_gpio_platdata *plat = dev_get_platdata(dev); + struct omap_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); char name[18], *str; @@ -302,7 +302,7 @@ static int omap_gpio_probe(struct udevice *dev) #if !CONFIG_IS_ENABLED(OF_CONTROL) static int omap_gpio_bind(struct udevice *dev) { - struct omap_gpio_platdata *plat = dev_get_platdata(dev); + struct omap_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t base_addr; if (plat) @@ -316,7 +316,7 @@ static int omap_gpio_bind(struct udevice *dev) * TODO: * When every board is converted to driver model and DT is * supported, this can be done by auto-alloc feature, but - * not using calloc to alloc memory for platdata. + * not using calloc to alloc memory for plat. * * For example am33xx_gpio uses platform data rather than device tree. * @@ -328,7 +328,7 @@ static int omap_gpio_bind(struct udevice *dev) plat->base = base_addr; plat->port_name = fdt_get_name(gd->fdt_blob, dev_of_offset(dev), NULL); - dev->platdata = plat; + dev->plat = plat; return 0; } @@ -342,9 +342,9 @@ static const struct udevice_id omap_gpio_ids[] = { { } }; -static int omap_gpio_ofdata_to_platdata(struct udevice *dev) +static int omap_gpio_of_to_plat(struct udevice *dev) { - struct omap_gpio_platdata *plat = dev_get_platdata(dev); + struct omap_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t addr; addr = dev_read_addr(dev); @@ -362,15 +362,15 @@ U_BOOT_DRIVER(gpio_omap) = { #if CONFIG_IS_ENABLED(OF_CONTROL) #if !CONFIG_IS_ENABLED(OF_PLATDATA) .of_match = omap_gpio_ids, - .ofdata_to_platdata = of_match_ptr(omap_gpio_ofdata_to_platdata), - .platdata_auto_alloc_size = sizeof(struct omap_gpio_platdata), + .of_to_plat = of_match_ptr(omap_gpio_of_to_plat), + .plat_auto = sizeof(struct omap_gpio_plat), #endif #else .bind = omap_gpio_bind, #endif .ops = &gpio_omap_ops, .probe = omap_gpio_probe, - .priv_auto_alloc_size = sizeof(struct gpio_bank), + .priv_auto = sizeof(struct gpio_bank), #if !CONFIG_IS_ENABLED(OF_CONTROL) .flags = DM_FLAG_PRE_RELOC, #endif diff --git a/drivers/gpio/pca953x_gpio.c b/drivers/gpio/pca953x_gpio.c index fd17d1a591..dc8911a8eb 100644 --- a/drivers/gpio/pca953x_gpio.c +++ b/drivers/gpio/pca953x_gpio.c @@ -76,7 +76,7 @@ struct pca953x_info { static int pca953x_write_single(struct udevice *dev, int reg, u8 val, int offset) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int bank_shift = fls((info->gpio_count - 1) / BANK_SZ); int off = offset / BANK_SZ; int ret = 0; @@ -93,7 +93,7 @@ static int pca953x_write_single(struct udevice *dev, int reg, u8 val, static int pca953x_read_single(struct udevice *dev, int reg, u8 *val, int offset) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int bank_shift = fls((info->gpio_count - 1) / BANK_SZ); int off = offset / BANK_SZ; int ret; @@ -112,7 +112,7 @@ static int pca953x_read_single(struct udevice *dev, int reg, u8 *val, static int pca953x_read_regs(struct udevice *dev, int reg, u8 *val) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int ret = 0; if (info->gpio_count <= 8) { @@ -137,7 +137,7 @@ static int pca953x_read_regs(struct udevice *dev, int reg, u8 *val) static int pca953x_write_regs(struct udevice *dev, int reg, u8 *val) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int ret = 0; if (info->gpio_count <= 8) { @@ -160,7 +160,7 @@ static int pca953x_write_regs(struct udevice *dev, int reg, u8 *val) static int pca953x_is_output(struct udevice *dev, int offset) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int bank = offset / BANK_SZ; int off = offset % BANK_SZ; @@ -185,7 +185,7 @@ static int pca953x_get_value(struct udevice *dev, uint offset) static int pca953x_set_value(struct udevice *dev, uint offset, int value) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int bank = offset / BANK_SZ; int off = offset % BANK_SZ; u8 val; @@ -207,7 +207,7 @@ static int pca953x_set_value(struct udevice *dev, uint offset, int value) static int pca953x_set_direction(struct udevice *dev, uint offset, int dir) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); int bank = offset / BANK_SZ; int off = offset % BANK_SZ; u8 val; @@ -271,7 +271,7 @@ static const struct dm_gpio_ops pca953x_ops = { static int pca953x_probe(struct udevice *dev) { - struct pca953x_info *info = dev_get_platdata(dev); + struct pca953x_info *info = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); char name[32], label[8], *str; int addr; @@ -385,6 +385,6 @@ U_BOOT_DRIVER(pca953x) = { .id = UCLASS_GPIO, .ops = &pca953x_ops, .probe = pca953x_probe, - .platdata_auto_alloc_size = sizeof(struct pca953x_info), + .plat_auto = sizeof(struct pca953x_info), .of_match = pca953x_ids, }; diff --git a/drivers/gpio/pcf8575_gpio.c b/drivers/gpio/pcf8575_gpio.c index 1b9a18fe5d..6d38646ef6 100644 --- a/drivers/gpio/pcf8575_gpio.c +++ b/drivers/gpio/pcf8575_gpio.c @@ -55,7 +55,7 @@ struct pcf8575_chip { static int pcf8575_i2c_write_le16(struct udevice *dev, unsigned int word) { - struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); + struct dm_i2c_chip *chip = dev_get_parent_plat(dev); u8 buf[2] = { word & 0xff, word >> 8, }; int ret; @@ -69,7 +69,7 @@ static int pcf8575_i2c_write_le16(struct udevice *dev, unsigned int word) static int pcf8575_i2c_read_le16(struct udevice *dev) { - struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); + struct dm_i2c_chip *chip = dev_get_parent_plat(dev); u8 buf[2]; int ret; @@ -85,7 +85,7 @@ static int pcf8575_i2c_read_le16(struct udevice *dev) static int pcf8575_direction_input(struct udevice *dev, unsigned offset) { - struct pcf8575_chip *plat = dev_get_platdata(dev); + struct pcf8575_chip *plat = dev_get_plat(dev); int status; plat->out |= BIT(offset); @@ -97,7 +97,7 @@ static int pcf8575_direction_input(struct udevice *dev, unsigned offset) static int pcf8575_direction_output(struct udevice *dev, unsigned int offset, int value) { - struct pcf8575_chip *plat = dev_get_platdata(dev); + struct pcf8575_chip *plat = dev_get_plat(dev); int ret; if (value) @@ -125,9 +125,9 @@ static int pcf8575_set_value(struct udevice *dev, unsigned int offset, return pcf8575_direction_output(dev, offset, value); } -static int pcf8575_ofdata_platdata(struct udevice *dev) +static int pcf8575_ofdata_plat(struct udevice *dev) { - struct pcf8575_chip *plat = dev_get_platdata(dev); + struct pcf8575_chip *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); int n_latch; @@ -175,7 +175,7 @@ U_BOOT_DRIVER(gpio_pcf8575) = { .id = UCLASS_GPIO, .ops = &pcf8575_gpio_ops, .of_match = pcf8575_gpio_ids, - .ofdata_to_platdata = pcf8575_ofdata_platdata, + .of_to_plat = pcf8575_ofdata_plat, .probe = pcf8575_gpio_probe, - .platdata_auto_alloc_size = sizeof(struct pcf8575_chip), + .plat_auto = sizeof(struct pcf8575_chip), }; diff --git a/drivers/gpio/pic32_gpio.c b/drivers/gpio/pic32_gpio.c index bb1ad256fa..253a9ba2f8 100644 --- a/drivers/gpio/pic32_gpio.c +++ b/drivers/gpio/pic32_gpio.c @@ -161,5 +161,5 @@ U_BOOT_DRIVER(gpio_pic32) = { .of_match = pic32_gpio_ids, .ops = &gpio_pic32_ops, .probe = pic32_gpio_probe, - .priv_auto_alloc_size = sizeof(struct pic32_gpio_priv), + .priv_auto = sizeof(struct pic32_gpio_priv), }; diff --git a/drivers/gpio/pm8916_gpio.c b/drivers/gpio/pm8916_gpio.c index 58f044678b..40b0f2578b 100644 --- a/drivers/gpio/pm8916_gpio.c +++ b/drivers/gpio/pm8916_gpio.c @@ -187,7 +187,7 @@ static int pm8916_gpio_probe(struct udevice *dev) return 0; } -static int pm8916_gpio_ofdata_to_platdata(struct udevice *dev) +static int pm8916_gpio_of_to_plat(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); @@ -209,10 +209,10 @@ U_BOOT_DRIVER(gpio_pm8916) = { .name = "gpio_pm8916", .id = UCLASS_GPIO, .of_match = pm8916_gpio_ids, - .ofdata_to_platdata = pm8916_gpio_ofdata_to_platdata, + .of_to_plat = pm8916_gpio_of_to_plat, .probe = pm8916_gpio_probe, .ops = &pm8916_gpio_ops, - .priv_auto_alloc_size = sizeof(struct pm8916_gpio_bank), + .priv_auto = sizeof(struct pm8916_gpio_bank), }; @@ -272,7 +272,7 @@ static int pm8941_pwrkey_probe(struct udevice *dev) return 0; } -static int pm8941_pwrkey_ofdata_to_platdata(struct udevice *dev) +static int pm8941_pwrkey_of_to_plat(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); @@ -294,8 +294,8 @@ U_BOOT_DRIVER(pwrkey_pm8941) = { .name = "pwrkey_pm8916", .id = UCLASS_GPIO, .of_match = pm8941_pwrkey_ids, - .ofdata_to_platdata = pm8941_pwrkey_ofdata_to_platdata, + .of_to_plat = pm8941_pwrkey_of_to_plat, .probe = pm8941_pwrkey_probe, .ops = &pm8941_pwrkey_ops, - .priv_auto_alloc_size = sizeof(struct pm8916_gpio_bank), + .priv_auto = sizeof(struct pm8916_gpio_bank), }; diff --git a/drivers/gpio/rk_gpio.c b/drivers/gpio/rk_gpio.c index 8cc288581c..68f30157a9 100644 --- a/drivers/gpio/rk_gpio.c +++ b/drivers/gpio/rk_gpio.c @@ -177,6 +177,6 @@ U_BOOT_DRIVER(rockchip_gpio_bank) = { .id = UCLASS_GPIO, .of_match = rockchip_gpio_ids, .ops = &gpio_rockchip_ops, - .priv_auto_alloc_size = sizeof(struct rockchip_gpio_priv), + .priv_auto = sizeof(struct rockchip_gpio_priv), .probe = rockchip_gpio_probe, }; diff --git a/drivers/gpio/s5p_gpio.c b/drivers/gpio/s5p_gpio.c index c78227f4da..9de9541c87 100644 --- a/drivers/gpio/s5p_gpio.c +++ b/drivers/gpio/s5p_gpio.c @@ -34,7 +34,7 @@ DECLARE_GLOBAL_DATA_PTR; #define RATE_SET(gpio) (0x1 << (gpio + 16)) /* Platform data for each bank */ -struct exynos_gpio_platdata { +struct exynos_gpio_plat { struct s5p_gpio_bank *bank; const char *bank_name; /* Name of port, e.g. 'gpa0" */ }; @@ -287,7 +287,7 @@ static int gpio_exynos_probe(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct exynos_bank_info *priv = dev->priv; - struct exynos_gpio_platdata *plat = dev->platdata; + struct exynos_gpio_plat *plat = dev->plat; /* Only child devices have ports */ if (!plat) @@ -307,7 +307,7 @@ static int gpio_exynos_probe(struct udevice *dev) */ static int gpio_exynos_bind(struct udevice *parent) { - struct exynos_gpio_platdata *plat = parent->platdata; + struct exynos_gpio_plat *plat = parent->plat; struct s5p_gpio_bank *bank, *base; const void *blob = gd->fdt_blob; int node; @@ -320,7 +320,7 @@ static int gpio_exynos_bind(struct udevice *parent) for (node = fdt_first_subnode(blob, dev_of_offset(parent)), bank = base; node > 0; node = fdt_next_subnode(blob, node), bank++) { - struct exynos_gpio_platdata *plat; + struct exynos_gpio_plat *plat; struct udevice *dev; fdt_addr_t reg; int ret; @@ -332,13 +332,11 @@ static int gpio_exynos_bind(struct udevice *parent) return -ENOMEM; plat->bank_name = fdt_get_name(blob, node, NULL); - ret = device_bind(parent, parent->driver, - plat->bank_name, plat, -1, &dev); + ret = device_bind(parent, parent->driver, plat->bank_name, plat, + offset_to_ofnode(node), &dev); if (ret) return ret; - dev_set_of_offset(dev, node); - reg = dev_read_addr(dev); if (reg != FDT_ADDR_T_NONE) bank = (struct s5p_gpio_bank *)((ulong)base + reg); @@ -367,7 +365,7 @@ U_BOOT_DRIVER(gpio_exynos) = { .of_match = exynos_gpio_ids, .bind = gpio_exynos_bind, .probe = gpio_exynos_probe, - .priv_auto_alloc_size = sizeof(struct exynos_bank_info), + .priv_auto = sizeof(struct exynos_bank_info), .ops = &gpio_exynos_ops, }; #endif diff --git a/drivers/gpio/sandbox.c b/drivers/gpio/sandbox.c index eb2600de31..2708838adf 100644 --- a/drivers/gpio/sandbox.c +++ b/drivers/gpio/sandbox.c @@ -278,7 +278,7 @@ static const struct dm_gpio_ops gpio_sandbox_ops = { #endif }; -static int sandbox_gpio_ofdata_to_platdata(struct udevice *dev) +static int sandbox_gpio_of_to_plat(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); @@ -318,7 +318,7 @@ U_BOOT_DRIVER(sandbox_gpio) = { .name = "sandbox_gpio", .id = UCLASS_GPIO, .of_match = sandbox_gpio_ids, - .ofdata_to_platdata = sandbox_gpio_ofdata_to_platdata, + .of_to_plat = sandbox_gpio_of_to_plat, .probe = gpio_sandbox_probe, .remove = gpio_sandbox_remove, .ops = &gpio_sandbox_ops, @@ -532,6 +532,6 @@ U_BOOT_DRIVER(sandbox_pinctrl_gpio) = { .ops = &sandbox_pinctrl_gpio_ops, .bind = dm_scan_fdt_dev, .probe = sandbox_pinctrl_probe, - .priv_auto_alloc_size = sizeof(struct sb_pinctrl_priv), + .priv_auto = sizeof(struct sb_pinctrl_priv), ACPI_OPS_PTR(&pinctrl_sandbox_acpi_ops) }; diff --git a/drivers/gpio/sifive-gpio.c b/drivers/gpio/sifive-gpio.c index bf3537b76b..abd1f629b9 100644 --- a/drivers/gpio/sifive-gpio.c +++ b/drivers/gpio/sifive-gpio.c @@ -15,7 +15,7 @@ static int sifive_gpio_probe(struct udevice *dev) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); char name[18], *str; @@ -49,7 +49,7 @@ static void sifive_update_gpio_reg(void *bptr, u32 offset, bool value) static int sifive_gpio_direction_input(struct udevice *dev, u32 offset) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); if (offset > uc_priv->gpio_count) @@ -65,7 +65,7 @@ static int sifive_gpio_direction_input(struct udevice *dev, u32 offset) static int sifive_gpio_direction_output(struct udevice *dev, u32 offset, int value) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); if (offset > uc_priv->gpio_count) @@ -83,7 +83,7 @@ static int sifive_gpio_direction_output(struct udevice *dev, u32 offset, static int sifive_gpio_get_value(struct udevice *dev, u32 offset) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); int val; int dir; @@ -104,7 +104,7 @@ static int sifive_gpio_get_value(struct udevice *dev, u32 offset) static int sifive_gpio_set_value(struct udevice *dev, u32 offset, int value) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); if (offset > uc_priv->gpio_count) @@ -117,7 +117,7 @@ static int sifive_gpio_set_value(struct udevice *dev, u32 offset, int value) static int sifive_gpio_get_function(struct udevice *dev, unsigned int offset) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); u32 outdir, indir, val; struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); @@ -154,9 +154,9 @@ static const struct dm_gpio_ops sifive_gpio_ops = { .get_function = sifive_gpio_get_function, }; -static int sifive_gpio_ofdata_to_platdata(struct udevice *dev) +static int sifive_gpio_of_to_plat(struct udevice *dev) { - struct sifive_gpio_platdata *plat = dev_get_platdata(dev); + struct sifive_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t addr; addr = dev_read_addr(dev); @@ -171,8 +171,8 @@ U_BOOT_DRIVER(gpio_sifive) = { .name = "gpio_sifive", .id = UCLASS_GPIO, .of_match = sifive_gpio_match, - .ofdata_to_platdata = of_match_ptr(sifive_gpio_ofdata_to_platdata), - .platdata_auto_alloc_size = sizeof(struct sifive_gpio_platdata), + .of_to_plat = of_match_ptr(sifive_gpio_of_to_plat), + .plat_auto = sizeof(struct sifive_gpio_plat), .ops = &sifive_gpio_ops, .probe = sifive_gpio_probe, }; diff --git a/drivers/gpio/stm32_gpio.c b/drivers/gpio/stm32_gpio.c index 51e1efd701..79d55e812d 100644 --- a/drivers/gpio/stm32_gpio.c +++ b/drivers/gpio/stm32_gpio.c @@ -342,5 +342,5 @@ U_BOOT_DRIVER(gpio_stm32) = { .probe = gpio_stm32_probe, .ops = &gpio_stm32_ops, .flags = DM_UC_FLAG_SEQ_ALIAS, - .priv_auto_alloc_size = sizeof(struct stm32_gpio_priv), + .priv_auto = sizeof(struct stm32_gpio_priv), }; diff --git a/drivers/gpio/sunxi_gpio.c b/drivers/gpio/sunxi_gpio.c index 02c3471b56..75494c7828 100644 --- a/drivers/gpio/sunxi_gpio.c +++ b/drivers/gpio/sunxi_gpio.c @@ -22,7 +22,7 @@ #define SUNXI_GPIOS_PER_BANK SUNXI_GPIO_A_NR -struct sunxi_gpio_platdata { +struct sunxi_gpio_plat { struct sunxi_gpio *regs; const char *bank_name; /* Name of bank, e.g. "B" */ int gpio_count; @@ -158,7 +158,7 @@ int sunxi_name_to_gpio(const char *name) static int sunxi_gpio_direction_input(struct udevice *dev, unsigned offset) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); sunxi_gpio_set_cfgbank(plat->regs, offset, SUNXI_GPIO_INPUT); @@ -168,7 +168,7 @@ static int sunxi_gpio_direction_input(struct udevice *dev, unsigned offset) static int sunxi_gpio_direction_output(struct udevice *dev, unsigned offset, int value) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); u32 num = GPIO_NUM(offset); sunxi_gpio_set_cfgbank(plat->regs, offset, SUNXI_GPIO_OUTPUT); @@ -179,7 +179,7 @@ static int sunxi_gpio_direction_output(struct udevice *dev, unsigned offset, static int sunxi_gpio_get_value(struct udevice *dev, unsigned offset) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); u32 num = GPIO_NUM(offset); unsigned dat; @@ -192,7 +192,7 @@ static int sunxi_gpio_get_value(struct udevice *dev, unsigned offset) static int sunxi_gpio_set_value(struct udevice *dev, unsigned offset, int value) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); u32 num = GPIO_NUM(offset); clrsetbits_le32(&plat->regs->dat, 1 << num, value ? (1 << num) : 0); @@ -201,7 +201,7 @@ static int sunxi_gpio_set_value(struct udevice *dev, unsigned offset, static int sunxi_gpio_get_function(struct udevice *dev, unsigned offset) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); int func; func = sunxi_gpio_get_cfgbank(plat->regs, offset); @@ -260,7 +260,7 @@ static char *gpio_bank_name(int bank) static int gpio_sunxi_probe(struct udevice *dev) { - struct sunxi_gpio_platdata *plat = dev_get_platdata(dev); + struct sunxi_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); /* Tell the uclass how many GPIOs we have */ @@ -285,7 +285,7 @@ static int gpio_sunxi_bind(struct udevice *parent) { struct sunxi_gpio_soc_data *soc_data = (struct sunxi_gpio_soc_data *)dev_get_driver_data(parent); - struct sunxi_gpio_platdata *plat = parent->platdata; + struct sunxi_gpio_plat *plat = parent->plat; struct sunxi_gpio_reg *ctlr; int bank, ret; @@ -295,7 +295,7 @@ static int gpio_sunxi_bind(struct udevice *parent) ctlr = dev_read_addr_ptr(parent); for (bank = 0; bank < soc_data->no_banks; bank++) { - struct sunxi_gpio_platdata *plat; + struct sunxi_gpio_plat *plat; struct udevice *dev; plat = calloc(1, sizeof(*plat)); @@ -305,11 +305,10 @@ static int gpio_sunxi_bind(struct udevice *parent) plat->bank_name = gpio_bank_name(soc_data->start + bank); plat->gpio_count = SUNXI_GPIOS_PER_BANK; - ret = device_bind(parent, parent->driver, - plat->bank_name, plat, -1, &dev); + ret = device_bind(parent, parent->driver, plat->bank_name, plat, + dev_ofnode(parent), &dev); if (ret) return ret; - dev_set_of_offset(dev, dev_of_offset(parent)); } return 0; diff --git a/drivers/gpio/tegra186_gpio.c b/drivers/gpio/tegra186_gpio.c index 6626b5415a..cd1fb65a55 100644 --- a/drivers/gpio/tegra186_gpio.c +++ b/drivers/gpio/tegra186_gpio.c @@ -26,7 +26,7 @@ struct tegra186_gpio_ctlr_data { uint32_t port_count; }; -struct tegra186_gpio_platdata { +struct tegra186_gpio_plat { const char *name; uint32_t *regs; }; @@ -34,7 +34,7 @@ struct tegra186_gpio_platdata { static uint32_t *tegra186_gpio_reg(struct udevice *dev, uint32_t reg, uint32_t gpio) { - struct tegra186_gpio_platdata *plat = dev->platdata; + struct tegra186_gpio_plat *plat = dev->plat; uint32_t index = (reg + (gpio * TEGRA186_GPIO_PER_GPIO_STRIDE)) / 4; return &(plat->regs[index]); @@ -166,7 +166,7 @@ static const struct dm_gpio_ops tegra186_gpio_ops = { */ static int tegra186_gpio_bind(struct udevice *parent) { - struct tegra186_gpio_platdata *parent_plat = parent->platdata; + struct tegra186_gpio_plat *parent_plat = parent->plat; struct tegra186_gpio_ctlr_data *ctlr_data = (struct tegra186_gpio_ctlr_data *)dev_get_driver_data(parent); uint32_t *regs; @@ -181,7 +181,7 @@ static int tegra186_gpio_bind(struct udevice *parent) return -EINVAL; for (port = 0; port < ctlr_data->port_count; port++) { - struct tegra186_gpio_platdata *plat; + struct tegra186_gpio_plat *plat; struct udevice *dev; plat = calloc(1, sizeof(*plat)); @@ -191,10 +191,9 @@ static int tegra186_gpio_bind(struct udevice *parent) plat->regs = &(regs[ctlr_data->ports[port].offset / 4]); ret = device_bind(parent, parent->driver, plat->name, plat, - -1, &dev); + dev_ofnode(parent), &dev); if (ret) return ret; - dev_set_of_offset(dev, dev_of_offset(parent)); } return 0; @@ -202,7 +201,7 @@ static int tegra186_gpio_bind(struct udevice *parent) static int tegra186_gpio_probe(struct udevice *dev) { - struct tegra186_gpio_platdata *plat = dev->platdata; + struct tegra186_gpio_plat *plat = dev->plat; struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); /* Only child devices have ports */ diff --git a/drivers/gpio/tegra_gpio.c b/drivers/gpio/tegra_gpio.c index 912577a571..c489796f77 100644 --- a/drivers/gpio/tegra_gpio.c +++ b/drivers/gpio/tegra_gpio.c @@ -28,7 +28,7 @@ static const int CONFIG_GPIO = 1; static const int DIRECTION_INPUT = 0; static const int DIRECTION_OUTPUT = 1; -struct tegra_gpio_platdata { +struct tegra_gpio_plat { struct gpio_ctlr_bank *bank; const char *port_name; /* Name of port, e.g. "B" */ int base_gpio; /* Port number for this port (0, 1,.., n-1) */ @@ -292,7 +292,7 @@ static int gpio_tegra_probe(struct udevice *dev) { struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); struct tegra_port_info *priv = dev->priv; - struct tegra_gpio_platdata *plat = dev->platdata; + struct tegra_gpio_plat *plat = dev->plat; /* Only child devices have ports */ if (!plat) @@ -313,7 +313,7 @@ static int gpio_tegra_probe(struct udevice *dev) */ static int gpio_tegra_bind(struct udevice *parent) { - struct tegra_gpio_platdata *plat = parent->platdata; + struct tegra_gpio_plat *plat = parent->plat; struct gpio_ctlr *ctlr; int bank_count; int bank; @@ -348,7 +348,7 @@ static int gpio_tegra_bind(struct udevice *parent) int port; for (port = 0; port < TEGRA_PORTS_PER_BANK; port++) { - struct tegra_gpio_platdata *plat; + struct tegra_gpio_plat *plat; struct udevice *dev; int base_port; @@ -361,10 +361,10 @@ static int gpio_tegra_bind(struct udevice *parent) plat->port_name = gpio_port_name(base_port); ret = device_bind(parent, parent->driver, - plat->port_name, plat, -1, &dev); + plat->port_name, plat, + dev_ofnode(parent), &dev); if (ret) return ret; - dev_set_of_offset(dev, dev_of_offset(parent)); } } @@ -377,6 +377,6 @@ U_BOOT_DRIVER(gpio_tegra) = { .of_match = tegra_gpio_ids, .bind = gpio_tegra_bind, .probe = gpio_tegra_probe, - .priv_auto_alloc_size = sizeof(struct tegra_port_info), + .priv_auto = sizeof(struct tegra_port_info), .ops = &gpio_tegra_ops, }; diff --git a/drivers/gpio/vybrid_gpio.c b/drivers/gpio/vybrid_gpio.c index 4efff5c364..91c0308f2f 100644 --- a/drivers/gpio/vybrid_gpio.c +++ b/drivers/gpio/vybrid_gpio.c @@ -93,7 +93,7 @@ static const struct dm_gpio_ops gpio_vybrid_ops = { static int vybrid_gpio_probe(struct udevice *dev) { struct vybrid_gpios *gpios = dev_get_priv(dev); - struct vybrid_gpio_platdata *plat = dev_get_platdata(dev); + struct vybrid_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); uc_priv->bank_name = plat->port_name; @@ -104,9 +104,9 @@ static int vybrid_gpio_probe(struct udevice *dev) return 0; } -static int vybrid_gpio_odata_to_platdata(struct udevice *dev) +static int vybrid_gpio_odata_to_plat(struct udevice *dev) { - struct vybrid_gpio_platdata *plat = dev_get_platdata(dev); + struct vybrid_gpio_plat *plat = dev_get_plat(dev); fdt_addr_t base_addr; base_addr = dev_read_addr(dev); @@ -130,8 +130,8 @@ U_BOOT_DRIVER(gpio_vybrid) = { .id = UCLASS_GPIO, .ops = &gpio_vybrid_ops, .of_match = vybrid_gpio_ids, - .ofdata_to_platdata = vybrid_gpio_odata_to_platdata, + .of_to_plat = vybrid_gpio_odata_to_plat, .probe = vybrid_gpio_probe, - .priv_auto_alloc_size = sizeof(struct vybrid_gpios), - .platdata_auto_alloc_size = sizeof(struct vybrid_gpio_platdata), + .priv_auto = sizeof(struct vybrid_gpios), + .plat_auto = sizeof(struct vybrid_gpio_plat), }; diff --git a/drivers/gpio/xilinx_gpio.c b/drivers/gpio/xilinx_gpio.c index 014f120d60..510838d2f5 100644 --- a/drivers/gpio/xilinx_gpio.c +++ b/drivers/gpio/xilinx_gpio.c @@ -21,7 +21,7 @@ struct gpio_regs { u32 gpiodir; }; -struct xilinx_gpio_platdata { +struct xilinx_gpio_plat { struct gpio_regs *regs; int bank_max[XILINX_GPIO_MAX_BANK]; int bank_input[XILINX_GPIO_MAX_BANK]; @@ -36,13 +36,13 @@ struct xilinx_gpio_privdata { static int xilinx_gpio_get_bank_pin(unsigned offset, u32 *bank_num, u32 *bank_pin_num, struct udevice *dev) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); u32 bank, max_pins; /* the first gpio is 0 not 1 */ u32 pin_num = offset; for (bank = 0; bank < XILINX_GPIO_MAX_BANK; bank++) { - max_pins = platdata->bank_max[bank]; + max_pins = plat->bank_max[bank]; if (pin_num < max_pins) { debug("%s: found at bank 0x%x pin 0x%x\n", __func__, bank, pin_num); @@ -59,7 +59,7 @@ static int xilinx_gpio_get_bank_pin(unsigned offset, u32 *bank_num, static int xilinx_gpio_set_value(struct udevice *dev, unsigned offset, int value) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); struct xilinx_gpio_privdata *priv = dev_get_priv(dev); int val, ret; u32 bank, pin; @@ -71,14 +71,14 @@ static int xilinx_gpio_set_value(struct udevice *dev, unsigned offset, val = priv->output_val[bank]; debug("%s: regs: %lx, value: %x, gpio: %x, bank %x, pin %x, out %x\n", - __func__, (ulong)platdata->regs, value, offset, bank, pin, val); + __func__, (ulong)plat->regs, value, offset, bank, pin, val); if (value) val = val | (1 << pin); else val = val & ~(1 << pin); - writel(val, &platdata->regs->gpiodata + bank * 2); + writel(val, &plat->regs->gpiodata + bank * 2); priv->output_val[bank] = val; @@ -87,7 +87,7 @@ static int xilinx_gpio_set_value(struct udevice *dev, unsigned offset, static int xilinx_gpio_get_value(struct udevice *dev, unsigned offset) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); struct xilinx_gpio_privdata *priv = dev_get_priv(dev); int val, ret; u32 bank, pin; @@ -97,14 +97,14 @@ static int xilinx_gpio_get_value(struct udevice *dev, unsigned offset) return ret; debug("%s: regs: %lx, gpio: %x, bank %x, pin %x\n", __func__, - (ulong)platdata->regs, offset, bank, pin); + (ulong)plat->regs, offset, bank, pin); - if (platdata->bank_output[bank]) { + if (plat->bank_output[bank]) { debug("%s: Read saved output value\n", __func__); val = priv->output_val[bank]; } else { debug("%s: Read input value from reg\n", __func__); - val = readl(&platdata->regs->gpiodata + bank * 2); + val = readl(&plat->regs->gpiodata + bank * 2); } val = !!(val & (1 << pin)); @@ -114,7 +114,7 @@ static int xilinx_gpio_get_value(struct udevice *dev, unsigned offset) static int xilinx_gpio_get_function(struct udevice *dev, unsigned offset) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); int val, ret; u32 bank, pin; @@ -123,15 +123,15 @@ static int xilinx_gpio_get_function(struct udevice *dev, unsigned offset) return ret; /* Check if all pins are inputs */ - if (platdata->bank_input[bank]) + if (plat->bank_input[bank]) return GPIOF_INPUT; /* Check if all pins are outputs */ - if (platdata->bank_output[bank]) + if (plat->bank_output[bank]) return GPIOF_OUTPUT; /* FIXME test on dual */ - val = readl(&platdata->regs->gpiodir + bank * 2); + val = readl(&plat->regs->gpiodir + bank * 2); val = !(val & (1 << pin)); /* input is 1 in reg but GPIOF_INPUT is 0 */ @@ -143,7 +143,7 @@ static int xilinx_gpio_get_function(struct udevice *dev, unsigned offset) static int xilinx_gpio_direction_output(struct udevice *dev, unsigned offset, int value) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); int val, ret; u32 bank, pin; @@ -152,15 +152,15 @@ static int xilinx_gpio_direction_output(struct udevice *dev, unsigned offset, return ret; /* can't change it if all is input by default */ - if (platdata->bank_input[bank]) + if (plat->bank_input[bank]) return -EINVAL; xilinx_gpio_set_value(dev, offset, value); - if (!platdata->bank_output[bank]) { - val = readl(&platdata->regs->gpiodir + bank * 2); + if (!plat->bank_output[bank]) { + val = readl(&plat->regs->gpiodir + bank * 2); val = val & ~(1 << pin); - writel(val, &platdata->regs->gpiodir + bank * 2); + writel(val, &plat->regs->gpiodir + bank * 2); } return 0; @@ -168,7 +168,7 @@ static int xilinx_gpio_direction_output(struct udevice *dev, unsigned offset, static int xilinx_gpio_direction_input(struct udevice *dev, unsigned offset) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); int val, ret; u32 bank, pin; @@ -177,16 +177,16 @@ static int xilinx_gpio_direction_input(struct udevice *dev, unsigned offset) return ret; /* Already input */ - if (platdata->bank_input[bank]) + if (plat->bank_input[bank]) return 0; /* can't change it if all is output by default */ - if (platdata->bank_output[bank]) + if (plat->bank_output[bank]) return -EINVAL; - val = readl(&platdata->regs->gpiodir + bank * 2); + val = readl(&plat->regs->gpiodir + bank * 2); val = val | (1 << pin); - writel(val, &platdata->regs->gpiodir + bank * 2); + writel(val, &plat->regs->gpiodir + bank * 2); return 0; } @@ -194,7 +194,7 @@ static int xilinx_gpio_direction_input(struct udevice *dev, unsigned offset) static int xilinx_gpio_xlate(struct udevice *dev, struct gpio_desc *desc, struct ofnode_phandle_args *args) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); desc->offset = args->args[0]; @@ -209,13 +209,13 @@ static int xilinx_gpio_xlate(struct udevice *dev, struct gpio_desc *desc, * add amount of pins in second channel if present. */ if (args->args[1]) { - if (!platdata->bank_max[1]) { + if (!plat->bank_max[1]) { printf("%s: %s has no second channel\n", __func__, dev->name); return -EINVAL; } - desc->offset += platdata->bank_max[0]; + desc->offset += plat->bank_max[0]; } /* The third cell is optional */ @@ -239,7 +239,7 @@ static const struct dm_gpio_ops xilinx_gpio_ops = { static int xilinx_gpio_probe(struct udevice *dev) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); struct xilinx_gpio_privdata *priv = dev_get_priv(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); const void *label_ptr; @@ -253,42 +253,38 @@ static int xilinx_gpio_probe(struct udevice *dev) uc_priv->bank_name = dev->name; } - uc_priv->gpio_count = platdata->bank_max[0] + platdata->bank_max[1]; + uc_priv->gpio_count = plat->bank_max[0] + plat->bank_max[1]; - priv->output_val[0] = platdata->dout_default[0]; + priv->output_val[0] = plat->dout_default[0]; - if (platdata->bank_max[1]) - priv->output_val[1] = platdata->dout_default[1]; + if (plat->bank_max[1]) + priv->output_val[1] = plat->dout_default[1]; return 0; } -static int xilinx_gpio_ofdata_to_platdata(struct udevice *dev) +static int xilinx_gpio_of_to_plat(struct udevice *dev) { - struct xilinx_gpio_platdata *platdata = dev_get_platdata(dev); + struct xilinx_gpio_plat *plat = dev_get_plat(dev); int is_dual; - platdata->regs = (struct gpio_regs *)dev_read_addr(dev); + plat->regs = (struct gpio_regs *)dev_read_addr(dev); - platdata->bank_max[0] = dev_read_u32_default(dev, - "xlnx,gpio-width", 0); - platdata->bank_input[0] = dev_read_u32_default(dev, - "xlnx,all-inputs", 0); - platdata->bank_output[0] = dev_read_u32_default(dev, - "xlnx,all-outputs", 0); - platdata->dout_default[0] = dev_read_u32_default(dev, - "xlnx,dout-default", - 0); + plat->bank_max[0] = dev_read_u32_default(dev, "xlnx,gpio-width", 0); + plat->bank_input[0] = dev_read_u32_default(dev, "xlnx,all-inputs", 0); + plat->bank_output[0] = dev_read_u32_default(dev, "xlnx,all-outputs", 0); + plat->dout_default[0] = dev_read_u32_default(dev, "xlnx,dout-default", + 0); is_dual = dev_read_u32_default(dev, "xlnx,is-dual", 0); if (is_dual) { - platdata->bank_max[1] = dev_read_u32_default(dev, - "xlnx,gpio2-width", 0); - platdata->bank_input[1] = dev_read_u32_default(dev, + plat->bank_max[1] = dev_read_u32_default(dev, + "xlnx,gpio2-width", 0); + plat->bank_input[1] = dev_read_u32_default(dev, "xlnx,all-inputs-2", 0); - platdata->bank_output[1] = dev_read_u32_default(dev, + plat->bank_output[1] = dev_read_u32_default(dev, "xlnx,all-outputs-2", 0); - platdata->dout_default[1] = dev_read_u32_default(dev, + plat->dout_default[1] = dev_read_u32_default(dev, "xlnx,dout-default-2", 0); } @@ -305,8 +301,8 @@ U_BOOT_DRIVER(xilinx_gpio) = { .id = UCLASS_GPIO, .ops = &xilinx_gpio_ops, .of_match = xilinx_gpio_ids, - .ofdata_to_platdata = xilinx_gpio_ofdata_to_platdata, + .of_to_plat = xilinx_gpio_of_to_plat, .probe = xilinx_gpio_probe, - .platdata_auto_alloc_size = sizeof(struct xilinx_gpio_platdata), - .priv_auto_alloc_size = sizeof(struct xilinx_gpio_privdata), + .plat_auto = sizeof(struct xilinx_gpio_plat), + .priv_auto = sizeof(struct xilinx_gpio_privdata), }; diff --git a/drivers/gpio/zynq_gpio.c b/drivers/gpio/zynq_gpio.c index d0e90b8d63..71a56127c0 100644 --- a/drivers/gpio/zynq_gpio.c +++ b/drivers/gpio/zynq_gpio.c @@ -97,7 +97,7 @@ #define PMC_GPIO_NR_GPIOS 116 #define PMC_GPIO_MAX_BANK 5 -struct zynq_gpio_platdata { +struct zynq_gpio_plat { phys_addr_t base; const struct zynq_platform_data *p_data; }; @@ -193,20 +193,20 @@ static inline void zynq_gpio_get_bank_pin(unsigned int pin_num, unsigned int *bank_pin_num, struct udevice *dev) { - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); u32 bank; - for (bank = 0; bank < platdata->p_data->max_bank; bank++) { - if (pin_num >= platdata->p_data->bank_min[bank] && - pin_num <= platdata->p_data->bank_max[bank]) { + for (bank = 0; bank < plat->p_data->max_bank; bank++) { + if (pin_num >= plat->p_data->bank_min[bank] && + pin_num <= plat->p_data->bank_max[bank]) { *bank_num = bank; *bank_pin_num = pin_num - - platdata->p_data->bank_min[bank]; + plat->p_data->bank_min[bank]; return; } } - if (bank >= platdata->p_data->max_bank) { + if (bank >= plat->p_data->max_bank) { printf("Invalid bank and pin num\n"); *bank_num = 0; *bank_pin_num = 0; @@ -215,9 +215,9 @@ static inline void zynq_gpio_get_bank_pin(unsigned int pin_num, static int gpio_is_valid(unsigned gpio, struct udevice *dev) { - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); - return gpio < platdata->p_data->ngpio; + return gpio < plat->p_data->ngpio; } static int check_gpio(unsigned gpio, struct udevice *dev) @@ -233,14 +233,14 @@ static int zynq_gpio_get_value(struct udevice *dev, unsigned gpio) { u32 data; unsigned int bank_num, bank_pin_num; - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); if (check_gpio(gpio, dev) < 0) return -1; zynq_gpio_get_bank_pin(gpio, &bank_num, &bank_pin_num, dev); - data = readl(platdata->base + + data = readl(plat->base + ZYNQ_GPIO_DATA_RO_OFFSET(bank_num)); return (data >> bank_pin_num) & 1; @@ -249,7 +249,7 @@ static int zynq_gpio_get_value(struct udevice *dev, unsigned gpio) static int zynq_gpio_set_value(struct udevice *dev, unsigned gpio, int value) { unsigned int reg_offset, bank_num, bank_pin_num; - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); if (check_gpio(gpio, dev) < 0) return -1; @@ -272,7 +272,7 @@ static int zynq_gpio_set_value(struct udevice *dev, unsigned gpio, int value) value = ~(1 << (bank_pin_num + ZYNQ_GPIO_MID_PIN_NUM)) & ((value << bank_pin_num) | ZYNQ_GPIO_UPPER_MASK); - writel(value, platdata->base + reg_offset); + writel(value, plat->base + reg_offset); return 0; } @@ -281,7 +281,7 @@ static int zynq_gpio_direction_input(struct udevice *dev, unsigned gpio) { u32 reg; unsigned int bank_num, bank_pin_num; - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); if (check_gpio(gpio, dev) < 0) return -1; @@ -293,9 +293,9 @@ static int zynq_gpio_direction_input(struct udevice *dev, unsigned gpio) return -1; /* clear the bit in direction mode reg to set the pin as input */ - reg = readl(platdata->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); + reg = readl(plat->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); reg &= ~BIT(bank_pin_num); - writel(reg, platdata->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); + writel(reg, plat->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); return 0; } @@ -305,7 +305,7 @@ static int zynq_gpio_direction_output(struct udevice *dev, unsigned gpio, { u32 reg; unsigned int bank_num, bank_pin_num; - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); if (check_gpio(gpio, dev) < 0) return -1; @@ -313,14 +313,14 @@ static int zynq_gpio_direction_output(struct udevice *dev, unsigned gpio, zynq_gpio_get_bank_pin(gpio, &bank_num, &bank_pin_num, dev); /* set the GPIO pin as output */ - reg = readl(platdata->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); + reg = readl(plat->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); reg |= BIT(bank_pin_num); - writel(reg, platdata->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); + writel(reg, plat->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); /* configure the output enable reg for the pin */ - reg = readl(platdata->base + ZYNQ_GPIO_OUTEN_OFFSET(bank_num)); + reg = readl(plat->base + ZYNQ_GPIO_OUTEN_OFFSET(bank_num)); reg |= BIT(bank_pin_num); - writel(reg, platdata->base + ZYNQ_GPIO_OUTEN_OFFSET(bank_num)); + writel(reg, plat->base + ZYNQ_GPIO_OUTEN_OFFSET(bank_num)); /* set the state of the pin */ zynq_gpio_set_value(dev, gpio, value); @@ -331,7 +331,7 @@ static int zynq_gpio_get_function(struct udevice *dev, unsigned offset) { u32 reg; unsigned int bank_num, bank_pin_num; - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); if (check_gpio(offset, dev) < 0) return -1; @@ -339,7 +339,7 @@ static int zynq_gpio_get_function(struct udevice *dev, unsigned offset) zynq_gpio_get_bank_pin(offset, &bank_num, &bank_pin_num, dev); /* set the GPIO pin as output */ - reg = readl(platdata->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); + reg = readl(plat->base + ZYNQ_GPIO_DIRM_OFFSET(bank_num)); reg &= BIT(bank_pin_num); if (reg) return GPIOF_OUTPUT; @@ -369,7 +369,7 @@ static const struct udevice_id zynq_gpio_ids[] = { static int zynq_gpio_probe(struct udevice *dev) { - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); struct gpio_dev_priv *uc_priv = dev_get_uclass_priv(dev); const void *label_ptr; @@ -382,19 +382,19 @@ static int zynq_gpio_probe(struct udevice *dev) uc_priv->bank_name = dev->name; } - if (platdata->p_data) - uc_priv->gpio_count = platdata->p_data->ngpio; + if (plat->p_data) + uc_priv->gpio_count = plat->p_data->ngpio; return 0; } -static int zynq_gpio_ofdata_to_platdata(struct udevice *dev) +static int zynq_gpio_of_to_plat(struct udevice *dev) { - struct zynq_gpio_platdata *platdata = dev_get_platdata(dev); + struct zynq_gpio_plat *plat = dev_get_plat(dev); - platdata->base = (phys_addr_t)dev_read_addr(dev); + plat->base = (phys_addr_t)dev_read_addr(dev); - platdata->p_data = + plat->p_data = (struct zynq_platform_data *)dev_get_driver_data(dev); return 0; @@ -405,7 +405,7 @@ U_BOOT_DRIVER(gpio_zynq) = { .id = UCLASS_GPIO, .ops = &gpio_zynq_ops, .of_match = zynq_gpio_ids, - .ofdata_to_platdata = zynq_gpio_ofdata_to_platdata, + .of_to_plat = zynq_gpio_of_to_plat, .probe = zynq_gpio_probe, - .platdata_auto_alloc_size = sizeof(struct zynq_gpio_platdata), + .plat_auto = sizeof(struct zynq_gpio_plat), }; |