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/ v6: - Added "reviewed by" from Ulf and Bjorn. - Fixed and improved commit descriptions of patches 2 and 3. - Improved the comment inside imx_rproc.c file. 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
On Thu, 26 Jun 2025 at 15:59, Hiago De Franco <hiagofranco@gmail.com> 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. > I thought we agreed to repost when the feature referred to above and the work in drivers/pmdomain/core.c will be merge. I'm not sure what to do with this patchset. > 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/ > > v6: > - Added "reviewed by" from Ulf and Bjorn. > - Fixed and improved commit descriptions of patches 2 and 3. > - Improved the comment inside imx_rproc.c file. > 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 >
On Fri, Jun 27, 2025 at 08:31:20AM -0600, Mathieu Poirier wrote: > On Thu, 26 Jun 2025 at 15:59, Hiago De Franco <hiagofranco@gmail.com> 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. > > > > I thought we agreed to repost when the feature referred to above and > the work in drivers/pmdomain/core.c will be merge. I'm not sure what > to do with this patchset. Sorry Mathieu, my goal was to update the whole patch series with your reviews from v5 so you could take a look and then I would resend everything again once the others have been merged. If you prefer I can wait for the other patches to be merged and then send the next v7 corrected. Best regards, Hiago. > > > 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/ > > > > v6: > > - Added "reviewed by" from Ulf and Bjorn. > > - Fixed and improved commit descriptions of patches 2 and 3. > > - Improved the comment inside imx_rproc.c file. > > 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 > >
On Fri, 27 Jun 2025 at 08:50, Hiago De Franco <hiagofranco@gmail.com> wrote: > > On Fri, Jun 27, 2025 at 08:31:20AM -0600, Mathieu Poirier wrote: > > On Thu, 26 Jun 2025 at 15:59, Hiago De Franco <hiagofranco@gmail.com> 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. > > > > > > > I thought we agreed to repost when the feature referred to above and > > the work in drivers/pmdomain/core.c will be merge. I'm not sure what > > to do with this patchset. > > Sorry Mathieu, my goal was to update the whole patch series with your > reviews from v5 so you could take a look and then I would resend > everything again once the others have been merged. > Ok, I'll take a look next week. > If you prefer I can wait for the other patches to be merged and then > send the next v7 corrected. > > Best regards, > Hiago. > > > > > > 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/ > > > > > > v6: > > > - Added "reviewed by" from Ulf and Bjorn. > > > - Fixed and improved commit descriptions of patches 2 and 3. > > > - Improved the comment inside imx_rproc.c file. > > > 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 > > >
On Fri, Jun 27, 2025 at 09:40:27AM -0600, Mathieu Poirier wrote: > On Fri, 27 Jun 2025 at 08:50, Hiago De Franco <hiagofranco@gmail.com> wrote: > > > > On Fri, Jun 27, 2025 at 08:31:20AM -0600, Mathieu Poirier wrote: > > > On Thu, 26 Jun 2025 at 15:59, Hiago De Franco <hiagofranco@gmail.com> 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. > > > > > > > > > > I thought we agreed to repost when the feature referred to above and > > > the work in drivers/pmdomain/core.c will be merge. I'm not sure what > > > to do with this patchset. > > > > Sorry Mathieu, my goal was to update the whole patch series with your > > reviews from v5 so you could take a look and then I would resend > > everything again once the others have been merged. > > > > Ok, I'll take a look next week. Thanks, I will be sending v7 with the missing reviewed-by then. Best regards, Hiago. > > > If you prefer I can wait for the other patches to be merged and then > > send the next v7 corrected. > > > > Best regards, > > Hiago. > > > > > > > > > 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/ > > > > > > > > v6: > > > > - Added "reviewed by" from Ulf and Bjorn. > > > > - Fixed and improved commit descriptions of patches 2 and 3. > > > > - Improved the comment inside imx_rproc.c file. > > > > 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 > > > >
On Thu, Jun 26, 2025 at 06:59:08PM -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/ Sorry I missed the reviewed by from Peng, I will be fixing this in the next revision today. Best regards, Hiago. > > v6: > - Added "reviewed by" from Ulf and Bjorn. > - Fixed and improved commit descriptions of patches 2 and 3. > - Improved the comment inside imx_rproc.c file. > 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.