Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/arm/mach-mmp/include/mach/mfp.h
15162 views
1
#ifndef __ASM_MACH_MFP_H
2
#define __ASM_MACH_MFP_H
3
4
#include <plat/mfp.h>
5
6
/*
7
* NOTE: the MFPR register bit definitions on PXA168 processor lines are a
8
* bit different from those on PXA3xx. Bit [7:10] are now reserved, which
9
* were SLEEP_OE_N, SLEEP_DATA, SLEEP_SEL and the LSB of DRIVE bits.
10
*
11
* To cope with this difference and re-use the pxa3xx mfp code as much as
12
* possible, we make the following compromise:
13
*
14
* 1. SLEEP_OE_N will always be programmed to '1' (by MFP_LPM_FLOAT)
15
* 2. DRIVE strength definitions redefined to include the reserved bit
16
* - the reserved bit differs between pxa168 and pxa910, and the
17
* MFP_DRIVE_* macros are individually defined in mfp-pxa{168,910}.h
18
* 3. Override MFP_CFG() and MFP_CFG_DRV()
19
* 4. Drop the use of MFP_CFG_LPM() and MFP_CFG_X()
20
*/
21
22
#undef MFP_CFG
23
#undef MFP_CFG_DRV
24
#undef MFP_CFG_LPM
25
#undef MFP_CFG_X
26
#undef MFP_CFG_DEFAULT
27
28
#define MFP_CFG(pin, af) \
29
(MFP_LPM_FLOAT | MFP_PIN(MFP_PIN_##pin) | MFP_##af | MFP_DRIVE_MEDIUM)
30
31
#define MFP_CFG_DRV(pin, af, drv) \
32
(MFP_LPM_FLOAT | MFP_PIN(MFP_PIN_##pin) | MFP_##af | MFP_DRIVE_##drv)
33
34
#endif /* __ASM_MACH_MFP_H */
35
36