All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/10] dra7: bring up and support IPU load/start
@ 2021-09-23 16:46 Amjad Ouled-Ameur
  2021-09-23 16:46 ` [PATCH 01/10] reset: dra7: Add a reset driver Amjad Ouled-Ameur
                   ` (9 more replies)
  0 siblings, 10 replies; 12+ messages in thread
From: Amjad Ouled-Ameur @ 2021-09-23 16:46 UTC (permalink / raw)
  To: u-boot
  Cc: Amjad Ouled-Ameur, Andrew F. Davis, Andy Shevchenko,
	Asherah Connor, Aswath Govindraju, Bin Meng, Chia-Wei, Wang,
	Etienne Carriere, Faiz Abbas, Green Wan, Igor Opaniuk, Keerthy,
	Lokesh Vutla, Michal Simek, Murali Karicheri, Patrick Delaunay,
	Pratyush Yadav, Roger Quadros, Ryan Chen, Sean Anderson,
	Simon Glass, Suman Anna, Tero Kristo, Tom Rini, Wasim Khan,
	Ye Li, khilman

This patchset enables support for loading and starting IPU firmware,
the following have been implemented:
    - Enable fs_loader compilation at SPL Level, that is necessary in order
      to load IPU firmware from /boot partition.
    - Define necessary related IPU dts nodes.
    - Add necessary drivers and helpers to bring up, load and start IPU
      firmware.

The underlying patches are interdependent, therefore should be applied
in the order they are numbered in this patchset.

Tests:
- Please find SPL, u-boot and kernel console logs in here [0]
- At SPL stage, debug logs have been enabled to make sure that
IPU1 and IPU2 are loaded and started properly. In fact, these two log
messages are only displayed when the firmware has been loaded, and if no
errors appear afterwards, it means that firmware started successfully as
well:
  - Starting IPU1...
  - Starting IPU2...

At U-boot stage, "rproc" command-line tool was used for the testing. In
the logs [0], "rproc list" was run before and after IPU1 and IPU2 are
initialized by "rproc init". The before run gave an empty list, while
the after run listed successfully the two IPUs with their correct
addresses:
  - 0 - Name:'ipu@58820000' type:'internal memory mapped'
  - 1 - Name:'ipu@55020000' type:'internal memory mapped'

"rproc start" and "rproc stop" were also used for both IPU1 and IPU2,
both were successful as no error logs were displayed.

[0]: https://pastebin.com/puCZ5GSm

These U-boot/SPL flags have been purposely enabled during tests to ensure
IPU load/start work properly:
- CONFIG_DM_RESET=y
- CONFIG_RESET_DRA7=y
- CONFIG_SPL_DM_RESET=y
- CONFIG_FS_LOADER=y
- CONFIG_SPL_FS_LOADER=y
- CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
- CONFIG_REMOTEPROC_TI_IPU=y
- CONFIG_SPL_REMOTEPROC=y
- CONFIG_CMD_REMOTEPROC=y



Keerthy (10):
  reset: dra7: Add a reset driver
  arm: mach-omap2: load/start remoteproc IPU1/IPU2
  drivers: misc: Makefile: Enable fs_loader compilation at SPL Level
  linux: bitmap.h: Add find_next_zero_area function
  remoteproc: uclass: Add remoteproc resource handling helpers
  remoteproc: ipu: Add driver to bring up ipu
  dts: dra7-ipu-common-early-boot.dtsi: Add all the ipu early boot
    related nodes
  arm: dts: dra7: Add ipu and related nodes
  arm: dts: dra7*/am57xx-idk-evm-u-boot: Add ipu early boot DT changes
  dts: am57xx*: Add ipu early boot DT changes

 MAINTAINERS                                   |   4 +
 .../dts/am57xx-beagle-x15-revb1-u-boot.dtsi   |   7 +
 .../dts/am57xx-beagle-x15-revc-u-boot.dtsi    |   7 +
 arch/arm/dts/am57xx-beagle-x15-u-boot.dtsi    |   7 +
 arch/arm/dts/am57xx-cl-som-am57x-u-boot.dtsi  |   7 +
 arch/arm/dts/am57xx-idk-common-u-boot.dtsi    |   1 +
 arch/arm/dts/am57xx-sbc-am57x-u-boot.dtsi     |   7 +
 arch/arm/dts/dra7-evm-u-boot.dtsi             |   1 +
 arch/arm/dts/dra7-ipu-common-early-boot.dtsi  | 113 +++
 arch/arm/dts/dra7.dtsi                        |  45 +-
 arch/arm/dts/dra71-evm-u-boot.dtsi            |   1 +
 arch/arm/dts/dra72-evm-revc-u-boot.dtsi       |   1 +
 arch/arm/dts/dra76-evm-u-boot.dtsi            |   1 +
 arch/arm/include/asm/arch-omap5/clock.h       |   3 +
 arch/arm/include/asm/omap_common.h            |  10 +
 arch/arm/mach-k3/common.c                     |  10 +-
 arch/arm/mach-omap2/boot-common.c             |  95 +++
 arch/arm/mach-omap2/clocks-common.c           |  33 +
 arch/arm/mach-omap2/omap5/hw_data.c           |  92 ++-
 arch/arm/mach-omap2/omap5/prcm-regs.c         |   9 +-
 configs/j721e_evm_r5_defconfig                |   1 +
 configs/j721e_hs_evm_r5_defconfig             |   1 +
 drivers/misc/Kconfig                          |   9 +
 drivers/misc/Makefile                         |   2 +-
 drivers/remoteproc/Kconfig                    |  10 +
 drivers/remoteproc/Makefile                   |   1 +
 drivers/remoteproc/ipu_rproc.c                | 759 ++++++++++++++++++
 drivers/remoteproc/rproc-uclass.c             | 562 +++++++++++++
 drivers/reset/Kconfig                         |   6 +
 drivers/reset/Makefile                        |   1 +
 drivers/reset/reset-dra7.c                    |  97 +++
 include/linux/bitmap.h                        |  26 +
 include/remoteproc.h                          | 384 ++++++++-
 33 files changed, 2296 insertions(+), 17 deletions(-)
 create mode 100644 arch/arm/dts/am57xx-beagle-x15-revb1-u-boot.dtsi
 create mode 100644 arch/arm/dts/am57xx-beagle-x15-revc-u-boot.dtsi
 create mode 100644 arch/arm/dts/am57xx-beagle-x15-u-boot.dtsi
 create mode 100644 arch/arm/dts/am57xx-cl-som-am57x-u-boot.dtsi
 create mode 100644 arch/arm/dts/am57xx-sbc-am57x-u-boot.dtsi
 create mode 100644 arch/arm/dts/dra7-ipu-common-early-boot.dtsi
 create mode 100644 drivers/remoteproc/ipu_rproc.c
 create mode 100644 drivers/reset/reset-dra7.c

-- 
2.25.1


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2021-09-24  2:51 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-23 16:46 [PATCH 00/10] dra7: bring up and support IPU load/start Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 01/10] reset: dra7: Add a reset driver Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 02/10] arm: mach-omap2: load/start remoteproc IPU1/IPU2 Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 03/10] drivers: misc: Makefile: Enable fs_loader compilation at SPL Level Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 04/10] linux: bitmap.h: Add find_next_zero_area function Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 05/10] remoteproc: uclass: Add remoteproc resource handling helpers Amjad Ouled-Ameur
2021-09-24  2:49   ` Simon Glass
2021-09-23 16:46 ` [PATCH 06/10] remoteproc: ipu: Add driver to bring up ipu Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 07/10] dts: dra7-ipu-common-early-boot.dtsi: Add all the ipu early boot related nodes Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 08/10] arm: dts: dra7: Add ipu and " Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 09/10] arm: dts: dra7*/am57xx-idk-evm-u-boot: Add ipu early boot DT changes Amjad Ouled-Ameur
2021-09-23 16:46 ` [PATCH 10/10] dts: am57xx*: " Amjad Ouled-Ameur

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.