您好:
TDA4VM,我的用的是main_can0,我的设备树配置如下:
在k3-j721e-main.dtsi
main_mcan0: can@2701000 { compatible = "bosch,m_can"; reg = <0x00 0x02701000 0x00 0x200>, <0x00 0x02708000 0x00 0x8000>; reg-names = "m_can", "message_ram"; power-domains = <&k3_pds 156 TI_SCI_PD_EXCLUSIVE>; clocks = <&k3_clks 156 0>, <&k3_clks 156 1>; clock-names = "hclk", "cclk"; interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; interrupt-names = "int0", "int1"; bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>; };
在k3-j721e-sk.dts里
main_mcan0_pins_default: main-mcan0-pins-default { pinctrl-single,pins = < J721E_IOPAD(0x208, PIN_INPUT, 0) /* (W5) MCAN0_RX */ J721E_IOPAD(0x20c, PIN_OUTPUT, 0) /* (W6) MCAN0_TX */ >; }; main_mcan0_gpio_pins_default: main-mcan0-gpio-pins-default { pinctrl-single,pins = < J721E_IOPAD(0x108, PIN_INPUT, 7) /* (AD27) PRG0_PRU1_GPO2.GPIO0_65 */ >; }; transceiver2: can-phy1 { compatible = "ti,tcan1042"; #phy-cells = <0>; max-bitrate = <5000000>; pinctrl-names = "default"; pinctrl-0 = <&main_mcan0_gpio_pins_default>; standby-gpios = <&main_gpio0 65 GPIO_ACTIVE_HIGH>; };
但是系统启动之后,通过命令 dmesg | grep can
[ 32.432940] m_can_platform 40528000.can: m_can device registered (irq=19, version=32)
发现只有MCU_CAN0有注册成功,其他main_can都没有注册成功
麻烦帮忙看一下是否其他配置有问题导致main_can没有注册成功?