Message ID | 20200714123920.23711-6-horia.geanta@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hwrng: add support for i.MX6 rngb | expand |
On Tue, Jul 14, 2020 at 2:39 PM Horia Geantă <horia.geanta@nxp.com> wrote: > diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig > index 8478eb757f3c..98f95a09ce55 100644 > --- a/drivers/char/hw_random/Kconfig > +++ b/drivers/char/hw_random/Kconfig > @@ -255,7 +255,7 @@ config HW_RANDOM_MXC_RNGA > config HW_RANDOM_IMX_RNGC > tristate "Freescale i.MX RNGC Random Number Generator" > depends on HAS_IOMEM && HAVE_CLK > - depends on SOC_IMX25 || COMPILE_TEST > + depends on SOC_IMX25 || SOC_IMX6SL || SOC_IMX6SLL || SOC_IMX6UL || COMPILE_TEST > default HW_RANDOM Are these the only chips that have it? If other i.MX variations have the same block, or might have it in the future, maybe just generialize the dependency to SOC_IMX6 or ARCH_IMX? > diff --git a/drivers/char/hw_random/imx-rngc.c b/drivers/char/hw_random/imx-rngc.c > index 9c47e431ce90..84576d2fbf8c 100644 > --- a/drivers/char/hw_random/imx-rngc.c > +++ b/drivers/char/hw_random/imx-rngc.c > @@ -350,6 +350,9 @@ static SIMPLE_DEV_PM_OPS(imx_rngc_pm_ops, imx_rngc_suspend, imx_rngc_resume); > > static const struct of_device_id imx_rngc_dt_ids[] = { > { .compatible = "fsl,imx25-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6sl-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6sll-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6ull-rngb", .data = NULL, }, > { /* sentinel */ } In the .dts file you describe the devices as compatible with fsl,imx25-rngb, so this change is not really needed, unless you want to add non-NULL .data fields in a follow-up. It is usually a good idea to have the more specialized compatible strings in the DT, but the driver change won't do anything here. Arnd
On Tue, Jul 14, 2020 at 9:39 AM Horia Geantă <horia.geanta@nxp.com> wrote: > static const struct of_device_id imx_rngc_dt_ids[] = { > { .compatible = "fsl,imx25-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6sl-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6sll-rngb", .data = NULL, }, > + { .compatible = "fsl,imx6ull-rngb", .data = NULL, }, It seems that these new entries are not needed, since they fallback to "fsl,imx25-rngb".
On 7/14/2020 3:48 PM, Arnd Bergmann wrote: > On Tue, Jul 14, 2020 at 2:39 PM Horia Geantă <horia.geanta@nxp.com> wrote: >> diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig >> index 8478eb757f3c..98f95a09ce55 100644 >> --- a/drivers/char/hw_random/Kconfig >> +++ b/drivers/char/hw_random/Kconfig >> @@ -255,7 +255,7 @@ config HW_RANDOM_MXC_RNGA >> config HW_RANDOM_IMX_RNGC >> tristate "Freescale i.MX RNGC Random Number Generator" >> depends on HAS_IOMEM && HAVE_CLK >> - depends on SOC_IMX25 || COMPILE_TEST >> + depends on SOC_IMX25 || SOC_IMX6SL || SOC_IMX6SLL || SOC_IMX6UL || COMPILE_TEST >> default HW_RANDOM > > Are these the only chips that have it? If other i.MX variations have > the same block, > or might have it in the future, maybe just generialize the dependency > to SOC_IMX6 > or ARCH_IMX? > Fabio also suggested this during v1, see discussion here: https://lore.kernel.org/linux-crypto/292aafd1-7249-5b76-ccc3-77b153594ef9@nxp.com The SoC list is relatively stable, to the best of my knowledge. >> diff --git a/drivers/char/hw_random/imx-rngc.c b/drivers/char/hw_random/imx-rngc.c >> index 9c47e431ce90..84576d2fbf8c 100644 >> --- a/drivers/char/hw_random/imx-rngc.c >> +++ b/drivers/char/hw_random/imx-rngc.c >> @@ -350,6 +350,9 @@ static SIMPLE_DEV_PM_OPS(imx_rngc_pm_ops, imx_rngc_suspend, imx_rngc_resume); >> >> static const struct of_device_id imx_rngc_dt_ids[] = { >> { .compatible = "fsl,imx25-rngb", .data = NULL, }, >> + { .compatible = "fsl,imx6sl-rngb", .data = NULL, }, >> + { .compatible = "fsl,imx6sll-rngb", .data = NULL, }, >> + { .compatible = "fsl,imx6ull-rngb", .data = NULL, }, >> { /* sentinel */ } > > In the .dts file you describe the devices as compatible with fsl,imx25-rngb, > so this change is not really needed, unless you want to add non-NULL > .data fields in a follow-up. It is usually a good idea to have the more > specialized compatible strings in the DT, but the driver change won't > do anything here. > Indeed, this isn't needed. Will remove it in v4. Thanks, Horia
diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig index 8478eb757f3c..98f95a09ce55 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig @@ -255,7 +255,7 @@ config HW_RANDOM_MXC_RNGA config HW_RANDOM_IMX_RNGC tristate "Freescale i.MX RNGC Random Number Generator" depends on HAS_IOMEM && HAVE_CLK - depends on SOC_IMX25 || COMPILE_TEST + depends on SOC_IMX25 || SOC_IMX6SL || SOC_IMX6SLL || SOC_IMX6UL || COMPILE_TEST default HW_RANDOM help This driver provides kernel-side support for the Random Number diff --git a/drivers/char/hw_random/imx-rngc.c b/drivers/char/hw_random/imx-rngc.c index 9c47e431ce90..84576d2fbf8c 100644 --- a/drivers/char/hw_random/imx-rngc.c +++ b/drivers/char/hw_random/imx-rngc.c @@ -350,6 +350,9 @@ static SIMPLE_DEV_PM_OPS(imx_rngc_pm_ops, imx_rngc_suspend, imx_rngc_resume); static const struct of_device_id imx_rngc_dt_ids[] = { { .compatible = "fsl,imx25-rngb", .data = NULL, }, + { .compatible = "fsl,imx6sl-rngb", .data = NULL, }, + { .compatible = "fsl,imx6sll-rngb", .data = NULL, }, + { .compatible = "fsl,imx6ull-rngb", .data = NULL, }, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, imx_rngc_dt_ids);