
On 11/05/2021 18:21, Dave Gerlach wrote:
This is v2 of the series to update the existing k3-j721e driver to a common driver to support both j721e and the new am642 SoC. It renames drivers/ram/k3-j721e to drivers/ram/k3-ddrss and then introduces a refactored common driver with the existing j721e support moved to files named with 32bit and am64 support introduced in files named with 16bit.
Changes since v1:
- Drop unnecessary error macro re-definitions and use normal errno header
- Drop other unnecessary headers that wrap standard kernel headers
- Fixed a few camelCase functions that slipped through
- Fixed clock initialization sequence based on comment from Vignesh
v1: https://lists.denx.de/pipermail/u-boot/2021-May/448716.html
Regards, Dave
Hi Dave,
Thanks for the changes, did a diff between v1 and v2 of these patches and they look good. There is one thing that should maybe fixed sometime in future still, but I am not holding my review based on that. The function prototypes that return error codes should be changed to be int instead of u32, and change all the error return values to be negatives. Right now the driver is using positive values so some piece of code might get confused by that.
Just keep it in mind for future improvements.
For the whole series (did a quick test run with the latest v4 HSM rearch series also):
Reviewed-by: Tero Kristo kristo@kernel.org Tested-by: Tero Kristo kristo@kernel.org
Dave Gerlach (14): dt-bindings: memory-controller: Add K3 AM64 DDRSS compatible ram: k3-j721e: lpddr4_address_slice_0_macros: Fix indentation issues ram: k3-j721e: lpddr4_data_slice_0_macros: Fix indentation issues ram: k3-j721e: lpddr4_data_slice_1_macros: Fix indentation issues ram: k3-j721e: lpddr4_data_slice_2_macros: Fix indentation issues ram: k3-j721e: lpddr4_data_slice_3_macros: Fix indentation issues ram: k3-j721e: lpddr4_ddr_controller_macros: Fix indentation issues ram: k3-j721e: lpddr4_phy_core_macros: Fix indentation issues ram: k3-j721e: lpddr4_pi_macros: Fix indentation issues ram: k3-j721e: lpddr4_ctl_regs: Fix checkpatch issue for types ram: k3-j721e: Rename to k3-ddrss ram: k3-ddrss: Introduce top-level CONFIG_K3_DDRSS ram: k3-ddrss: Introduce common driver with J7 SoC support ram: k3-ddrss: Introduce support for AM642 SoCs
Lokesh Vutla (1): ram: k3-ddrss: Enable vtt regulator if present
board/ti/j721e/Kconfig | 4 +- .../memory-controller/k3-j721e-ddrss.txt | 3 +- drivers/ram/Kconfig | 24 +- drivers/ram/Makefile | 2 +- drivers/ram/k3-ddrss/16bit/lpddr4_16bit_if.h | 108 + .../ram/k3-ddrss/16bit/lpddr4_16bit_obj_if.h | 14 + .../k3-ddrss/16bit/lpddr4_16bit_structs_if.h | 15 + .../16bit/lpddr4_address_slice_0_macros.h | 624 ++ .../16bit/lpddr4_address_slice_1_macros.h | 624 ++ .../16bit/lpddr4_address_slice_2_macros.h | 624 ++ drivers/ram/k3-ddrss/16bit/lpddr4_ctl_regs.h | 1306 +++ .../k3-ddrss/16bit/lpddr4_ctl_regs_rw_masks.h | 23 + .../16bit/lpddr4_data_slice_0_macros.h | 2036 +++++ .../16bit/lpddr4_data_slice_1_macros.h | 2036 +++++ .../16bit/lpddr4_ddr_controller_macros.h | 6436 ++++++++++++++ .../k3-ddrss/16bit/lpddr4_phy_core_macros.h | 1838 ++++ drivers/ram/k3-ddrss/16bit/lpddr4_pi_macros.h | 5784 ++++++++++++ drivers/ram/k3-ddrss/32bit/lpddr4_32bit_if.h | 91 + .../ram/k3-ddrss/32bit/lpddr4_32bit_obj_if.h | 14 + .../k3-ddrss/32bit/lpddr4_32bit_structs_if.h | 15 + .../32bit}/lpddr4_address_slice_0_macros.h | 343 +- drivers/ram/k3-ddrss/32bit/lpddr4_ctl_regs.h | 1545 ++++ .../k3-ddrss/32bit/lpddr4_ctl_regs_rw_masks.h | 23 + .../32bit}/lpddr4_data_slice_0_macros.h | 1443 ++- .../32bit}/lpddr4_data_slice_1_macros.h | 1363 ++- .../32bit}/lpddr4_data_slice_2_macros.h | 1363 ++- .../32bit}/lpddr4_data_slice_3_macros.h | 1363 ++- .../32bit/lpddr4_ddr_controller_macros.h | 7792 ++++++++++++++++ .../32bit}/lpddr4_phy_core_macros.h | 1397 ++- drivers/ram/k3-ddrss/32bit/lpddr4_pi_macros.h | 5396 ++++++++++++ drivers/ram/k3-ddrss/Makefile | 17 + drivers/ram/k3-ddrss/cps_drv_lpddr4.h | 102 + .../k3-j721e-ddrss.c => k3-ddrss/k3-ddrss.c} | 289 +- drivers/ram/k3-ddrss/lpddr4.c | 1079 +++ drivers/ram/k3-ddrss/lpddr4.h | 73 + drivers/ram/k3-ddrss/lpddr4_16bit.c | 396 + drivers/ram/k3-ddrss/lpddr4_16bit.h | 33 + .../k3-ddrss/lpddr4_16bit_ctl_regs_rw_masks.c | 1309 +++ drivers/ram/k3-ddrss/lpddr4_16bit_sanity.h | 257 + drivers/ram/k3-ddrss/lpddr4_32bit.c | 302 + drivers/ram/k3-ddrss/lpddr4_32bit.h | 30 + .../k3-ddrss/lpddr4_32bit_ctl_regs_rw_masks.c | 1548 ++++ drivers/ram/k3-ddrss/lpddr4_32bit_sanity.h | 223 + drivers/ram/k3-ddrss/lpddr4_if.h | 144 + drivers/ram/k3-ddrss/lpddr4_obj_if.c | 51 + drivers/ram/k3-ddrss/lpddr4_obj_if.h | 86 + .../{k3-j721e => k3-ddrss}/lpddr4_private.h | 0 drivers/ram/k3-ddrss/lpddr4_sanity.h | 445 + drivers/ram/k3-ddrss/lpddr4_structs_if.h | 51 + drivers/ram/k3-j721e/Makefile | 8 - drivers/ram/k3-j721e/cps_drv_lpddr4.h | 119 - drivers/ram/k3-j721e/lpddr4.c | 2105 ----- drivers/ram/k3-j721e/lpddr4_ctl_regs.h | 1546 ---- .../k3-j721e/lpddr4_ddr_controller_macros.h | 7793 ----------------- drivers/ram/k3-j721e/lpddr4_if.h | 578 -- drivers/ram/k3-j721e/lpddr4_obj_if.c | 55 - drivers/ram/k3-j721e/lpddr4_obj_if.h | 383 - drivers/ram/k3-j721e/lpddr4_pi_macros.h | 5397 ------------ drivers/ram/k3-j721e/lpddr4_sanity.h | 1165 --- drivers/ram/k3-j721e/lpddr4_structs_if.h | 121 - 60 files changed, 46347 insertions(+), 23007 deletions(-) create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_16bit_if.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_16bit_obj_if.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_16bit_structs_if.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_address_slice_0_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_address_slice_1_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_address_slice_2_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_ctl_regs.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_ctl_regs_rw_masks.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_data_slice_0_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_data_slice_1_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_ddr_controller_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_phy_core_macros.h create mode 100644 drivers/ram/k3-ddrss/16bit/lpddr4_pi_macros.h create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_32bit_if.h create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_32bit_obj_if.h create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_32bit_structs_if.h rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_address_slice_0_macros.h (76%) create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_ctl_regs.h create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_ctl_regs_rw_masks.h rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_data_slice_0_macros.h (64%) rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_data_slice_1_macros.h (66%) rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_data_slice_2_macros.h (66%) rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_data_slice_3_macros.h (66%) create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_ddr_controller_macros.h rename drivers/ram/{k3-j721e => k3-ddrss/32bit}/lpddr4_phy_core_macros.h (60%) create mode 100644 drivers/ram/k3-ddrss/32bit/lpddr4_pi_macros.h create mode 100644 drivers/ram/k3-ddrss/Makefile create mode 100644 drivers/ram/k3-ddrss/cps_drv_lpddr4.h rename drivers/ram/{k3-j721e/k3-j721e-ddrss.c => k3-ddrss/k3-ddrss.c} (51%) create mode 100644 drivers/ram/k3-ddrss/lpddr4.c create mode 100644 drivers/ram/k3-ddrss/lpddr4.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_16bit.c create mode 100644 drivers/ram/k3-ddrss/lpddr4_16bit.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_16bit_ctl_regs_rw_masks.c create mode 100644 drivers/ram/k3-ddrss/lpddr4_16bit_sanity.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_32bit.c create mode 100644 drivers/ram/k3-ddrss/lpddr4_32bit.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_32bit_ctl_regs_rw_masks.c create mode 100644 drivers/ram/k3-ddrss/lpddr4_32bit_sanity.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_if.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_obj_if.c create mode 100644 drivers/ram/k3-ddrss/lpddr4_obj_if.h rename drivers/ram/{k3-j721e => k3-ddrss}/lpddr4_private.h (100%) create mode 100644 drivers/ram/k3-ddrss/lpddr4_sanity.h create mode 100644 drivers/ram/k3-ddrss/lpddr4_structs_if.h delete mode 100644 drivers/ram/k3-j721e/Makefile delete mode 100644 drivers/ram/k3-j721e/cps_drv_lpddr4.h delete mode 100644 drivers/ram/k3-j721e/lpddr4.c delete mode 100644 drivers/ram/k3-j721e/lpddr4_ctl_regs.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_ddr_controller_macros.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_if.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_obj_if.c delete mode 100644 drivers/ram/k3-j721e/lpddr4_obj_if.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_pi_macros.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_sanity.h delete mode 100644 drivers/ram/k3-j721e/lpddr4_structs_if.h