Part Number: AM3352
Hi Champs.
#1.
Regarding the DCAN0 / DCAN1, I found those 2 TRM places are not the same.
TRM page 4808:
The base address for DCAN0 RAM is 0x481C_D000 and DCAN1 RAM is 0x481D_1000.
TRM page 183:
DCAN0 0x481C_C000 0x481C_DFFF 8KB DCAN0 Registers 0x481C_E000 0x481C_FFFF 8KB Reserved
DCAN1 0x481D_0000 0x481D_1FFF 8KB DCAN1 Registers 0x481D_2000 0x481D_3FFF 8KB Reserved
Why the DCAN0 /DCAN1 has 2 different Base Address?
#2.
Do we have any document to guide us how to set the DCAN 0 / DCAN 1 on the DTSI?
This is the TI official DTSI for DCAN0/1 setting.
| dcan0: d_can@481cc000 { | |
| compatible = "bosch,d_can"; | |
| ti,hwmods = "d_can0"; | |
| reg = <0x481cc000 0x2000 | |
| 0x44e10644 0x4>; | |
| interrupts = <52>; | |
| status = "disabled"; | |
| }; | |
| dcan1: d_can@481d0000 { | |
| compatible = "bosch,d_can"; | |
| ti,hwmods = "d_can1"; | |
| reg = <0x481d0000 0x2000 | |
| 0x44e10644 0x4>; | |
| interrupts = <55>; | |
| status = "disabled"; | |
| }; |
And we found the customer can make the DCAN0/DCAN1 work by this setting, why?
Does the DCAN Phy Vendor needs to provide the DCAN DTSI?
How to set the reg / interrupts / status correctly?
BR Rio
dcan0: can@481cc000 {
compatible = "ti,am3352-d_can";
ti,hwmods = "d_can0";
reg = <0x481cc000 0x2000>;
clocks = <&dcan0_fck>;
clock-names = "fck";
syscon-raminit = <&scm_conf 0x644 0>;
interrupts = <52>;
status = "disabled";
};
dcan1: can@481d0000 {
compatible = "ti,am3352-d_can";
ti,hwmods = "d_can1";
reg = <0x481d0000 0x2000>;
clocks = <&dcan1_fck>;
clock-names = "fck";
syscon-raminit = <&scm_conf 0x644 1>;
interrupts = <55>;
status = "disabled";
};