mbox series

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

Message ID 20220703091132.1412063-1-peng.fan@oss.nxp.com (mailing list archive)
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