mirror of https://gitee.com/openkylin/linux.git
53 lines
1.7 KiB
Plaintext
53 lines
1.7 KiB
Plaintext
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 = "am335x-pm-firmware.elf";
|
|
};
|
|
};
|
|
|
|
...
|
|
};
|