Message ID | 20220522155046.260146-11-tmaimon77@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | Introduce Nuvoton Arbel NPCM8XX BMC SoC | expand |
On 22/05/2022 17:50, Tomer Maimon wrote: > Using syscon device tree property instead of > device data to handle the NPCM GCR registers. https://elixir.bootlin.com/linux/v5.18-rc4/source/Documentation/process/submitting-patches.rst#L586 > > Signed-off-by: Tomer Maimon <tmaimon77@gmail.com> > --- > drivers/reset/reset-npcm.c | 11 +++-------- > 1 file changed, 3 insertions(+), 8 deletions(-) > > diff --git a/drivers/reset/reset-npcm.c b/drivers/reset/reset-npcm.c > index 2ea4d3136e15..0c963b21eddc 100644 > --- a/drivers/reset/reset-npcm.c > +++ b/drivers/reset/reset-npcm.c > @@ -138,8 +138,7 @@ static int npcm_reset_xlate(struct reset_controller_dev *rcdev, > } > > static const struct of_device_id npcm_rc_match[] = { > - { .compatible = "nuvoton,npcm750-reset", > - .data = (void *)"nuvoton,npcm750-gcr" }, > + { .compatible = "nuvoton,npcm750-reset"}, > { } > }; > > @@ -155,14 +154,10 @@ static int npcm_usb_reset(struct platform_device *pdev, struct npcm_rc_data *rc) > u32 ipsrst1_bits = 0; > u32 ipsrst2_bits = NPCM_IPSRST2_USB_HOST; > u32 ipsrst3_bits = 0; > - const char *gcr_dt; > > - gcr_dt = (const char *) > - of_match_device(dev->driver->of_match_table, dev)->data; > - > - gcr_regmap = syscon_regmap_lookup_by_compatible(gcr_dt); > + gcr_regmap = syscon_regmap_lookup_by_phandle(dev->of_node, "syscon"); I think this just broke all existing boards... Best regards, Krzysztof
Hi Krzysztof, Thanks for your comments. the patch will modify according to your comments and will be sent in the next kernel revision 5.19.rc1 On Mon, 23 May 2022 at 11:54, Krzysztof Kozlowski < krzysztof.kozlowski@linaro.org> wrote: > On 22/05/2022 17:50, Tomer Maimon wrote: > > Using syscon device tree property instead of > > device data to handle the NPCM GCR registers. > > > https://elixir.bootlin.com/linux/v5.18-rc4/source/Documentation/process/submitting-patches.rst#L586 > > > > > Signed-off-by: Tomer Maimon <tmaimon77@gmail.com> > > --- > > drivers/reset/reset-npcm.c | 11 +++-------- > > 1 file changed, 3 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/reset/reset-npcm.c b/drivers/reset/reset-npcm.c > > index 2ea4d3136e15..0c963b21eddc 100644 > > --- a/drivers/reset/reset-npcm.c > > +++ b/drivers/reset/reset-npcm.c > > @@ -138,8 +138,7 @@ static int npcm_reset_xlate(struct > reset_controller_dev *rcdev, > > } > > > > static const struct of_device_id npcm_rc_match[] = { > > - { .compatible = "nuvoton,npcm750-reset", > > - .data = (void *)"nuvoton,npcm750-gcr" }, > > + { .compatible = "nuvoton,npcm750-reset"}, > > { } > > }; > > > > @@ -155,14 +154,10 @@ static int npcm_usb_reset(struct platform_device > *pdev, struct npcm_rc_data *rc) > > u32 ipsrst1_bits = 0; > > u32 ipsrst2_bits = NPCM_IPSRST2_USB_HOST; > > u32 ipsrst3_bits = 0; > > - const char *gcr_dt; > > > > - gcr_dt = (const char *) > > - of_match_device(dev->driver->of_match_table, dev)->data; > > - > > - gcr_regmap = syscon_regmap_lookup_by_compatible(gcr_dt); > > + gcr_regmap = syscon_regmap_lookup_by_phandle(dev->of_node, > "syscon"); > > I think this just broke all existing boards... > > Best regards, > Krzysztof > Best regards, Tomer
diff --git a/drivers/reset/reset-npcm.c b/drivers/reset/reset-npcm.c index 2ea4d3136e15..0c963b21eddc 100644 --- a/drivers/reset/reset-npcm.c +++ b/drivers/reset/reset-npcm.c @@ -138,8 +138,7 @@ static int npcm_reset_xlate(struct reset_controller_dev *rcdev, } static const struct of_device_id npcm_rc_match[] = { - { .compatible = "nuvoton,npcm750-reset", - .data = (void *)"nuvoton,npcm750-gcr" }, + { .compatible = "nuvoton,npcm750-reset"}, { } }; @@ -155,14 +154,10 @@ static int npcm_usb_reset(struct platform_device *pdev, struct npcm_rc_data *rc) u32 ipsrst1_bits = 0; u32 ipsrst2_bits = NPCM_IPSRST2_USB_HOST; u32 ipsrst3_bits = 0; - const char *gcr_dt; - gcr_dt = (const char *) - of_match_device(dev->driver->of_match_table, dev)->data; - - gcr_regmap = syscon_regmap_lookup_by_compatible(gcr_dt); + gcr_regmap = syscon_regmap_lookup_by_phandle(dev->of_node, "syscon"); if (IS_ERR(gcr_regmap)) { - dev_err(&pdev->dev, "Failed to find %s\n", gcr_dt); + dev_err(&pdev->dev, "Failed to find gcr syscon"); return PTR_ERR(gcr_regmap); }
Using syscon device tree property instead of device data to handle the NPCM GCR registers. Signed-off-by: Tomer Maimon <tmaimon77@gmail.com> --- drivers/reset/reset-npcm.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)