Compare commits

..

No commits in common. "09003224fd7d6de4068541f9364df2693ae22084" and "420dd4d414b6f31eab5496e01176eb8e0b25fa42" have entirely different histories.

2 changed files with 172 additions and 598 deletions

View File

@ -7,17 +7,11 @@ Files
* Kconfig : Config file for menuconfig etc. * Kconfig : Config file for menuconfig etc.
* Makefile : Makefile for Kernel Build * Makefile : Makefile for Kernel Build
Patch Kernel
------------
* Apply the specific commits on your kernel source tree
* Or copy the newest m_can.c to your kernel source tree.
Compile Compile
------- -------
compile as normal Kernel Driver. compile as normal Kernel Driver.
* Driver can be compiled as an externel module. * Driver can be compiled as an externel module.
* Driver can be compiled statically into the kernel. * Driver can be compiled statically into the kernel.
* selectable with menuconfig
Device Tree Device Tree
@ -26,7 +20,6 @@ The following code shows a basic device tree for an M_CAN node:
``` ```
/* M_CAN Device Tree Nodes */ /* M_CAN Device Tree Nodes */
/* Example clocks */
hclk: hclk { hclk: hclk {
compatible = "fixed-clock"; compatible = "fixed-clock";
#clock-cells = < 0 >; #clock-cells = < 0 >;
@ -37,13 +30,12 @@ cclk: cclk {
#clock-cells = < 0 >; #clock-cells = < 0 >;
clock-frequency = <40000000>; clock-frequency = <40000000>;
}; };
/* M_CAN device */
mcan0: can@0xff240000 { mcan0: can@0xff240000 {
compatible = "bosch,m_can"; compatible = "bosch,m_can-3.2.1";
reg = <0xff240000 0x200>,<0xff260000 0x4000>; reg = <0xff240000 0x200>,<0xff260000 0x4000>;
reg-names = "m_can", "message_ram"; reg-names = "m_can", "message_ram";
interrupt-parent = <&intc>; interrupt-parent = <&intc>;
/* Shared Interrupt for every M_CAN */
interrupts = <0x0 40 0x4>; interrupts = <0x0 40 0x4>;
interrupt-names = "int0"; interrupt-names = "int0";
clocks = <&hclk>, <&cclk>; clocks = <&hclk>, <&cclk>;

File diff suppressed because it is too large Load Diff