Memory mapped SJA1000 CAN controller from NXP (formerly Philips)

Required properties:

- compatible : should be "nxp,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.
	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>;
};

