2020-09-16 08:41:36

by Bean Huo

[permalink] [raw]
Subject: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()

From: Bean Huo <[email protected]>

Use devm_platform_ioremap_resource_byname() to simplify the code.

Signed-off-by: Bean Huo <[email protected]>
---

v1-v2: change the patch commit subject

---
drivers/scsi/ufs/ufs-exynos.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/scsi/ufs/ufs-exynos.c b/drivers/scsi/ufs/ufs-exynos.c
index 8f1b6f61a776..1eecbe550536 100644
--- a/drivers/scsi/ufs/ufs-exynos.c
+++ b/drivers/scsi/ufs/ufs-exynos.c
@@ -940,7 +940,6 @@ static int exynos_ufs_init(struct ufs_hba *hba)
struct device *dev = hba->dev;
struct platform_device *pdev = to_platform_device(dev);
struct exynos_ufs *ufs;
- struct resource *res;
int ret;

ufs = devm_kzalloc(dev, sizeof(*ufs), GFP_KERNEL);
@@ -948,24 +947,21 @@ static int exynos_ufs_init(struct ufs_hba *hba)
return -ENOMEM;

/* exynos-specific hci */
- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vs_hci");
- ufs->reg_hci = devm_ioremap_resource(dev, res);
+ ufs->reg_hci = devm_platform_ioremap_resource_byname(pdev, "vs_hci");
if (IS_ERR(ufs->reg_hci)) {
dev_err(dev, "cannot ioremap for hci vendor register\n");
return PTR_ERR(ufs->reg_hci);
}

/* unipro */
- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "unipro");
- ufs->reg_unipro = devm_ioremap_resource(dev, res);
+ ufs->reg_unipro = devm_platform_ioremap_resource_byname(pdev, "unipro");
if (IS_ERR(ufs->reg_unipro)) {
dev_err(dev, "cannot ioremap for unipro register\n");
return PTR_ERR(ufs->reg_unipro);
}

/* ufs protector */
- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ufsp");
- ufs->reg_ufsp = devm_ioremap_resource(dev, res);
+ ufs->reg_ufsp = devm_platform_ioremap_resource_byname(pdev, "ufsp");
if (IS_ERR(ufs->reg_ufsp)) {
dev_err(dev, "cannot ioremap for ufs protector register\n");
return PTR_ERR(ufs->reg_ufsp);
--
2.17.1


2020-09-29 18:16:50

by Alim Akhtar

[permalink] [raw]
Subject: RE: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()

Hi Bean,

> -----Original Message-----
> From: Bean Huo <[email protected]>
> Sent: 16 September 2020 14:10
> To: [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]
> Cc: [email protected]; [email protected]
> Subject: [PATCH v2] scsi: ufs-exynos: use
> devm_platform_ioremap_resource_byname()
>
> From: Bean Huo <[email protected]>
>
> Use devm_platform_ioremap_resource_byname() to simplify the code.
>
> Signed-off-by: Bean Huo <[email protected]>
> ---
Thanks!
Acked-by: Alim Akhtar <[email protected]>

>
> v1-v2: change the patch commit subject
>

2020-09-30 02:57:45

by Martin K. Petersen

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()


Bean,

> Use devm_platform_ioremap_resource_byname() to simplify the code.

Applied to 5.10/scsi-staging, thanks!

--
Martin K. Petersen Oracle Linux Engineering

2020-10-03 03:31:02

by Martin K. Petersen

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()

On Wed, 16 Sep 2020 10:40:17 +0200, Bean Huo wrote:

> Use devm_platform_ioremap_resource_byname() to simplify the code.

Applied to 5.10/scsi-queue, thanks!

[1/1] scsi: ufs: ufs-exynos: Use devm_platform_ioremap_resource_byname()
https://git.kernel.org/mkp/scsi/c/2dd39fad92a1

--
Martin K. Petersen Oracle Linux Engineering

2020-11-12 14:08:29

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()

Hi Bean,

On Wed, Sep 16, 2020 at 10:43 AM Bean Huo <[email protected]> wrote:
> From: Bean Huo <[email protected]>
>
> Use devm_platform_ioremap_resource_byname() to simplify the code.
>
> Signed-off-by: Bean Huo <[email protected]>

Thanks for your patch, which is now commit 2dd39fad92a1f25f ("scsi: ufs:
ufs-exynos: Use devm_platform_ioremap_resource_byname()") in v5.10-rc1.

> --- a/drivers/scsi/ufs/ufs-exynos.c
> +++ b/drivers/scsi/ufs/ufs-exynos.c
> @@ -940,7 +940,6 @@ static int exynos_ufs_init(struct ufs_hba *hba)
> struct device *dev = hba->dev;
> struct platform_device *pdev = to_platform_device(dev);
> struct exynos_ufs *ufs;
> - struct resource *res;
> int ret;
>
> ufs = devm_kzalloc(dev, sizeof(*ufs), GFP_KERNEL);
> @@ -948,24 +947,21 @@ static int exynos_ufs_init(struct ufs_hba *hba)
> return -ENOMEM;
>
> /* exynos-specific hci */
> - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vs_hci");
> - ufs->reg_hci = devm_ioremap_resource(dev, res);
> + ufs->reg_hci = devm_platform_ioremap_resource_byname(pdev, "vs_hci");

Are you sure this is equivalent?
Before, devm_ioremap_resource() was called on "dev" (hba->dev),
after it is called on "&pdev->dev" .

> if (IS_ERR(ufs->reg_hci)) {
> dev_err(dev, "cannot ioremap for hci vendor register\n");
> return PTR_ERR(ufs->reg_hci);
> }
>
> /* unipro */
> - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "unipro");
> - ufs->reg_unipro = devm_ioremap_resource(dev, res);
> + ufs->reg_unipro = devm_platform_ioremap_resource_byname(pdev, "unipro");
> if (IS_ERR(ufs->reg_unipro)) {
> dev_err(dev, "cannot ioremap for unipro register\n");
> return PTR_ERR(ufs->reg_unipro);
> }
>
> /* ufs protector */
> - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ufsp");
> - ufs->reg_ufsp = devm_ioremap_resource(dev, res);
> + ufs->reg_ufsp = devm_platform_ioremap_resource_byname(pdev, "ufsp");
> if (IS_ERR(ufs->reg_ufsp)) {
> dev_err(dev, "cannot ioremap for ufs protector register\n");
> return PTR_ERR(ufs->reg_ufsp);

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2020-11-12 14:13:22

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs-exynos: use devm_platform_ioremap_resource_byname()

Hi Bean,

On Thu, Nov 12, 2020 at 3:06 PM Geert Uytterhoeven <[email protected]> wrote:
> On Wed, Sep 16, 2020 at 10:43 AM Bean Huo <[email protected]> wrote:
> > From: Bean Huo <[email protected]>
> >
> > Use devm_platform_ioremap_resource_byname() to simplify the code.
> >
> > Signed-off-by: Bean Huo <[email protected]>
>
> Thanks for your patch, which is now commit 2dd39fad92a1f25f ("scsi: ufs:
> ufs-exynos: Use devm_platform_ioremap_resource_byname()") in v5.10-rc1.
>
> > --- a/drivers/scsi/ufs/ufs-exynos.c
> > +++ b/drivers/scsi/ufs/ufs-exynos.c
> > @@ -940,7 +940,6 @@ static int exynos_ufs_init(struct ufs_hba *hba)
> > struct device *dev = hba->dev;
> > struct platform_device *pdev = to_platform_device(dev);
> > struct exynos_ufs *ufs;
> > - struct resource *res;
> > int ret;
> >
> > ufs = devm_kzalloc(dev, sizeof(*ufs), GFP_KERNEL);
> > @@ -948,24 +947,21 @@ static int exynos_ufs_init(struct ufs_hba *hba)
> > return -ENOMEM;
> >
> > /* exynos-specific hci */
> > - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "vs_hci");
> > - ufs->reg_hci = devm_ioremap_resource(dev, res);
> > + ufs->reg_hci = devm_platform_ioremap_resource_byname(pdev, "vs_hci");
>
> Are you sure this is equivalent?
> Before, devm_ioremap_resource() was called on "dev" (hba->dev),
> after it is called on "&pdev->dev" .

Yes it is, due to:

struct platform_device *pdev = to_platform_device(dev);

Sorry for the noise.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds