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 <vireshk@kernel.org> 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 19 struct arasan_cf_pdata { 20 u8 cf_if_clk; 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 */ 36 u32 quirk; 37 #define CF_BROKEN_PIO (1) 38 #define CF_BROKEN_MWDMA (1 << 1) 39 #define CF_BROKEN_UDMA (1 << 2) 40 }; 41 42 static inline void set_arasan_cf_pdata(struct platform_device * pdev,struct arasan_cf_pdata * data)43set_arasan_cf_pdata(struct platform_device *pdev, struct arasan_cf_pdata *data) 44 { 45 pdev->dev.platform_data = data; 46 } 47 #endif /* _PATA_ARASAN_CF_DATA_H */ 48