forked from mirrors/linux
		
	 26e8f6a752
			
		
	
	
		26e8f6a752
		
	
	
	
	
		
			
			bitfield mode in ocr register has only 2 bits not 3, so correct the OCR_MODE_MASK define. Signed-off-by: Heiko Schocher <hs@denx.de> Link: https://lore.kernel.org/all/20221123071636.2407823-1-hs@denx.de Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _CAN_PLATFORM_SJA1000_H
 | |
| #define _CAN_PLATFORM_SJA1000_H
 | |
| 
 | |
| /* clock divider register */
 | |
| #define CDR_CLKOUT_MASK 0x07
 | |
| #define CDR_CLK_OFF	0x08 /* Clock off (CLKOUT pin) */
 | |
| #define CDR_RXINPEN	0x20 /* TX1 output is RX irq output */
 | |
| #define CDR_CBP		0x40 /* CAN input comparator bypass */
 | |
| #define CDR_PELICAN	0x80 /* PeliCAN mode */
 | |
| 
 | |
| /* output control register */
 | |
| #define OCR_MODE_BIPHASE  0x00
 | |
| #define OCR_MODE_TEST     0x01
 | |
| #define OCR_MODE_NORMAL   0x02
 | |
| #define OCR_MODE_CLOCK    0x03
 | |
| #define OCR_MODE_MASK     0x03
 | |
| #define OCR_TX0_INVERT    0x04
 | |
| #define OCR_TX0_PULLDOWN  0x08
 | |
| #define OCR_TX0_PULLUP    0x10
 | |
| #define OCR_TX0_PUSHPULL  0x18
 | |
| #define OCR_TX1_INVERT    0x20
 | |
| #define OCR_TX1_PULLDOWN  0x40
 | |
| #define OCR_TX1_PULLUP    0x80
 | |
| #define OCR_TX1_PUSHPULL  0xc0
 | |
| #define OCR_TX_MASK       0xfc
 | |
| #define OCR_TX_SHIFT      2
 | |
| 
 | |
| struct sja1000_platform_data {
 | |
| 	u32 osc_freq;	/* CAN bus oscillator frequency in Hz */
 | |
| 
 | |
| 	u8 ocr;		/* output control register */
 | |
| 	u8 cdr;		/* clock divider register */
 | |
| };
 | |
| 
 | |
| #endif	/* !_CAN_PLATFORM_SJA1000_H */
 |