2024-02-29 23:56:22

by Brock Zheng

[permalink] [raw]
Subject: [PATCH] memory: omap-gpmc: fixup wrongly hierarchy of the sub-devices

On TI-AM335x??my FPGA under GPMC local-bus can not work on 6.x kernel.

GPMC <--> FPGA <--> sub-devices....

I found that the platform sub-devices is in wrongly organized
hierarchy. The grandchildren are now under the GPMC device
directly, not under it's father(FPGA).

Signed-off-by: Brock.Zheng <[email protected]>
---
drivers/memory/omap-gpmc.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index 80d038884207..1f2568e43086 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -2175,6 +2175,7 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
int ret, cs;
u32 val;
struct gpmc_device *gpmc = platform_get_drvdata(pdev);
+ struct platform_device *child_pdev = NULL;

if (of_property_read_u32(child, "reg", &cs) < 0) {
dev_err(&pdev->dev, "%pOF has no 'reg' property\n",
@@ -2330,11 +2331,12 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
no_timings:

/* create platform device, NULL on error or when disabled */
- if (!of_platform_device_create(child, NULL, &pdev->dev))
+ child_pdev = of_platform_device_create(child, NULL, &pdev->dev);
+ if (!child_pdev)
goto err_child_fail;

/* create children and other common bus children */
- if (of_platform_default_populate(child, NULL, &pdev->dev))
+ if (of_platform_default_populate(child, NULL, &child_pdev->dev))
goto err_child_fail;

return 0;
--
2.44.0




2024-03-01 11:23:29

by Roger Quadros

[permalink] [raw]
Subject: Re: [PATCH] memory: omap-gpmc: fixup wrongly hierarchy of the sub-devices

Hi,

Thanks for the patch but can you please re-send the patch in plain text format?
Please refer to this article for more details.

https://subspace.kernel.org/etiquette.html

On 01/03/2024 01:52, Brock.Zheng wrote:
> On TI-AM335x,my FPGA under GPMC local-bus can not work on 6.x kernel.
>
> GPMC <--> FPGA <--> sub-devices....
>
> I found that the platform sub-devices is in wrongly organized
> hierarchy. The grandchildren are now under the GPMC device
> directly, not under it's father(FPGA).>
> Signed-off-by: Brock.Zheng <[email protected]>
> ---
> drivers/memory/omap-gpmc.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
> index 80d038884207..1f2568e43086 100644
> --- a/drivers/memory/omap-gpmc.c
> +++ b/drivers/memory/omap-gpmc.c
> @@ -2175,6 +2175,7 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
> int ret, cs;
> u32 val;
> struct gpmc_device *gpmc = platform_get_drvdata(pdev);
> + struct platform_device *child_pdev = NULL;
>
> if (of_property_read_u32(child, "reg", &cs) < 0) {
> dev_err(&pdev->dev, "%pOF has no 'reg' property\n",
> @@ -2330,11 +2331,12 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
> no_timings:
>
> /* create platform device, NULL on error or when disabled */
> - if (!of_platform_device_create(child, NULL, &pdev->dev))
> + child_pdev = of_platform_device_create(child, NULL, &pdev->dev);
> + if (!child_pdev)
> goto err_child_fail;
>
> /* create children and other common bus children */
> - if (of_platform_default_populate(child, NULL, &pdev->dev))
> + if (of_platform_default_populate(child, NULL, &child_pdev->dev))
> goto err_child_fail;
>
> return 0;

--
cheers,
-roger

2024-03-01 11:40:51

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] memory: omap-gpmc: fixup wrongly hierarchy of the sub-devices

On 01/03/2024 00:52, Brock.Zheng wrote:
> On TI-AM335x,my FPGA under GPMC local-bus can not work on 6.x kernel.
>
> GPMC <--> FPGA <--> sub-devices....
>
> I found that the platform sub-devices is in wrongly organized
> hierarchy. The grandchildren are now under the GPMC device
> directly, not under it's father(FPGA).
>
> Signed-off-by: Brock.Zheng <[email protected]>

The dot '.' does not look like part of the name. Are you sure you
transliterated/translated your name correctly?

Also, please provide Fixes tag (see submitting patches document).

Your patch confused my mailer. It looks like HTML, but it seems it is
not. Maybe because of Content-Disposition: inline? Why do you have it?

Best regards,
Krzysztof


2024-03-01 12:38:41

by Andreas Kemnade

[permalink] [raw]
Subject: Re: [PATCH] memory: omap-gpmc: fixup wrongly hierarchy of the sub-devices

Hi,

On Fri, 1 Mar 2024 13:22:12 +0200
Roger Quadros <[email protected]> wrote:

> Hi,
>
> Thanks for the patch but can you please re-send the patch in plain text format?
> Please refer to this article for more details.
>
> https://subspace.kernel.org/etiquette.html
>
for my own education, can you specify against what the patch excactly offends?
I see no html there and

Content-Type: text/plain; charset=gb2312

So what do you consider not "plain" in that email?

Regards,
Andreas

2024-03-01 13:41:32

by Roger Quadros

[permalink] [raw]
Subject: Re: [PATCH] memory: omap-gpmc: fixup wrongly hierarchy of the sub-devices



On 01/03/2024 14:38, Andreas Kemnade wrote:
> Hi,
>
> On Fri, 1 Mar 2024 13:22:12 +0200
> Roger Quadros <[email protected]> wrote:
>
>> Hi,
>>
>> Thanks for the patch but can you please re-send the patch in plain text format?
>> Please refer to this article for more details.
>>
>> https://subspace.kernel.org/etiquette.html
>>
> for my own education, can you specify against what the patch excactly offends?
> I see no html there and
>
> Content-Type: text/plain; charset=gb2312
>
> So what do you consider not "plain" in that email?
>

I think I observed the same issue as Krzysztof. My mail client shows it like HTML
even though it is not.

--
cheers,
-roger

2024-03-01 23:57:51

by Brock Zheng

[permalink] [raw]
Subject: Re: [PATCH] memory/omap-gpmc: fixup wrongly hierarchy of the sub-devices

Hi, all

Sorry for the wrong mail Content-Type. My Neomutt is not configured correctly.
Updated info here:

On TI-AM335x,my FPGA under GPMC local-bus can not work on 6.x kernel.

GPMC <--> FPGA <--> sub-devices....

I found that the platform sub-devices are in wrongly organized
hierarchy. The grandchildren are now under the GPMC device directly,
not under it's father(FPGA).

Signed-off-by: Brock.Zheng <[email protected]>
---
drivers/memory/omap-gpmc.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index 80d038884207..1f2568e43086 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -2175,6 +2175,7 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
int ret, cs;
u32 val;
struct gpmc_device *gpmc = platform_get_drvdata(pdev);
+ struct platform_device *child_pdev = NULL;

if (of_property_read_u32(child, "reg", &cs) < 0) {
dev_err(&pdev->dev, "%pOF has no 'reg' property\n",
@@ -2330,11 +2331,12 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
no_timings:

/* create platform device, NULL on error or when disabled */
- if (!of_platform_device_create(child, NULL, &pdev->dev))
+ child_pdev = of_platform_device_create(child, NULL, &pdev->dev);
+ if (!child_pdev)
goto err_child_fail;

/* create children and other common bus children */
- if (of_platform_default_populate(child, NULL, &pdev->dev))
+ if (of_platform_default_populate(child, NULL, &child_pdev->dev))
goto err_child_fail;

return 0;
--
2.44.0



2024-03-02 16:25:15

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] memory/omap-gpmc: fixup wrongly hierarchy of the sub-devices

On 02/03/2024 00:57, Brock Zheng wrote:
> Hi, all
>
> Sorry for the wrong mail Content-Type. My Neomutt is not configured correctly.
> Updated info here:
>
> On TI-AM335x,my FPGA under GPMC local-bus can not work on 6.x kernel.
>
> GPMC <--> FPGA <--> sub-devices....
>

I don't know what to do with this. Apply this patch yourself and check
the result - is this what you want in commit msg?

Best regards,
Krzysztof