Other Parts Discussed in Thread: TCAN4550,
Hi,
I am trying to interface TCAN4550 with a Linux board. On boot up, the kernel logs show that the clock source is not defined. And the probe of tcan4x5x driver fails.
This is my log.
tcan4x5x spi1.0: TCAN: tcan4x5x probe TCAN: tcan4x5x probe [DEBUG]-----------tcan4x5x_can_probe,spi device: tcan4x5x, irq:49 tcan4x5x spi1.0: TCAN: Allocating memory tcan4x5x spi1.0: no clock found tcan4x5x spi1.0: TCAN: no CAN clock source defined tcan4x5x spi1.0: TCAN: SPI CLK freq is 1000000 tcan4x5x spi1.0: TCAN: Parsing config tcan4x5x spi1.0: TCAN: configuring SPI tcan4x5x spi1.0: TCAN: tcan4x5x init TCAN: tcan4x5x init TCAN: tcan4x5x clear interrupts start TCAN: tcan4x5x status flags clear start TCAN: tcan4x5x status flags clear end, ret = 0 TCAN: tcan4x5x enable mcan interrupts function start TCAN: tcan4x5x enable mcan interrupts function end, ret = 0 TCAN: tcan4x5x interrupt flags clear start TCAN: tcan4x5x interrupt flags clear end, ret = 0 TCAN: tcan4x5x error status clear start TCAN: tcan4x5x error status clear end, ret = 0 TCAN: tcan4x5x clear interrupts end, ret = 0 TCAN: tcan4x5x write tcan reg start TCAN: tcan4x5x write tcan reg end, ret = 0 TCAN: tcan4x5x regmap update bits start TCAN: tcan4x5x regmap update bits end, ret = 0 random: fast init done tcan4x5x spi1.0: TCAN: tcan4x5x init returned 0 tcan4x5x spi1.0: TCAN: tcan4x5x m_can class register TCAN: m_can_class_register - calling m_can_dev_setup Core release register value is 1999568896 Endian register value is 1999568896 Endian register value is 1999568896 tcan4x5x spi1.0: Unsupported version number: 0 TCAN: m_can_class_register - m_can_dev_setup returned -22 tcan4x5x spi1.0: TCAN: tcan4x5x m_can class register returned -22 tcan4x5x spi1.0: TCAN: Probe failed, err=-22 tcan4x5x spi1.0: TCAN: Probe failed, err=-22 tcan4x5x: probe of spi1.0 failed with error -22
Device tree:
&spi1{ pinctrl-names = "default"; pinctrl-0 = <&spi1_pins>; rtk,spi-for-kernel = <1>; rtk,spi-slave-mode = <0>; // SPI master rtk,spi-cs-gpios = <&gpioa 2 0>; status = "okay"; tcan4x5x: tcan4x5x@0 { compatible = "ti,tcan4x5x"; reg = <0>; #address-cells = <1>; #size-cells = <1>; spi-max-frequency = <10000000>; bosch,mram-cfg = <0x0 0 0 16 0 0 1 1>; interrupt-parent = <&gpioa>; interrupts = <8 IRQ_TYPE_EDGE_BOTH>; device-state-gpios = <&gpioa 1 0>; device-wake-gpios = <&gpioa 6 0>; reset-gpios = <&gpioa 0 0>; }; };
Could someone please help me out here?