Blame view

kernel/linux-rt-4.4.41/include/linux/platform_data/atmel.h 1.49 KB
5113f6f70   김현기   kernel add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  /*
   * atmel platform data
   *
   * GPL v2 Only
   */
  
  #ifndef __ATMEL_H__
  #define __ATMEL_H__
  
  #include <linux/mtd/nand.h>
  #include <linux/mtd/partitions.h>
  #include <linux/serial.h>
  
   /* Compact Flash */
  struct at91_cf_data {
  	int	irq_pin;		/* I/O IRQ */
  	int	det_pin;		/* Card detect */
  	int	vcc_pin;		/* power switching */
  	int	rst_pin;		/* card reset */
  	u8	chipselect;		/* EBI Chip Select number */
  	u8	flags;
  #define AT91_CF_TRUE_IDE	0x01
  #define AT91_IDE_SWAP_A0_A2	0x02
  };
  
   /* NAND / SmartMedia */
  struct atmel_nand_data {
  	int		enable_pin;		/* chip enable */
  	int		det_pin;		/* card detect */
  	int		rdy_pin;		/* ready/busy */
  	u8		rdy_pin_active_low;	/* rdy_pin value is inverted */
  	u8		ale;			/* address line number connected to ALE */
  	u8		cle;			/* address line number connected to CLE */
  	u8		bus_width_16;		/* buswidth is 16 bit */
  	u8		ecc_mode;		/* ecc mode */
  	u8		on_flash_bbt;		/* bbt on flash */
  	struct mtd_partition *parts;
  	unsigned int	num_parts;
  	bool		has_dma;		/* support dma transfer */
  
  	/* default is false, only for at32ap7000 chip is true */
  	bool		need_reset_workaround;
  };
  
   /* Serial */
  struct atmel_uart_data {
  	int			num;		/* port num */
  	short			use_dma_tx;	/* use transmit DMA? */
  	short			use_dma_rx;	/* use receive DMA? */
  	void __iomem		*regs;		/* virt. base address, if any */
  	struct serial_rs485	rs485;		/* rs485 settings */
  };
  
  /* FIXME: this needs a better location, but gets stuff building again */
  extern int at91_suspend_entering_slow_clock(void);
  
  #endif /* __ATMEL_H__ */