On Fri, May 17, 2024 at 4:57 PM Geert Uytterhoeven <geert+renesas@xxxxxxxxx> wrote: > Enable CAN-FD channels 0 and 1 on the Gray Hawk Single development > board: > - Channel 0 uses an NXP TJR1443AT CAN transceiver, which must be > enabled through a GPIO, > - Channel 1 uses a Microchip MCP2558FD-H/SN CAN transceiver, which > does not need explicit description. > > Inspired by a patch for Gray Hawk in the BSP by Duy Nguyen. > > Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > --- > Changes compared to the BSP: > - Add can_clk, > - Add missing can_transceiver0, > - Keep channels 2 and 3 disabled, > - Preserve sort order. > --- a/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts > +++ b/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts > @@ -75,6 +82,24 @@ phy0: ethernet-phy@0 { > }; > }; > > +&can_clk { > + clock-frequency = <40000000>; > +}; > + > +&canfd { > + pinctrl-0 = <&canfd0_pins>, <&canfd1_pins>, <&can_clk_pins>; This lacks pinctrl-names = "default"; (the BSP did have that, but it was badly indented, and accidentally removed while disabling channels 2 and 3). Unfortunately adding the missing line doesn't help: ( sleep 1; cansend can1 '5A1#11.2233.44556677.88') & candump can0 doesn't do anything. ( sleep 1; cansend can0 '5A1#11.2233.44556677.88') & candump can1 triggers: rcar_canfd e6660000.can can0: bus-off > + status = "okay"; > + > + channel0 { > + status = "okay"; > + phys = <&can_transceiver0>; > + }; > + > + channel1 { > + status = "okay"; > + }; > +}; Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds