Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * include/linux/pata_arasan_cf_data.h
0003  *
0004  * Arasan Compact Flash host controller platform data header file
0005  *
0006  * Copyright (C) 2011 ST Microelectronics
0007  * Viresh Kumar <vireshk@kernel.org>
0008  *
0009  * This file is licensed under the terms of the GNU General Public
0010  * License version 2. This program is licensed "as is" without any
0011  * warranty of any kind, whether express or implied.
0012  */
0013 
0014 #ifndef _PATA_ARASAN_CF_DATA_H
0015 #define _PATA_ARASAN_CF_DATA_H
0016 
0017 #include <linux/platform_device.h>
0018 
0019 struct arasan_cf_pdata {
0020     u8 cf_if_clk;
0021     #define CF_IF_CLK_100M          (0x0)
0022     #define CF_IF_CLK_75M           (0x1)
0023     #define CF_IF_CLK_66M           (0x2)
0024     #define CF_IF_CLK_50M           (0x3)
0025     #define CF_IF_CLK_40M           (0x4)
0026     #define CF_IF_CLK_33M           (0x5)
0027     #define CF_IF_CLK_25M           (0x6)
0028     #define CF_IF_CLK_125M          (0x7)
0029     #define CF_IF_CLK_150M          (0x8)
0030     #define CF_IF_CLK_166M          (0x9)
0031     #define CF_IF_CLK_200M          (0xA)
0032     /*
0033      * Platform specific incapabilities of CF controller is handled via
0034      * quirks
0035      */
0036     u32 quirk;
0037     #define CF_BROKEN_PIO           (1)
0038     #define CF_BROKEN_MWDMA         (1 << 1)
0039     #define CF_BROKEN_UDMA          (1 << 2)
0040 };
0041 
0042 static inline void
0043 set_arasan_cf_pdata(struct platform_device *pdev, struct arasan_cf_pdata *data)
0044 {
0045     pdev->dev.platform_data = data;
0046 }
0047 #endif /* _PATA_ARASAN_CF_DATA_H */