^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) KEYMILE bfticu Chassis Management FPGA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) The bfticu is a multifunction device that manages the whole chassis.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) Its main functionality is to collect IRQs from the whole chassis and signals
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) them to a single controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) - compatible: "keymile,bfticu"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) - interrupt-controller: the bfticu FPGA is an interrupt controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - interrupts: the main IRQ line to signal the collected IRQs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - #interrupt-cells : is 2 and their usage is compliant to the 2 cells variant
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) of Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) - reg: access on the parent local bus (chip select, offset in chip select, size)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) chassis-mgmt@3,0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) compatible = "keymile,bfticu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) interrupt-controller;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #interrupt-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) reg = <3 0 0x100>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) interrupt-parent = <&mpic>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) interrupts = <6 1 0 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) };