mbox series

[v3,00/11] Add support for MT8195 SCP 2nd core

Message ID 20220927025606.26673-1-tinghan.shen@mediatek.com (mailing list archive)
Headers show
Series Add support for MT8195 SCP 2nd core | expand

Message

Tinghan Shen Sept. 27, 2022, 2:55 a.m. UTC
The mediatek remoteproc driver currently only allows bringing up a 
single core SCP, e.g. MT8183. It also only bringing up the 1st 
core in SoCs with a dual-core SCP, e.g. MT8195. This series support 
to bring-up the 2nd core of the dual-core SCP.

v2 -> v3:
1. change the representation of dual-core SCP in dts file and update SCP yaml
2. rewrite SCP driver to reflect the change of dts node
3. add SCP core 1 node to mt8195.dtsi
4. remove redundant call of rproc_boot for SCP
5. refine IPI error message

v1 -> v2:
1. update dt-binding property description
2. remove kconfig for scp dual driver
3. merge mtk_scp_dual.c and mtk_scp_subdev.c to mtk_scp.c

Tinghan Shen (11):
  dt-bindings: remoteproc: mediatek: Give the subnode a persistent name
  dt-bindings: remoteproc: mediatek: Support MT8195 dual-core SCP
  arm64: dts: mt8195: Add SCP core 1 node
  remoteproc: mediatek: Remove redundant rproc_boot
  remoteproc: mediatek: Add SCP core 1 register definitions
  remoteproc: mediatek: Add MT8195 SCP core 1 operations
  remoteproc: mediatek: Probe MT8195 SCP core 1
  remoteproc: mediatek: Control SCP core 1 boot by rproc subdevice
  remoteproc: mediatek: Setup MT8195 SCP core 1 SRAM offset
  remoteproc: mediatek: Handle MT8195 SCP core 1 watchdog timeout
  remoteproc: mediatek: Refine ipi handler error message

 .../bindings/remoteproc/mtk,scp.yaml          | 132 ++++++++--
 .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi |   2 +-
 arch/arm64/boot/dts/mediatek/mt8195.dtsi      |  14 +-
 .../mediatek/vcodec/mtk_vcodec_fw_scp.c       |   2 +-
 drivers/remoteproc/mtk_common.h               |  35 +++
 drivers/remoteproc/mtk_scp.c                  | 241 +++++++++++++++++-
 include/linux/remoteproc/mtk_scp.h            |   1 +
 7 files changed, 397 insertions(+), 30 deletions(-)

Comments

Mathieu Poirier Nov. 1, 2022, 8:40 p.m. UTC | #1
Good day,

A lot of comments related to the handling of SCP 0 and 1 have already been made
on this patchset, along with my own advice from the previous patchset on how to
move forward.  As such I will wait for a new revision.

Thanks,
Mathieu

On Tue, Sep 27, 2022 at 10:55:55AM +0800, Tinghan Shen wrote:
> The mediatek remoteproc driver currently only allows bringing up a 
> single core SCP, e.g. MT8183. It also only bringing up the 1st 
> core in SoCs with a dual-core SCP, e.g. MT8195. This series support 
> to bring-up the 2nd core of the dual-core SCP.
> 
> v2 -> v3:
> 1. change the representation of dual-core SCP in dts file and update SCP yaml
> 2. rewrite SCP driver to reflect the change of dts node
> 3. add SCP core 1 node to mt8195.dtsi
> 4. remove redundant call of rproc_boot for SCP
> 5. refine IPI error message
> 
> v1 -> v2:
> 1. update dt-binding property description
> 2. remove kconfig for scp dual driver
> 3. merge mtk_scp_dual.c and mtk_scp_subdev.c to mtk_scp.c
> 
> Tinghan Shen (11):
>   dt-bindings: remoteproc: mediatek: Give the subnode a persistent name
>   dt-bindings: remoteproc: mediatek: Support MT8195 dual-core SCP
>   arm64: dts: mt8195: Add SCP core 1 node
>   remoteproc: mediatek: Remove redundant rproc_boot
>   remoteproc: mediatek: Add SCP core 1 register definitions
>   remoteproc: mediatek: Add MT8195 SCP core 1 operations
>   remoteproc: mediatek: Probe MT8195 SCP core 1
>   remoteproc: mediatek: Control SCP core 1 boot by rproc subdevice
>   remoteproc: mediatek: Setup MT8195 SCP core 1 SRAM offset
>   remoteproc: mediatek: Handle MT8195 SCP core 1 watchdog timeout
>   remoteproc: mediatek: Refine ipi handler error message
> 
>  .../bindings/remoteproc/mtk,scp.yaml          | 132 ++++++++--
>  .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi |   2 +-
>  arch/arm64/boot/dts/mediatek/mt8195.dtsi      |  14 +-
>  .../mediatek/vcodec/mtk_vcodec_fw_scp.c       |   2 +-
>  drivers/remoteproc/mtk_common.h               |  35 +++
>  drivers/remoteproc/mtk_scp.c                  | 241 +++++++++++++++++-
>  include/linux/remoteproc/mtk_scp.h            |   1 +
>  7 files changed, 397 insertions(+), 30 deletions(-)
> 
> -- 
> 2.18.0
>
Tinghan Shen Jan. 17, 2023, 7:43 a.m. UTC | #2
On Tue, 2022-11-01 at 14:40 -0600, Mathieu Poirier wrote:
> Good day,
> 
> A lot of comments related to the handling of SCP 0 and 1 have already been made
> on this patchset, along with my own advice from the previous patchset on how to
> move forward.  As such I will wait for a new revision.
> 
> Thanks,
> Mathieu

Sorry for late response.
I'll update the series based on all of your comments.
Thank you!

> 
> On Tue, Sep 27, 2022 at 10:55:55AM +0800, Tinghan Shen wrote:
> > The mediatek remoteproc driver currently only allows bringing up a 
> > single core SCP, e.g. MT8183. It also only bringing up the 1st 
> > core in SoCs with a dual-core SCP, e.g. MT8195. This series support 
> > to bring-up the 2nd core of the dual-core SCP.
> > 
> > v2 -> v3:
> > 1. change the representation of dual-core SCP in dts file and update SCP yaml
> > 2. rewrite SCP driver to reflect the change of dts node
> > 3. add SCP core 1 node to mt8195.dtsi
> > 4. remove redundant call of rproc_boot for SCP
> > 5. refine IPI error message
> > 
> > v1 -> v2:
> > 1. update dt-binding property description
> > 2. remove kconfig for scp dual driver
> > 3. merge mtk_scp_dual.c and mtk_scp_subdev.c to mtk_scp.c
> > 
> > Tinghan Shen (11):
> >   dt-bindings: remoteproc: mediatek: Give the subnode a persistent name
> >   dt-bindings: remoteproc: mediatek: Support MT8195 dual-core SCP
> >   arm64: dts: mt8195: Add SCP core 1 node
> >   remoteproc: mediatek: Remove redundant rproc_boot
> >   remoteproc: mediatek: Add SCP core 1 register definitions
> >   remoteproc: mediatek: Add MT8195 SCP core 1 operations
> >   remoteproc: mediatek: Probe MT8195 SCP core 1
> >   remoteproc: mediatek: Control SCP core 1 boot by rproc subdevice
> >   remoteproc: mediatek: Setup MT8195 SCP core 1 SRAM offset
> >   remoteproc: mediatek: Handle MT8195 SCP core 1 watchdog timeout
> >   remoteproc: mediatek: Refine ipi handler error message
> > 
> >  .../bindings/remoteproc/mtk,scp.yaml          | 132 ++++++++--
> >  .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi |   2 +-
> >  arch/arm64/boot/dts/mediatek/mt8195.dtsi      |  14 +-
> >  .../mediatek/vcodec/mtk_vcodec_fw_scp.c       |   2 +-
> >  drivers/remoteproc/mtk_common.h               |  35 +++
> >  drivers/remoteproc/mtk_scp.c                  | 241 +++++++++++++++++-
> >  include/linux/remoteproc/mtk_scp.h            |   1 +
> >  7 files changed, 397 insertions(+), 30 deletions(-)
> > 
> > -- 
> > 2.18.0
> >