diff --git a/README.md b/README.md new file mode 100644 index 0000000..70daaca --- /dev/null +++ b/README.md @@ -0,0 +1,45 @@ +Bosch M_CAN (CAN Controller) Device Driver +========================================== + +Files +----- +* *.c : Driver C-Source Files +* Kconfig : Config file for menuconfig etc. +* Makefile : Makefile for Kernel Build + +Compile +------- +compile as normal Kernel Driver. +* Driver can be compiled as an externel module. +* Driver can be compiled statically into the kernel. + + +Device Tree +----------- +The following code shows a basic device tree for an M_CAN node: + +``` +/* M_CAN Device Tree Nodes */ +hclk: hclk { + compatible = "fixed-clock"; + #clock-cells = < 0 >; + clock-frequency = <50000000>; +}; +cclk: cclk { + compatible = "fixed-clock"; + #clock-cells = < 0 >; + clock-frequency = <40000000>; +}; +mcan0: can@0xff240000 { + compatible = "bosch,m_can-3.2.1"; + reg = <0xff240000 0x200>,<0xff260000 0x4000>; + reg-names = "m_can", "message_ram"; + interrupt-parent = <&intc>; + /* Shared Interrupt for every M_CAN */ + interrupts = <0x0 40 0x4>; + interrupt-names = "int0"; + clocks = <&hclk>, <&cclk>; + clock-names = "hclk", "cclk"; + bosch,mram-cfg = <0x0 128 64 64 32 64 32 32>; +}; +```