1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- TI Wakeup M3 Remoteproc Driver
- ==============================
- The TI AM33xx and AM43xx family of devices use a small Cortex M3 co-processor
- (commonly referred to as Wakeup M3 or CM3) to help with various low power tasks
- that cannot be controlled from the MPU. This CM3 processor requires a firmware
- binary to accomplish this. The wkup_m3 remoteproc driver handles the loading of
- the firmware and booting of the CM3.
- Wkup M3 Device Node:
- ====================
- A wkup_m3 device node is used to represent the Wakeup M3 processor instance
- within the SoC. It is added as a child node of the parent interconnect bus
- (l4_wkup) through which it is accessible to the MPU.
- Required properties:
- --------------------
- - compatible: Should be one of,
- "ti,am3352-wkup-m3" for AM33xx SoCs
- "ti,am4372-wkup-m3" for AM43xx SoCs
- - reg: Should contain the address ranges for the two internal
- memory regions, UMEM and DMEM. The parent node should
- provide an appropriate ranges property for properly
- translating these into bus addresses.
- - reg-names: Contains the corresponding names for the two memory
- regions. These should be named "umem" & "dmem".
- - ti,hwmods: Name of the hwmod associated with the wkupm3 device.
- - ti,pm-firmware: Name of firmware file to be used for loading and
- booting the wkup_m3 remote processor.
- Example:
- --------
- /* AM33xx */
- ocp {
- l4_wkup: l4_wkup@44c00000 {
- compatible = "am335-l4-wkup", "simple-bus";
- ranges = <0 0x44c00000 0x400000>;
- #address-cells = <1>;
- #size-cells = <1>;
- wkup_m3: wkup_m3@100000 {
- compatible = "ti,am3352-wkup-m3";
- reg = <0x100000 0x4000>,
- <0x180000 0x2000>;
- reg-names = "umem", "dmem";
- ti,hwmods = "wkup_m3";
- ti,pm-firmware = "/*(DEBLOBBED)*/";
- };
- };
- ...
- };
|