@ -24,137 +24,137 @@
# ifndef _PINMUX_H_
# define _PINMUX_H_
/* Pins which we can set to tristate or normal */
enum pmux_pin {
/* Pin group s which we can set to tristate or normal */
enum pmux_pingrp {
/* APB_MISC_PP_TRISTATE_REG_A_0 */
PIN_ATA ,
PIN_ATB ,
PIN_ATC ,
PIN_ATD ,
PIN_CDEV1 ,
PIN_CDEV2 ,
PIN_CSUS ,
PIN_DAP1 ,
PIN_DAP2 ,
PIN_DAP3 ,
PIN_DAP4 ,
PIN_DTA ,
PIN_DTB ,
PIN_DTC ,
PIN_DTD ,
PIN_DTE ,
PIN_GPU ,
PIN_GPV ,
PIN_I2CP ,
PIN_IRTX ,
PIN_IRRX ,
PIN_KBCB ,
PIN_KBCA ,
PIN_PMC ,
PIN_PTA ,
PIN_RM ,
PIN_KBCE ,
PIN_KBCF ,
PIN_GMA ,
PIN_GMC ,
PIN_SDMMC1 ,
PIN_OWC ,
PINGRP _ATA ,
PINGRP _ATB ,
PINGRP _ATC ,
PINGRP _ATD ,
PINGRP _CDEV1 ,
PINGRP _CDEV2 ,
PINGRP _CSUS ,
PINGRP _DAP1 ,
PINGRP _DAP2 ,
PINGRP _DAP3 ,
PINGRP _DAP4 ,
PINGRP _DTA ,
PINGRP _DTB ,
PINGRP _DTC ,
PINGRP _DTD ,
PINGRP _DTE ,
PINGRP _GPU ,
PINGRP _GPV ,
PINGRP _I2CP ,
PINGRP _IRTX ,
PINGRP _IRRX ,
PINGRP _KBCB ,
PINGRP _KBCA ,
PINGRP _PMC ,
PINGRP _PTA ,
PINGRP _RM ,
PINGRP _KBCE ,
PINGRP _KBCF ,
PINGRP _GMA ,
PINGRP _GMC ,
PINGRP _SDMMC1 ,
PINGRP _OWC ,
/* 32: APB_MISC_PP_TRISTATE_REG_B_0 */
PIN_GME ,
PIN_SDC ,
PIN_SDD ,
PIN_RESERVED0 ,
PIN_SLXA ,
PIN_SLXC ,
PIN_SLXD ,
PIN_SLXK ,
PIN_SPDI ,
PIN_SPDO ,
PIN_SPIA ,
PIN_SPIB ,
PIN_SPIC ,
PIN_SPID ,
PIN_SPIE ,
PIN_SPIF ,
PIN_SPIG ,
PIN_SPIH ,
PIN_UAA ,
PIN_UAB ,
PIN_UAC ,
PIN_UAD ,
PIN_UCA ,
PIN_UCB ,
PIN_RESERVED1 ,
PIN_ATE ,
PIN_KBCC ,
PIN_RESERVED2 ,
PIN_RESERVED3 ,
PIN_GMB ,
PIN_GMD ,
PIN_DDC ,
PINGRP _GME ,
PINGRP _SDC ,
PINGRP _SDD ,
PINGRP _RESERVED0 ,
PINGRP _SLXA ,
PINGRP _SLXC ,
PINGRP _SLXD ,
PINGRP _SLXK ,
PINGRP _SPDI ,
PINGRP _SPDO ,
PINGRP _SPIA ,
PINGRP _SPIB ,
PINGRP _SPIC ,
PINGRP _SPID ,
PINGRP _SPIE ,
PINGRP _SPIF ,
PINGRP _SPIG ,
PINGRP _SPIH ,
PINGRP _UAA ,
PINGRP _UAB ,
PINGRP _UAC ,
PINGRP _UAD ,
PINGRP _UCA ,
PINGRP _UCB ,
PINGRP _RESERVED1 ,
PINGRP _ATE ,
PINGRP _KBCC ,
PINGRP _RESERVED2 ,
PINGRP _RESERVED3 ,
PINGRP _GMB ,
PINGRP _GMD ,
PINGRP _DDC ,
/* 64: APB_MISC_PP_TRISTATE_REG_C_0 */
PIN_LD0 ,
PIN_LD1 ,
PIN_LD2 ,
PIN_LD3 ,
PIN_LD4 ,
PIN_LD5 ,
PIN_LD6 ,
PIN_LD7 ,
PIN_LD8 ,
PIN_LD9 ,
PIN_LD10 ,
PIN_LD11 ,
PIN_LD12 ,
PIN_LD13 ,
PIN_LD14 ,
PIN_LD15 ,
PIN_LD16 ,
PIN_LD17 ,
PIN_LHP0 ,
PIN_LHP1 ,
PIN_LHP2 ,
PIN_LVP0 ,
PIN_LVP1 ,
PIN_HDINT ,
PIN_LM0 ,
PIN_LM1 ,
PIN_LVS ,
PIN_LSC0 ,
PIN_LSC1 ,
PIN_LSCK ,
PIN_LDC ,
PIN_LCSN ,
PINGRP _LD0 ,
PINGRP _LD1 ,
PINGRP _LD2 ,
PINGRP _LD3 ,
PINGRP _LD4 ,
PINGRP _LD5 ,
PINGRP _LD6 ,
PINGRP _LD7 ,
PINGRP _LD8 ,
PINGRP _LD9 ,
PINGRP _LD10 ,
PINGRP _LD11 ,
PINGRP _LD12 ,
PINGRP _LD13 ,
PINGRP _LD14 ,
PINGRP _LD15 ,
PINGRP _LD16 ,
PINGRP _LD17 ,
PINGRP _LHP0 ,
PINGRP _LHP1 ,
PINGRP _LHP2 ,
PINGRP _LVP0 ,
PINGRP _LVP1 ,
PINGRP _HDINT ,
PINGRP _LM0 ,
PINGRP _LM1 ,
PINGRP _LVS ,
PINGRP _LSC0 ,
PINGRP _LSC1 ,
PINGRP _LSCK ,
PINGRP _LDC ,
PINGRP _LCSN ,
/* 96: APB_MISC_PP_TRISTATE_REG_D_0 */
PIN_LSPI ,
PIN_LSDA ,
PIN_LSDI ,
PIN_LPW0 ,
PIN_LPW1 ,
PIN_LPW2 ,
PIN_LDI ,
PIN_LHS ,
PIN_LPP ,
PIN_RESERVED4 ,
PIN_KBCD ,
PIN_GPU7 ,
PIN_DTF ,
PIN_UDA ,
PIN_CRTP ,
PIN_SDB ,
PINGRP _LSPI ,
PINGRP _LSDA ,
PINGRP _LSDI ,
PINGRP _LPW0 ,
PINGRP _LPW1 ,
PINGRP _LPW2 ,
PINGRP _LDI ,
PINGRP _LHS ,
PINGRP _LPP ,
PINGRP _RESERVED4 ,
PINGRP _KBCD ,
PINGRP _GPU7 ,
PINGRP _DTF ,
PINGRP _UDA ,
PINGRP _CRTP ,
PINGRP _SDB ,
} ;
@ -172,25 +172,25 @@ struct pmux_tri_ctlr {
uint pmt_reserved [ 22 ] ; /* ABP_MISC_PP_ reserved offs 28-7C */
uint pmt_ctl_a ; /* _PIN_MUX_CTL_A_0, offset 80 */
uint pmt_ctl_b ; /* _PIN_MUX_CTL_B_0, offset 84 */
uint pmt_ctl_c ; /* _PIN_MUX_CTL_C_0, offset 88 */
uint pmt_ctl_d ; /* _PIN_MUX_CTL_D_0, offset 8C */
uint pmt_ctl_e ; /* _PIN_MUX_CTL_E_0, offset 90 */
uint pmt_ctl_f ; /* _PIN_MUX_CTL_F_0, offset 94 */
uint pmt_ctl_g ; /* _PIN_MUX_CTL_G_0, offset 98 */
uint pmt_ctl_a ; /* _PINGRP _MUX_CTL_A_0, offset 80 */
uint pmt_ctl_b ; /* _PINGRP _MUX_CTL_B_0, offset 84 */
uint pmt_ctl_c ; /* _PINGRP _MUX_CTL_C_0, offset 88 */
uint pmt_ctl_d ; /* _PINGRP _MUX_CTL_D_0, offset 8C */
uint pmt_ctl_e ; /* _PINGRP _MUX_CTL_E_0, offset 90 */
uint pmt_ctl_f ; /* _PINGRP _MUX_CTL_F_0, offset 94 */
uint pmt_ctl_g ; /* _PINGRP _MUX_CTL_G_0, offset 98 */
} ;
/* Converts a pin number to a tristate register: 0=A, 1=B, 2=C, 3=D */
/* Converts a pin group to a tristate register: 0=A, 1=B, 2=C, 3=D */
# define TRISTATE_REG(id) ((id) >> 5)
/* Mask value for a tristate (within TRISTATE_REG(id)) */
# define TRISTATE_MASK(id) (1 << ((id) & 0x1f))
/* Set a pin to tristate */
void pinmux_tristate_enable ( enum pmux_pin pin ) ;
/* Set a pin group to tristate */
void pinmux_tristate_enable ( enum pmux_pingrp pin ) ;
/* Set a pin to normal (non tristate) */
void pinmux_tristate_disable ( enum pmux_pin pin ) ;
/* Set a pin group to normal (non tristate) */
void pinmux_tristate_disable ( enum pmux_pingrp pin ) ;
# endif /* PINMUX_H */