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

2020-11-12 Thread Geert Uytterhoeven
Hi Bean,

On Thu, Nov 12, 2020 at 3:06 PM Geert Uytterhoeven  wrote:
> On Wed, Sep 16, 2020 at 10:43 AM Bean Huo  wrote:
> > From: Bean Huo 
> >
> > Use devm_platform_ioremap_resource_byname() to simplify the code.
> >
> > Signed-off-by: Bean Huo 
>
> 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 ">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 -- ge...@linux-m68k.org

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


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

2020-11-12 Thread Geert Uytterhoeven
Hi Bean,

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

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 ">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 -- ge...@linux-m68k.org

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


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

2020-10-02 Thread Martin K. Petersen
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


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

2020-09-29 Thread Martin K. Petersen


Bean,

> Use devm_platform_ioremap_resource_byname() to simplify the code.

Applied to 5.10/scsi-staging, thanks!

-- 
Martin K. Petersen  Oracle Linux Engineering


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

2020-09-29 Thread Alim Akhtar
Hi Bean,

> -Original Message-
> From: Bean Huo 
> Sent: 16 September 2020 14:10
> To: alim.akh...@samsung.com; avri.alt...@wdc.com;
> asuto...@codeaurora.org; j...@linux.ibm.com;
> martin.peter...@oracle.com; stanley@mediatek.com;
> bean...@micron.com; bvanass...@acm.org; tomas.wink...@intel.com;
> c...@codeaurora.org
> Cc: linux-s...@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: [PATCH v2] scsi: ufs-exynos: use
> devm_platform_ioremap_resource_byname()
> 
> From: Bean Huo 
> 
> Use devm_platform_ioremap_resource_byname() to simplify the code.
> 
> Signed-off-by: Bean Huo 
> ---
Thanks! 
Acked-by: Alim Akhtar 

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



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

2020-09-16 Thread Bean Huo
From: Bean Huo 

Use devm_platform_ioremap_resource_byname() to simplify the code.

Signed-off-by: Bean Huo 
---

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