Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
pata_arasan_cf_data.h
Go to the documentation of this file.
1 /*
2  * include/linux/pata_arasan_cf_data.h
3  *
4  * Arasan Compact Flash host controller platform data header file
5  *
6  * Copyright (C) 2011 ST Microelectronics
7  * Viresh Kumar <[email protected]>
8  *
9  * This file is licensed under the terms of the GNU General Public
10  * License version 2. This program is licensed "as is" without any
11  * warranty of any kind, whether express or implied.
12  */
13 
14 #ifndef _PATA_ARASAN_CF_DATA_H
15 #define _PATA_ARASAN_CF_DATA_H
16 
17 #include <linux/platform_device.h>
18 
21  #define CF_IF_CLK_100M (0x0)
22  #define CF_IF_CLK_75M (0x1)
23  #define CF_IF_CLK_66M (0x2)
24  #define CF_IF_CLK_50M (0x3)
25  #define CF_IF_CLK_40M (0x4)
26  #define CF_IF_CLK_33M (0x5)
27  #define CF_IF_CLK_25M (0x6)
28  #define CF_IF_CLK_125M (0x7)
29  #define CF_IF_CLK_150M (0x8)
30  #define CF_IF_CLK_166M (0x9)
31  #define CF_IF_CLK_200M (0xA)
32  /*
33  * Platform specific incapabilities of CF controller is handled via
34  * quirks
35  */
37  #define CF_BROKEN_PIO (1)
38  #define CF_BROKEN_MWDMA (1 << 1)
39  #define CF_BROKEN_UDMA (1 << 2)
40  /* This is platform specific data for the DMA controller */
41  void *dma_priv;
42 };
43 
44 static inline void
45 set_arasan_cf_pdata(struct platform_device *pdev, struct arasan_cf_pdata *data)
46 {
47  pdev->dev.platform_data = data;
48 }
49 #endif /* _PATA_ARASAN_CF_DATA_H */