summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl
diff options
context:
space:
mode:
authorAntony Pavlov <antonynpavlov@gmail.com>2015-04-29 11:56:58 +0300
committerSascha Hauer <s.hauer@pengutronix.de>2015-04-30 08:12:57 +0200
commit377d261708d3057200c7ad9647fddb15169fea78 (patch)
tree9334590c4a63ec0b4ea01b91a7adc627a1ceb699 /drivers/pinctrl
parent92207cde490261c52cc804588561d8f3117cdf87 (diff)
downloadbarebox-377d261708d3057200c7ad9647fddb15169fea78.tar.gz
barebox-377d261708d3057200c7ad9647fddb15169fea78.tar.xz
of: use 'const void *' for struct of_device_id.data
Since 2011 barebox' of_device_id struct uses unsigned long type for data field: struct of_device_id { char *compatible; unsigned long data; }; Almost always struct of_device_id.data field are used as pointer and need 'unsigned long' casting. E.g. see 'git grep -A 4 of_device_id drivers/' output: drivers/ata/sata-imx.c:static __maybe_unused struct of_device_id imx_sata_dt_ids[] = { drivers/ata/sata-imx.c- { drivers/ata/sata-imx.c- .compatible = "fsl,imx6q-ahci", drivers/ata/sata-imx.c- .data = (unsigned long)&data_imx6, drivers/ata/sata-imx.c- }, { Here is of_device_id struct in linux kernel v4.0: struct of_device_id { char name[32]; char type[32]; char compatible[128]; const void *data; }; Changing of_device_id.data type to 'const void *data' will increase barebox' linux kernel compatibility and decrease number of 'unsigned long' casts. Part of the patch was done using the 'coccinelle' tool with the following semantic patch: @rule1@ identifier dev; identifier type; identifier func; @@ func(...) { <... - dev_get_drvdata(dev, (unsigned long *)&type) + dev_get_drvdata(dev, (const void **)&type) ...> } @rule2@ identifier dev; identifier type; identifier func; identifier data; @@ func(...) { <... - dev_get_drvdata(dev, (unsigned long *)&type->data) + dev_get_drvdata(dev, (const void **)&type->data) ...> } Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r--drivers/pinctrl/mvebu/armada-370.c2
-rw-r--r--drivers/pinctrl/mvebu/armada-xp.c6
-rw-r--r--drivers/pinctrl/mvebu/dove.c2
-rw-r--r--drivers/pinctrl/mvebu/kirkwood.c12
-rw-r--r--drivers/pinctrl/pinctrl-at91.c12
-rw-r--r--drivers/pinctrl/pinctrl-rockchip.c8
-rw-r--r--drivers/pinctrl/pinctrl-tegra-xusb.c4
-rw-r--r--drivers/pinctrl/pinctrl-tegra30.c6
8 files changed, 26 insertions, 26 deletions
diff --git a/drivers/pinctrl/mvebu/armada-370.c b/drivers/pinctrl/mvebu/armada-370.c
index bcfe40e6c8..b7901f8c6d 100644
--- a/drivers/pinctrl/mvebu/armada-370.c
+++ b/drivers/pinctrl/mvebu/armada-370.c
@@ -384,7 +384,7 @@ static struct mvebu_pinctrl_soc_info mv88f6710_pinctrl_info = {
static struct of_device_id armada_370_pinctrl_of_match[] = {
{
.compatible = "marvell,mv88f6710-pinctrl",
- .data = (u32)&mv88f6710_pinctrl_info,
+ .data = &mv88f6710_pinctrl_info,
},
{ },
};
diff --git a/drivers/pinctrl/mvebu/armada-xp.c b/drivers/pinctrl/mvebu/armada-xp.c
index 1745776a4d..51db35d068 100644
--- a/drivers/pinctrl/mvebu/armada-xp.c
+++ b/drivers/pinctrl/mvebu/armada-xp.c
@@ -362,9 +362,9 @@ static struct mvebu_pinctrl_soc_info armada_xp_pinctrl_info = {
};
static struct of_device_id armada_xp_pinctrl_of_match[] = {
- { .compatible = "marvell,mv78230-pinctrl", .data = (u32)V_MV78230, },
- { .compatible = "marvell,mv78260-pinctrl", .data = (u32)V_MV78260, },
- { .compatible = "marvell,mv78460-pinctrl", .data = (u32)V_MV78460, },
+ { .compatible = "marvell,mv78230-pinctrl", .data = (void *)V_MV78230, },
+ { .compatible = "marvell,mv78260-pinctrl", .data = (void *)V_MV78260, },
+ { .compatible = "marvell,mv78460-pinctrl", .data = (void *)V_MV78460, },
{ },
};
diff --git a/drivers/pinctrl/mvebu/dove.c b/drivers/pinctrl/mvebu/dove.c
index a2133a093b..d1848a79d3 100644
--- a/drivers/pinctrl/mvebu/dove.c
+++ b/drivers/pinctrl/mvebu/dove.c
@@ -689,7 +689,7 @@ static struct mvebu_pinctrl_soc_info dove_pinctrl_info = {
static struct of_device_id dove_pinctrl_of_match[] = {
{
.compatible = "marvell,dove-pinctrl",
- .data = (u32)&dove_pinctrl_info
+ .data = &dove_pinctrl_info
},
{ }
};
diff --git a/drivers/pinctrl/mvebu/kirkwood.c b/drivers/pinctrl/mvebu/kirkwood.c
index 05142489c0..e2ac559668 100644
--- a/drivers/pinctrl/mvebu/kirkwood.c
+++ b/drivers/pinctrl/mvebu/kirkwood.c
@@ -405,27 +405,27 @@ static struct mvebu_pinctrl_soc_info mv98dx4122_info = {
static struct of_device_id kirkwood_pinctrl_of_match[] = {
{
.compatible = "marvell,88f6180-pinctrl",
- .data = (u32)&mv88f6180_info
+ .data = &mv88f6180_info
},
{
.compatible = "marvell,88f6190-pinctrl",
- .data = (u32)&mv88f6190_info
+ .data = &mv88f6190_info
},
{
.compatible = "marvell,88f6192-pinctrl",
- .data = (u32)&mv88f6192_info
+ .data = &mv88f6192_info
},
{
.compatible = "marvell,88f6281-pinctrl",
- .data = (u32)&mv88f6281_info
+ .data = &mv88f6281_info
},
{
.compatible = "marvell,88f6282-pinctrl",
- .data = (u32)&mv88f6282_info
+ .data = &mv88f6282_info
},
{
.compatible = "marvell,98dx4122-pinctrl",
- .data = (u32)&mv98dx4122_info
+ .data = &mv98dx4122_info
},
{ }
};
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index b803f891eb..ebbc6f6f14 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -380,10 +380,10 @@ static struct at91_pinctrl_mux_ops at91sam9x5_ops = {
static struct of_device_id at91_pinctrl_dt_ids[] = {
{
.compatible = "atmel,at91rm9200-pinctrl",
- .data = (unsigned long)&at91rm9200_ops,
+ .data = &at91rm9200_ops,
}, {
.compatible = "atmel,at91sam9x5-pinctrl",
- .data = (unsigned long)&at91sam9x5_ops,
+ .data = &at91sam9x5_ops,
}, {
/* sentinel */
}
@@ -402,7 +402,7 @@ static struct at91_pinctrl_mux_ops *at91_pinctrl_get_driver_data(struct device_d
else
ops_data = (struct at91_pinctrl_mux_ops *)match->data;
} else {
- rc = dev_get_drvdata(dev, (unsigned long *)&ops_data);
+ rc = dev_get_drvdata(dev, (const void **)&ops_data);
if (rc)
ops_data = NULL;
}
@@ -606,10 +606,10 @@ static struct gpio_ops at91_gpio_ops = {
static struct of_device_id at91_gpio_dt_ids[] = {
{
.compatible = "atmel,at91rm9200-gpio",
- .data = (unsigned long)&at91rm9200_ops,
+ .data = &at91rm9200_ops,
}, {
.compatible = "atmel,at91sam9x5-gpio",
- .data = (unsigned long)&at91sam9x5_ops,
+ .data = &at91sam9x5_ops,
}, {
/* sentinel */
},
@@ -631,7 +631,7 @@ static int at91_gpio_probe(struct device_d *dev)
at91_gpio = &gpio_chip[alias_idx];
- ret = dev_get_drvdata(dev, (unsigned long *)&at91_gpio->ops);
+ ret = dev_get_drvdata(dev, (const void **)&at91_gpio->ops);
if (ret) {
dev_err(dev, "dev_get_drvdata failed: %d\n", ret);
return ret;
diff --git a/drivers/pinctrl/pinctrl-rockchip.c b/drivers/pinctrl/pinctrl-rockchip.c
index 3533aff942..1130f3d845 100644
--- a/drivers/pinctrl/pinctrl-rockchip.c
+++ b/drivers/pinctrl/pinctrl-rockchip.c
@@ -517,19 +517,19 @@ static struct rockchip_pin_ctrl rk3188_pin_ctrl = {
static struct of_device_id rockchip_pinctrl_dt_match[] = {
{
.compatible = "rockchip,rk2928-pinctrl",
- .data = (long)&rk2928_pin_ctrl,
+ .data = &rk2928_pin_ctrl,
},
{
.compatible = "rockchip,rk3066a-pinctrl",
- .data = (long)&rk3066a_pin_ctrl,
+ .data = &rk3066a_pin_ctrl,
},
{
.compatible = "rockchip,rk3066b-pinctrl",
- .data = (long)&rk3066b_pin_ctrl,
+ .data = &rk3066b_pin_ctrl,
},
{
.compatible = "rockchip,rk3188-pinctrl",
- .data = (long)&rk3188_pin_ctrl,
+ .data = &rk3188_pin_ctrl,
}, {
/* sentinel */
}
diff --git a/drivers/pinctrl/pinctrl-tegra-xusb.c b/drivers/pinctrl/pinctrl-tegra-xusb.c
index 05cdecbabf..d567754fd7 100644
--- a/drivers/pinctrl/pinctrl-tegra-xusb.c
+++ b/drivers/pinctrl/pinctrl-tegra-xusb.c
@@ -387,7 +387,7 @@ static int pinctrl_tegra_xusb_probe(struct device_d *dev)
dev->priv = padctl;
padctl->dev = dev;
- dev_get_drvdata(dev, (unsigned long *)&padctl->soc);
+ dev_get_drvdata(dev, (const void **)&padctl->soc);
padctl->regs = dev_request_mem_region(dev, 0);
if (IS_ERR(padctl->regs)) {
@@ -500,7 +500,7 @@ static const struct tegra_xusb_padctl_soc tegra124_soc = {
static __maybe_unused struct of_device_id pinctrl_tegra_xusb_dt_ids[] = {
{
.compatible = "nvidia,tegra124-xusb-padctl",
- .data = (unsigned long)&tegra124_soc,
+ .data = &tegra124_soc,
}, {
/* sentinel */
}
diff --git a/drivers/pinctrl/pinctrl-tegra30.c b/drivers/pinctrl/pinctrl-tegra30.c
index aac67605cf..145a1a821e 100644
--- a/drivers/pinctrl/pinctrl-tegra30.c
+++ b/drivers/pinctrl/pinctrl-tegra30.c
@@ -891,7 +891,7 @@ static int pinctrl_tegra30_probe(struct device_d *dev)
}
}
- dev_get_drvdata(dev, (unsigned long *)&ctrl->drvdata);
+ dev_get_drvdata(dev, (const void **)&ctrl->drvdata);
ctrl->pinctrl.dev = dev;
ctrl->pinctrl.ops = &pinctrl_tegra30_ops;
@@ -911,12 +911,12 @@ static __maybe_unused struct of_device_id pinctrl_tegra30_dt_ids[] = {
{
#ifdef CONFIG_ARCH_TEGRA_3x_SOC
.compatible = "nvidia,tegra30-pinmux",
- .data = (unsigned long)&tegra30_drvdata,
+ .data = &tegra30_drvdata,
}, {
#endif
#ifdef CONFIG_ARCH_TEGRA_124_SOC
.compatible = "nvidia,tegra124-pinmux",
- .data = (unsigned long)&tegra124_drvdata,
+ .data = &tegra124_drvdata,
}, {
#endif
/* sentinel */