Message ID | 20191214175447.25482-10-tiny.windzz@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [01/10] soc: sunxi: convert to devm_platform_ioremap_resource | expand |
On Sat, 14 Dec 2019 17:54:47 +0000 Yangtao Li <tiny.windzz@gmail.com> wrote: > Use devm_platform_ioremap_resource() to simplify code. > > Signed-off-by: Yangtao Li <tiny.windzz@gmail.com> > --- > drivers/soc/qcom/llcc-qcom.c | 7 +------ > drivers/soc/qcom/qcom-geni-se.c | 4 +--- > drivers/soc/qcom/qcom_aoss.c | 4 +--- > drivers/soc/qcom/qcom_gsbi.c | 5 +---- > drivers/soc/qcom/spm.c | 4 +--- > 5 files changed, 5 insertions(+), 19 deletions(-) > > diff --git a/drivers/soc/qcom/llcc-qcom.c b/drivers/soc/qcom/llcc-qcom.c > index 429b5a60a1ba..99e19df76889 100644 > --- a/drivers/soc/qcom/llcc-qcom.c > +++ b/drivers/soc/qcom/llcc-qcom.c > @@ -387,7 +387,6 @@ static int qcom_llcc_remove(struct platform_device *pdev) > static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, > const char *name) > { > - struct resource *res; > void __iomem *base; > struct regmap_config llcc_regmap_config = { > .reg_bits = 32, > @@ -396,11 +395,7 @@ static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, > .fast_io = true, > }; > > - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, name); > - if (!res) > - return ERR_PTR(-ENODEV); > - > - base = devm_ioremap_resource(&pdev->dev, res); > + base = devm_platform_ioremap_resource(pdev, 0); What guarantees do you have that entry 0 matches name? I find these changes pointless: they don't add much to the readability or maintainability of the code, and instead introduce creative bugs. M.
On Sun, Dec 15, 2019 at 6:48 PM Marc Zyngier <maz@kernel.org> wrote: > > On Sat, 14 Dec 2019 17:54:47 +0000 > Yangtao Li <tiny.windzz@gmail.com> wrote: > > > Use devm_platform_ioremap_resource() to simplify code. > > > > Signed-off-by: Yangtao Li <tiny.windzz@gmail.com> > > --- > > drivers/soc/qcom/llcc-qcom.c | 7 +------ > > drivers/soc/qcom/qcom-geni-se.c | 4 +--- > > drivers/soc/qcom/qcom_aoss.c | 4 +--- > > drivers/soc/qcom/qcom_gsbi.c | 5 +---- > > drivers/soc/qcom/spm.c | 4 +--- > > 5 files changed, 5 insertions(+), 19 deletions(-) > > > > diff --git a/drivers/soc/qcom/llcc-qcom.c b/drivers/soc/qcom/llcc-qcom.c > > index 429b5a60a1ba..99e19df76889 100644 > > --- a/drivers/soc/qcom/llcc-qcom.c > > +++ b/drivers/soc/qcom/llcc-qcom.c > > @@ -387,7 +387,6 @@ static int qcom_llcc_remove(struct platform_device *pdev) > > static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, > > const char *name) > > { > > - struct resource *res; > > void __iomem *base; > > struct regmap_config llcc_regmap_config = { > > .reg_bits = 32, > > @@ -396,11 +395,7 @@ static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, > > .fast_io = true, > > }; > > > > - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, name); > > - if (!res) > > - return ERR_PTR(-ENODEV); > > - > > - base = devm_ioremap_resource(&pdev->dev, res); > > + base = devm_platform_ioremap_resource(pdev, 0); > > What guarantees do you have that entry 0 matches name? Yeah, this place is wrong. I intruduce another helper. https://lore.kernel.org/patchwork/patch/1165186/ Thx, Yangtao > > I find these changes pointless: they don't add much to the readability > or maintainability of the code, and instead introduce creative bugs. > > M. > -- > Jazz is not dead. It just smells funny...
diff --git a/drivers/soc/qcom/llcc-qcom.c b/drivers/soc/qcom/llcc-qcom.c index 429b5a60a1ba..99e19df76889 100644 --- a/drivers/soc/qcom/llcc-qcom.c +++ b/drivers/soc/qcom/llcc-qcom.c @@ -387,7 +387,6 @@ static int qcom_llcc_remove(struct platform_device *pdev) static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, const char *name) { - struct resource *res; void __iomem *base; struct regmap_config llcc_regmap_config = { .reg_bits = 32, @@ -396,11 +395,7 @@ static struct regmap *qcom_llcc_init_mmio(struct platform_device *pdev, .fast_io = true, }; - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, name); - if (!res) - return ERR_PTR(-ENODEV); - - base = devm_ioremap_resource(&pdev->dev, res); + base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(base)) return ERR_CAST(base); diff --git a/drivers/soc/qcom/qcom-geni-se.c b/drivers/soc/qcom/qcom-geni-se.c index 7d622ea1274e..9c2c429b4b3f 100644 --- a/drivers/soc/qcom/qcom-geni-se.c +++ b/drivers/soc/qcom/qcom-geni-se.c @@ -723,7 +723,6 @@ EXPORT_SYMBOL(geni_se_rx_dma_unprep); static int geni_se_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; - struct resource *res; struct geni_wrapper *wrapper; int ret; @@ -732,8 +731,7 @@ static int geni_se_probe(struct platform_device *pdev) return -ENOMEM; wrapper->dev = dev; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - wrapper->base = devm_ioremap_resource(dev, res); + wrapper->base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(wrapper->base)) return PTR_ERR(wrapper->base); diff --git a/drivers/soc/qcom/qcom_aoss.c b/drivers/soc/qcom/qcom_aoss.c index 006ac40c526a..fcfba9f1aaa1 100644 --- a/drivers/soc/qcom/qcom_aoss.c +++ b/drivers/soc/qcom/qcom_aoss.c @@ -513,7 +513,6 @@ static void qmp_cooling_devices_remove(struct qmp *qmp) static int qmp_probe(struct platform_device *pdev) { - struct resource *res; struct qmp *qmp; int irq; int ret; @@ -526,8 +525,7 @@ static int qmp_probe(struct platform_device *pdev) init_waitqueue_head(&qmp->event); mutex_init(&qmp->tx_lock); - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - qmp->msgram = devm_ioremap_resource(&pdev->dev, res); + qmp->msgram = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(qmp->msgram)) return PTR_ERR(qmp->msgram); diff --git a/drivers/soc/qcom/qcom_gsbi.c b/drivers/soc/qcom/qcom_gsbi.c index 304afc223a58..202ff31cf54f 100644 --- a/drivers/soc/qcom/qcom_gsbi.c +++ b/drivers/soc/qcom/qcom_gsbi.c @@ -127,7 +127,6 @@ static int gsbi_probe(struct platform_device *pdev) struct device_node *node = pdev->dev.of_node; struct device_node *tcsr_node; const struct of_device_id *match; - struct resource *res; void __iomem *base; struct gsbi_info *gsbi; int i, ret; @@ -135,12 +134,10 @@ static int gsbi_probe(struct platform_device *pdev) const struct crci_config *config = NULL; gsbi = devm_kzalloc(&pdev->dev, sizeof(*gsbi), GFP_KERNEL); - if (!gsbi) return -ENOMEM; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - base = devm_ioremap_resource(&pdev->dev, res); + base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(base)) return PTR_ERR(base); diff --git a/drivers/soc/qcom/spm.c b/drivers/soc/qcom/spm.c index 8e10e02c6aa5..b6131ab07879 100644 --- a/drivers/soc/qcom/spm.c +++ b/drivers/soc/qcom/spm.c @@ -320,7 +320,6 @@ static const struct of_device_id spm_match_table[] = { static int spm_dev_probe(struct platform_device *pdev) { struct spm_driver_data *drv; - struct resource *res; const struct of_device_id *match_id; void __iomem *addr; int cpu; @@ -329,8 +328,7 @@ static int spm_dev_probe(struct platform_device *pdev) if (!drv) return -EINVAL; - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - drv->reg_base = devm_ioremap_resource(&pdev->dev, res); + drv->reg_base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(drv->reg_base)) return PTR_ERR(drv->reg_base);
Use devm_platform_ioremap_resource() to simplify code. Signed-off-by: Yangtao Li <tiny.windzz@gmail.com> --- drivers/soc/qcom/llcc-qcom.c | 7 +------ drivers/soc/qcom/qcom-geni-se.c | 4 +--- drivers/soc/qcom/qcom_aoss.c | 4 +--- drivers/soc/qcom/qcom_gsbi.c | 5 +---- drivers/soc/qcom/spm.c | 4 +--- 5 files changed, 5 insertions(+), 19 deletions(-)