diff options
| author | Wolfgang Grandegger <wg@grandegger.com> | 2009-05-15 19:39:31 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2009-05-18 18:41:42 -0400 |
| commit | f534e52f091a7b9f51fb6726710bdf731b663e94 (patch) | |
| tree | f1faad4e595abf44eae5a4942401f1fac14f1494 /include/linux/can | |
| parent | 429da1cc841bc9f2e762fd7272fc2b80314b890a (diff) | |
can: SJA1000 generic platform bus driver
This driver adds support for the SJA1000 chips connected to the
"platform bus", which can be found on various embedded systems.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Oliver Hartkopp <oliver.hartkopp@volkswagen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/can')
| -rw-r--r-- | include/linux/can/platform/sja1000.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/linux/can/platform/sja1000.h b/include/linux/can/platform/sja1000.h new file mode 100644 index 000000000000..37966e630ff5 --- /dev/null +++ b/include/linux/can/platform/sja1000.h | |||
| @@ -0,0 +1,32 @@ | |||
| 1 | #ifndef _CAN_PLATFORM_SJA1000_H_ | ||
| 2 | #define _CAN_PLATFORM_SJA1000_H_ | ||
| 3 | |||
| 4 | /* clock divider register */ | ||
| 5 | #define CDR_CLKOUT_MASK 0x07 | ||
| 6 | #define CDR_CLK_OFF 0x08 /* Clock off (CLKOUT pin) */ | ||
| 7 | #define CDR_RXINPEN 0x20 /* TX1 output is RX irq output */ | ||
| 8 | #define CDR_CBP 0x40 /* CAN input comparator bypass */ | ||
| 9 | #define CDR_PELICAN 0x80 /* PeliCAN mode */ | ||
| 10 | |||
| 11 | /* output control register */ | ||
| 12 | #define OCR_MODE_BIPHASE 0x00 | ||
| 13 | #define OCR_MODE_TEST 0x01 | ||
| 14 | #define OCR_MODE_NORMAL 0x02 | ||
| 15 | #define OCR_MODE_CLOCK 0x03 | ||
| 16 | #define OCR_TX0_INVERT 0x04 | ||
| 17 | #define OCR_TX0_PULLDOWN 0x08 | ||
| 18 | #define OCR_TX0_PULLUP 0x10 | ||
| 19 | #define OCR_TX0_PUSHPULL 0x18 | ||
| 20 | #define OCR_TX1_INVERT 0x20 | ||
| 21 | #define OCR_TX1_PULLDOWN 0x40 | ||
| 22 | #define OCR_TX1_PULLUP 0x80 | ||
| 23 | #define OCR_TX1_PUSHPULL 0xc0 | ||
| 24 | |||
| 25 | struct sja1000_platform_data { | ||
| 26 | u32 clock; /* CAN bus oscillator frequency in Hz */ | ||
| 27 | |||
| 28 | u8 ocr; /* output control register */ | ||
| 29 | u8 cdr; /* clock divider register */ | ||
| 30 | }; | ||
| 31 | |||
| 32 | #endif /* !_CAN_PLATFORM_SJA1000_H_ */ | ||
