Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

Memory mapped SJA1000 CAN controller from NXP (formerly Philips)

Required properties:

- compatible : should be one of "nxp,sja1000", "technologic,sja1000".

- reg : should specify the chip select, address offset and size required
	to map the registers of the SJA1000. The size is usually 0x80.

- interrupts: property with a value describing the interrupt source
	(number and sensitivity) required for the SJA1000.

Optional properties:

- reg-io-width : Specify the size (in bytes) of the IO accesses that
	should be performed on the device.  Valid value is 1, 2 or 4.
	This property is ignored for technologic version.
	Default to 1 (8 bits).

- nxp,external-clock-frequency : Frequency of the external oscillator
	clock in Hz. Note that the internal clock frequency used by the
	SJA1000 is half of that value. If not specified, a default value
	of 16000000 (16 MHz) is used.

- nxp,tx-output-mode : operation mode of the TX output control logic:
	<0x0> : bi-phase output mode
	<0x1> : normal output mode (default)
	<0x2> : test output mode
	<0x3> : clock output mode

- nxp,tx-output-config : TX output pin configuration:
	<0x01> : TX0 invert
	<0x02> : TX0 pull-down (default)
	<0x04> : TX0 pull-up
	<0x06> : TX0 push-pull
	<0x08> : TX1 invert
	<0x10> : TX1 pull-down
	<0x20> : TX1 pull-up
	<0x30> : TX1 push-pull

- nxp,clock-out-frequency : clock frequency in Hz on the CLKOUT pin.
	If not specified or if the specified value is 0, the CLKOUT pin
	will be disabled.

- nxp,no-comparator-bypass : Allows to disable the CAN input comparator.

For further information, please have a look to the SJA1000 data sheet.

Examples:

can@3,100 {
	compatible = "nxp,sja1000";
	reg = <3 0x100 0x80>;
	interrupts = <2 0>;
	interrupt-parent = <&mpic>;
	nxp,external-clock-frequency = <16000000>;
};