drivers/pmdomain/core.c | 33 +++++++++++++++++++++++++++ drivers/remoteproc/imx_rproc.c | 41 ++++++++++++++++++++++++++++------ include/linux/pm_domain.h | 6 +++++ 3 files changed, 73 insertions(+), 7 deletions(-)
From: Hiago De Franco <hiago.franco@toradex.com> This patch series depends on Ulf's patches that are currently under review, "pmdomain: Add generic ->sync_state() support to genpd" [1]. Without them, this series is not going to work. For the i.MX8X and i.MX8 family SoCs, currently when the remotecore is started by the bootloader and the M core and A core are in the same partition, the driver is not capable to detect the remote core and report the correct state of it. This patch series implement a new function, dev_pm_genpd_is_on(), which returns the power status of a given power domain (M core power domains IMX_SC_R_M4_0_PID0 and IMX_SC_R_M4_0_MU_1A in this case). If it is already powered on, the driver will attach to it. Finally, the imx_rproc_clk_enable() function was also changed to make it return before dev_clk_get() is called, as it currently generates an SCU fault reset if the remote core is already running and the kernel tries to enable the clock again. These changes are a follow up from a v1 sent to imx_rproc [2] and from a reported regression [3]. [1] https://lore.kernel.org/all/20250523134025.75130-1-ulf.hansson@linaro.org/ [2] https://lore.kernel.org/lkml/20250423155131.101473-1-hiagofranco@gmail.com/ [3] https://lore.kernel.org/lkml/20250404141713.ac2ntcsjsf7epdfa@hiago-nb/ v7: - Added Peng reviewed-by. v6: - https://lore.kernel.org/all/20250626215911.5992-1-hiagofranco@gmail.com/ v5: - https://lore.kernel.org/all/20250617193450.183889-1-hiagofranco@gmail.com/ v4: - https://lore.kernel.org/lkml/20250602131906.25751-1-hiagofranco@gmail.com/ v3: - https://lore.kernel.org/all/20250519171514.61974-1-hiagofranco@gmail.com/ v2: - https://lore.kernel.org/lkml/20250507160056.11876-1-hiagofranco@gmail.com/ v1: - https://lore.kernel.org/lkml/20250505154849.64889-1-hiagofranco@gmail.com/ Hiago De Franco (3): pmdomain: core: introduce dev_pm_genpd_is_on() remoteproc: imx_rproc: skip clock enable when M-core is managed by the SCU remoteproc: imx_rproc: detect and attach to pre-booted remote cores drivers/pmdomain/core.c | 33 +++++++++++++++++++++++++++ drivers/remoteproc/imx_rproc.c | 41 ++++++++++++++++++++++++++++------ include/linux/pm_domain.h | 6 +++++ 3 files changed, 73 insertions(+), 7 deletions(-) -- 2.39.5
Hi Hiago, Many thanks for re-working the changelog and comments in this patchset, things are much clearer now. Thanks, Mathieu On Sun, Jun 29, 2025 at 02:25:09PM -0300, Hiago De Franco wrote: > From: Hiago De Franco <hiago.franco@toradex.com> > > This patch series depends on Ulf's patches that are currently under > review, "pmdomain: Add generic ->sync_state() support to genpd" [1]. > Without them, this series is not going to work. > > For the i.MX8X and i.MX8 family SoCs, currently when the remotecore is > started by the bootloader and the M core and A core are in the same > partition, the driver is not capable to detect the remote core and > report the correct state of it. > > This patch series implement a new function, dev_pm_genpd_is_on(), which > returns the power status of a given power domain (M core power domains > IMX_SC_R_M4_0_PID0 and IMX_SC_R_M4_0_MU_1A in this case). If it is > already powered on, the driver will attach to it. > > Finally, the imx_rproc_clk_enable() function was also changed to make it > return before dev_clk_get() is called, as it currently generates an SCU > fault reset if the remote core is already running and the kernel tries > to enable the clock again. These changes are a follow up from a v1 sent > to imx_rproc [2] and from a reported regression [3]. > > [1] https://lore.kernel.org/all/20250523134025.75130-1-ulf.hansson@linaro.org/ > [2] https://lore.kernel.org/lkml/20250423155131.101473-1-hiagofranco@gmail.com/ > [3] https://lore.kernel.org/lkml/20250404141713.ac2ntcsjsf7epdfa@hiago-nb/ > > v7: > - Added Peng reviewed-by. > v6: > - https://lore.kernel.org/all/20250626215911.5992-1-hiagofranco@gmail.com/ > v5: > - https://lore.kernel.org/all/20250617193450.183889-1-hiagofranco@gmail.com/ > v4: > - https://lore.kernel.org/lkml/20250602131906.25751-1-hiagofranco@gmail.com/ > v3: > - https://lore.kernel.org/all/20250519171514.61974-1-hiagofranco@gmail.com/ > v2: > - https://lore.kernel.org/lkml/20250507160056.11876-1-hiagofranco@gmail.com/ > v1: > - https://lore.kernel.org/lkml/20250505154849.64889-1-hiagofranco@gmail.com/ > > Hiago De Franco (3): > pmdomain: core: introduce dev_pm_genpd_is_on() > remoteproc: imx_rproc: skip clock enable when M-core is managed by the > SCU > remoteproc: imx_rproc: detect and attach to pre-booted remote cores > > drivers/pmdomain/core.c | 33 +++++++++++++++++++++++++++ > drivers/remoteproc/imx_rproc.c | 41 ++++++++++++++++++++++++++++------ > include/linux/pm_domain.h | 6 +++++ > 3 files changed, 73 insertions(+), 7 deletions(-) > > -- > 2.39.5 >
Hi Mathieu, On Thu, 3 Jul 2025 at 18:45, Mathieu Poirier <mathieu.poirier@linaro.org> wrote: > > Hi Hiago, > > Many thanks for re-working the changelog and comments in this patchset, things > are much clearer now. > > Thanks, > Mathieu > > On Sun, Jun 29, 2025 at 02:25:09PM -0300, Hiago De Franco wrote: > > From: Hiago De Franco <hiago.franco@toradex.com> > > > > This patch series depends on Ulf's patches that are currently under > > review, "pmdomain: Add generic ->sync_state() support to genpd" [1]. > > Without them, this series is not going to work. The series above have been queued for v6.17 in my pmdomain tree. Do I have your ack to pick $subject series via my pmdomain tree for v6.17 too or do you think it's better to postpone to v6.18? Kind regards Uffe > > > > For the i.MX8X and i.MX8 family SoCs, currently when the remotecore is > > started by the bootloader and the M core and A core are in the same > > partition, the driver is not capable to detect the remote core and > > report the correct state of it. > > > > This patch series implement a new function, dev_pm_genpd_is_on(), which > > returns the power status of a given power domain (M core power domains > > IMX_SC_R_M4_0_PID0 and IMX_SC_R_M4_0_MU_1A in this case). If it is > > already powered on, the driver will attach to it. > > > > Finally, the imx_rproc_clk_enable() function was also changed to make it > > return before dev_clk_get() is called, as it currently generates an SCU > > fault reset if the remote core is already running and the kernel tries > > to enable the clock again. These changes are a follow up from a v1 sent > > to imx_rproc [2] and from a reported regression [3]. > > > > [1] https://lore.kernel.org/all/20250523134025.75130-1-ulf.hansson@linaro.org/ > > [2] https://lore.kernel.org/lkml/20250423155131.101473-1-hiagofranco@gmail.com/ > > [3] https://lore.kernel.org/lkml/20250404141713.ac2ntcsjsf7epdfa@hiago-nb/ > > > > v7: > > - Added Peng reviewed-by. > > v6: > > - https://lore.kernel.org/all/20250626215911.5992-1-hiagofranco@gmail.com/ > > v5: > > - https://lore.kernel.org/all/20250617193450.183889-1-hiagofranco@gmail.com/ > > v4: > > - https://lore.kernel.org/lkml/20250602131906.25751-1-hiagofranco@gmail.com/ > > v3: > > - https://lore.kernel.org/all/20250519171514.61974-1-hiagofranco@gmail.com/ > > v2: > > - https://lore.kernel.org/lkml/20250507160056.11876-1-hiagofranco@gmail.com/ > > v1: > > - https://lore.kernel.org/lkml/20250505154849.64889-1-hiagofranco@gmail.com/ > > > > Hiago De Franco (3): > > pmdomain: core: introduce dev_pm_genpd_is_on() > > remoteproc: imx_rproc: skip clock enable when M-core is managed by the > > SCU > > remoteproc: imx_rproc: detect and attach to pre-booted remote cores > > > > drivers/pmdomain/core.c | 33 +++++++++++++++++++++++++++ > > drivers/remoteproc/imx_rproc.c | 41 ++++++++++++++++++++++++++++------ > > include/linux/pm_domain.h | 6 +++++ > > 3 files changed, 73 insertions(+), 7 deletions(-) > > > > -- > > 2.39.5 > >
Hi, On Tue, Jul 15, 2025 at 01:49:42PM +0200, Ulf Hansson wrote: > Hi Mathieu, > > On Thu, 3 Jul 2025 at 18:45, Mathieu Poirier <mathieu.poirier@linaro.org> wrote: > > > > Hi Hiago, > > > > Many thanks for re-working the changelog and comments in this patchset, things > > are much clearer now. > > > > Thanks, > > Mathieu > > > > On Sun, Jun 29, 2025 at 02:25:09PM -0300, Hiago De Franco wrote: > > > From: Hiago De Franco <hiago.franco@toradex.com> > > > > > > This patch series depends on Ulf's patches that are currently under > > > review, "pmdomain: Add generic ->sync_state() support to genpd" [1]. > > > Without them, this series is not going to work. > > The series above have been queued for v6.17 in my pmdomain tree. > > Do I have your ack to pick $subject series via my pmdomain tree for > v6.17 too or do you think it's better to postpone to v6.18? > I may have spotted an error condition that is not handled properly in 3/3 of this series. Given that we are already at rc6, it is probably better to way for the next cycle. Thanks for sheperding this work. > Kind regards > Uffe > > > > > > > For the i.MX8X and i.MX8 family SoCs, currently when the remotecore is > > > started by the bootloader and the M core and A core are in the same > > > partition, the driver is not capable to detect the remote core and > > > report the correct state of it. > > > > > > This patch series implement a new function, dev_pm_genpd_is_on(), which > > > returns the power status of a given power domain (M core power domains > > > IMX_SC_R_M4_0_PID0 and IMX_SC_R_M4_0_MU_1A in this case). If it is > > > already powered on, the driver will attach to it. > > > > > > Finally, the imx_rproc_clk_enable() function was also changed to make it > > > return before dev_clk_get() is called, as it currently generates an SCU > > > fault reset if the remote core is already running and the kernel tries > > > to enable the clock again. These changes are a follow up from a v1 sent > > > to imx_rproc [2] and from a reported regression [3]. > > > > > > [1] https://lore.kernel.org/all/20250523134025.75130-1-ulf.hansson@linaro.org/ > > > [2] https://lore.kernel.org/lkml/20250423155131.101473-1-hiagofranco@gmail.com/ > > > [3] https://lore.kernel.org/lkml/20250404141713.ac2ntcsjsf7epdfa@hiago-nb/ > > > > > > v7: > > > - Added Peng reviewed-by. > > > v6: > > > - https://lore.kernel.org/all/20250626215911.5992-1-hiagofranco@gmail.com/ > > > v5: > > > - https://lore.kernel.org/all/20250617193450.183889-1-hiagofranco@gmail.com/ > > > v4: > > > - https://lore.kernel.org/lkml/20250602131906.25751-1-hiagofranco@gmail.com/ > > > v3: > > > - https://lore.kernel.org/all/20250519171514.61974-1-hiagofranco@gmail.com/ > > > v2: > > > - https://lore.kernel.org/lkml/20250507160056.11876-1-hiagofranco@gmail.com/ > > > v1: > > > - https://lore.kernel.org/lkml/20250505154849.64889-1-hiagofranco@gmail.com/ > > > > > > Hiago De Franco (3): > > > pmdomain: core: introduce dev_pm_genpd_is_on() > > > remoteproc: imx_rproc: skip clock enable when M-core is managed by the > > > SCU > > > remoteproc: imx_rproc: detect and attach to pre-booted remote cores > > > > > > drivers/pmdomain/core.c | 33 +++++++++++++++++++++++++++ > > > drivers/remoteproc/imx_rproc.c | 41 ++++++++++++++++++++++++++++------ > > > include/linux/pm_domain.h | 6 +++++ > > > 3 files changed, 73 insertions(+), 7 deletions(-) > > > > > > -- > > > 2.39.5 > > >
© 2016 - 2025 Red Hat, Inc.