1e43250c0SDario Binacchi# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2e43250c0SDario Binacchi%YAML 1.2 3e43250c0SDario Binacchi--- 4e43250c0SDario Binacchi$id: http://devicetree.org/schemas/net/can/st,stm32-bxcan.yaml# 5e43250c0SDario Binacchi$schema: http://devicetree.org/meta-schemas/core.yaml# 6e43250c0SDario Binacchi 7e43250c0SDario Binacchititle: STMicroelectronics bxCAN controller 8e43250c0SDario Binacchi 9e43250c0SDario Binacchidescription: STMicroelectronics BxCAN controller for CAN bus 10e43250c0SDario Binacchi 11e43250c0SDario Binacchimaintainers: 12e43250c0SDario Binacchi - Dario Binacchi <dario.binacchi@amarulasolutions.com> 13e43250c0SDario Binacchi 14e43250c0SDario BinacchiallOf: 15e43250c0SDario Binacchi - $ref: can-controller.yaml# 16e43250c0SDario Binacchi 17e43250c0SDario Binacchiproperties: 18e43250c0SDario Binacchi compatible: 19e43250c0SDario Binacchi enum: 20e43250c0SDario Binacchi - st,stm32f4-bxcan 21e43250c0SDario Binacchi 22e43250c0SDario Binacchi st,can-primary: 23e43250c0SDario Binacchi description: 24*caf78f0fSDario Binacchi Primary mode of the bxCAN peripheral is only relevant if the chip has 25*caf78f0fSDario Binacchi two CAN peripherals in dual CAN configuration. In that case they share 26*caf78f0fSDario Binacchi some of the required logic. 27*caf78f0fSDario Binacchi Not to be used if the peripheral is in single CAN configuration. 28e43250c0SDario Binacchi To avoid misunderstandings, it should be noted that ST documentation 29*caf78f0fSDario Binacchi uses the terms master instead of primary. 30*caf78f0fSDario Binacchi type: boolean 31*caf78f0fSDario Binacchi 32*caf78f0fSDario Binacchi st,can-secondary: 33*caf78f0fSDario Binacchi description: 34*caf78f0fSDario Binacchi Secondary mode of the bxCAN peripheral is only relevant if the chip 35*caf78f0fSDario Binacchi has two CAN peripherals in dual CAN configuration. In that case they 36*caf78f0fSDario Binacchi share some of the required logic. 37*caf78f0fSDario Binacchi Not to be used if the peripheral is in single CAN configuration. 38*caf78f0fSDario Binacchi To avoid misunderstandings, it should be noted that ST documentation 39*caf78f0fSDario Binacchi uses the terms slave instead of secondary. 40e43250c0SDario Binacchi type: boolean 41e43250c0SDario Binacchi 42e43250c0SDario Binacchi reg: 43e43250c0SDario Binacchi maxItems: 1 44e43250c0SDario Binacchi 45e43250c0SDario Binacchi interrupts: 46e43250c0SDario Binacchi items: 47e43250c0SDario Binacchi - description: transmit interrupt 48e43250c0SDario Binacchi - description: FIFO 0 receive interrupt 49e43250c0SDario Binacchi - description: FIFO 1 receive interrupt 50e43250c0SDario Binacchi - description: status change error interrupt 51e43250c0SDario Binacchi 52e43250c0SDario Binacchi interrupt-names: 53e43250c0SDario Binacchi items: 54e43250c0SDario Binacchi - const: tx 55e43250c0SDario Binacchi - const: rx0 56e43250c0SDario Binacchi - const: rx1 57e43250c0SDario Binacchi - const: sce 58e43250c0SDario Binacchi 59e43250c0SDario Binacchi resets: 60e43250c0SDario Binacchi maxItems: 1 61e43250c0SDario Binacchi 62e43250c0SDario Binacchi clocks: 63e43250c0SDario Binacchi maxItems: 1 64e43250c0SDario Binacchi 65e43250c0SDario Binacchi st,gcan: 66e43250c0SDario Binacchi $ref: /schemas/types.yaml#/definitions/phandle-array 67e43250c0SDario Binacchi description: 68e43250c0SDario Binacchi The phandle to the gcan node which allows to access the 512-bytes 69e43250c0SDario Binacchi SRAM memory shared by the two bxCAN cells (CAN1 primary and CAN2 70e43250c0SDario Binacchi secondary) in dual CAN peripheral configuration. 71e43250c0SDario Binacchi 72e43250c0SDario Binacchirequired: 73e43250c0SDario Binacchi - compatible 74e43250c0SDario Binacchi - reg 75e43250c0SDario Binacchi - interrupts 76e43250c0SDario Binacchi - resets 77e43250c0SDario Binacchi - clocks 78e43250c0SDario Binacchi - st,gcan 79e43250c0SDario Binacchi 80e43250c0SDario BinacchiadditionalProperties: false 81e43250c0SDario Binacchi 82e43250c0SDario Binacchiexamples: 83e43250c0SDario Binacchi - | 84e43250c0SDario Binacchi #include <dt-bindings/clock/stm32fx-clock.h> 85e43250c0SDario Binacchi #include <dt-bindings/mfd/stm32f4-rcc.h> 86e43250c0SDario Binacchi 87e43250c0SDario Binacchi can1: can@40006400 { 88e43250c0SDario Binacchi compatible = "st,stm32f4-bxcan"; 89e43250c0SDario Binacchi reg = <0x40006400 0x200>; 90e43250c0SDario Binacchi interrupts = <19>, <20>, <21>, <22>; 91e43250c0SDario Binacchi interrupt-names = "tx", "rx0", "rx1", "sce"; 92e43250c0SDario Binacchi resets = <&rcc STM32F4_APB1_RESET(CAN1)>; 93e43250c0SDario Binacchi clocks = <&rcc 0 STM32F4_APB1_CLOCK(CAN1)>; 94e43250c0SDario Binacchi st,can-primary; 95e43250c0SDario Binacchi st,gcan = <&gcan>; 96e43250c0SDario Binacchi }; 97