mbox series

[V3,00/10] interconnect: support i.MX8MP

Message ID 20220703091132.1412063-1-peng.fan@oss.nxp.com
Headers show
Series interconnect: support i.MX8MP | expand

Message

Peng Fan (OSS) July 3, 2022, 9:11 a.m. UTC
From: Peng Fan <peng.fan@nxp.com>

V3:
 - Drop patch "interconnect: imx: set of_node for interconnect provider"
 - Driver License Update
 - Correct devm_of_iomap return value check and minor update per ICC
 maintainer and Lucas's comments
 - Include devfreq patch
 - Include device tree patch to include NoC node

V2:
 Per dt maintainer: drop syscon, move binding file fsl,imx8mp.h out from driver
 Per ICC maintainer, add kernel doc and add static inline for an API in header file
 Rename max_node_id to num_nodes
 Describe more on the registers.

This patchset is to support i.MX8MP NoC settings, i.MX8MP NoC initial
value after power up is invalid, need set a valid value after related
power domain up.

This patchset also includes two patch[1,2] during my development to enable
the ICC feature for i.MX8MP.

I not include ddrc DVFS in this patchset, ths patchset is only to
support NoC value mode/priority/ext_control being set to a valid value
that suggested by i.MX Chip Design Team. The value is same as NXP
downstream one inside Arm Trusted Firmware:
https://source.codeaurora.org/external/imx/imx-atf/tree/plat/imx/imx8m/imx8mp/gpc.c?h=lf_v2.4#n97

A repo created here: https://github.com/MrVan/linux/tree/imx8mp-interconnect

Peng Fan (10):
  dt-bindings: interconnect: imx8m: Add bindings for imx8mp noc
  dt-bindings: interconnect: add fsl,imx8mp.h
  interconnect: add device managed bulk API
  interconnect: imx: fix max_node_id
  interconnect: imx: set src node
  interconnect: imx: introduce imx_icc_provider
  interconnect: imx: configure NoC mode/prioriry/ext_control
  interconnect: imx: Add platform driver for imx8mp
  PM / devfreq: imx: Register i.MX8MP interconnect device
  arm64: dts: imx8mp: add NoC node

 .../bindings/interconnect/fsl,imx8m-noc.yaml  |   6 +-
 arch/arm64/boot/dts/freescale/imx8mp.dtsi     |  22 ++
 drivers/devfreq/imx-bus.c                     |   1 +
 drivers/interconnect/bulk.c                   |  42 +++
 drivers/interconnect/imx/Kconfig              |   4 +
 drivers/interconnect/imx/Makefile             |   2 +
 drivers/interconnect/imx/imx.c                |  84 ++++--
 drivers/interconnect/imx/imx.h                |  49 +++-
 drivers/interconnect/imx/imx8mm.c             |   2 +-
 drivers/interconnect/imx/imx8mn.c             |   2 +-
 drivers/interconnect/imx/imx8mp.c             | 259 ++++++++++++++++++
 drivers/interconnect/imx/imx8mq.c             |   2 +-
 include/dt-bindings/interconnect/fsl,imx8mp.h |  59 ++++
 include/linux/interconnect.h                  |   7 +
 14 files changed, 518 insertions(+), 23 deletions(-)
 create mode 100644 drivers/interconnect/imx/imx8mp.c
 create mode 100644 include/dt-bindings/interconnect/fsl,imx8mp.h

Comments

Chanwoo Choi July 3, 2022, 1:55 p.m. UTC | #1
On 22. 7. 3. 18:11, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> i.MX8MP features same NoC/NIC as i.MX8MM/N/Q, and use two compatible
> strings.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> Acked-by: Rob Herring <robh@kernel.org>
> ---
>  .../devicetree/bindings/interconnect/fsl,imx8m-noc.yaml     | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/interconnect/fsl,imx8m-noc.yaml b/Documentation/devicetree/bindings/interconnect/fsl,imx8m-noc.yaml
> index b8204ed22dd5..09c8948b5e25 100644
> --- a/Documentation/devicetree/bindings/interconnect/fsl,imx8m-noc.yaml
> +++ b/Documentation/devicetree/bindings/interconnect/fsl,imx8m-noc.yaml
> @@ -26,14 +26,16 @@ properties:
>      oneOf:
>        - items:
>            - enum:
> -              - fsl,imx8mn-nic
>                - fsl,imx8mm-nic
> +              - fsl,imx8mn-nic
> +              - fsl,imx8mp-nic
>                - fsl,imx8mq-nic
>            - const: fsl,imx8m-nic
>        - items:
>            - enum:
> -              - fsl,imx8mn-noc
>                - fsl,imx8mm-noc
> +              - fsl,imx8mn-noc
> +              - fsl,imx8mp-noc
>                - fsl,imx8mq-noc
>            - const: fsl,imx8m-noc
>        - const: fsl,imx8m-nic

Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>