mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
- Add MPC5XXX register definition MPC5XXX_WU_GPIO_DATA_I and change the
MPC5XXX_WU_GPIO_DATA macro to MPC5XXX_WU_GPIO_DATA_O (per MPC5200 User's Manual). Replace the uses of MPC5XXX_WU_GPIO_DATA with MPC5XXX_WU_GPIO_DATA_O for affected boards. - Add defintions for some MPC5XXX GPIO pins.
This commit is contained in:
parent
82d9c9ec29
commit
dae80f3caf
8 changed files with 31 additions and 40 deletions
|
@ -295,7 +295,6 @@ void pci_init_board(void)
|
|||
#endif
|
||||
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset (void)
|
||||
{
|
||||
|
@ -311,9 +310,9 @@ void ide_set_reset (int idereset)
|
|||
debug ("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
|
|
@ -186,8 +186,6 @@ void pci_init_board(void)
|
|||
*****************************************************************************/
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset (void)
|
||||
{
|
||||
debug ("init_ide_reset\n");
|
||||
|
@ -202,9 +200,9 @@ void ide_set_reset (int idereset)
|
|||
debug ("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
|
|
@ -199,8 +199,6 @@ void pci_init_board(void
|
|||
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset(void)
|
||||
{
|
||||
debug("init_ide_reset\n");
|
||||
|
@ -215,9 +213,9 @@ void ide_set_reset(int idereset)
|
|||
debug("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
@ -242,7 +240,7 @@ void init_ata_reset(void)
|
|||
debug("init_ata_reset\n");
|
||||
|
||||
/* Configure GPIO_WU6 as GPIO output for ATA reset */
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_WU6;
|
||||
__asm__ volatile ("sync");
|
||||
|
|
|
@ -199,8 +199,6 @@ void pci_init_board(void
|
|||
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset(void)
|
||||
{
|
||||
debug("init_ide_reset\n");
|
||||
|
@ -215,9 +213,9 @@ void ide_set_reset(int idereset)
|
|||
debug("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
@ -242,7 +240,7 @@ void init_power_switch(void)
|
|||
debug("init_power_switch\n");
|
||||
|
||||
/* Configure GPIO_WU6 as GPIO output for ATA reset */
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_WU6;
|
||||
__asm__ volatile ("sync");
|
||||
|
@ -272,10 +270,10 @@ void power_set_reset(int power)
|
|||
debug("ide_set_reset(%d)\n", power);
|
||||
|
||||
if (power) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_INTERRUPT_GPIO_DATA_OUTPUT &= ~GPIO_USB9;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_WU6;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_WU6;
|
||||
if ((*(vu_long *) MPC5XXX_INTERRUPT_GPIO_STATUS & GPIO_USB9S) ==
|
||||
0) {
|
||||
*(vu_long *) MPC5XXX_SIMPLEIO_GPIO_DATA_OUTPUT |=
|
||||
|
|
|
@ -308,8 +308,6 @@ void pci_init_board(void)
|
|||
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset (void)
|
||||
{
|
||||
debug ("init_ide_reset\n");
|
||||
|
@ -318,7 +316,7 @@ void init_ide_reset (void)
|
|||
*(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_PSC1_4;
|
||||
/* Deassert reset */
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
|
||||
void ide_set_reset (int idereset)
|
||||
|
@ -326,11 +324,11 @@ void ide_set_reset (int idereset)
|
|||
debug ("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
/* Make a delay. MPC5200 spec says 25 usec min */
|
||||
udelay(500000);
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
|
|
@ -173,9 +173,6 @@ void flash_preinit(void)
|
|||
*(vu_long *)MPC5XXX_BOOTCS_CFG &= ~0x1; /* clear RO */
|
||||
}
|
||||
|
||||
#define GPIO_WKUP_7 0x80000000UL
|
||||
#define GPIO_PSC3_9 0x04000000UL
|
||||
|
||||
int misc_init_f (void)
|
||||
{
|
||||
uchar tmp[10];
|
||||
|
@ -218,13 +215,13 @@ int misc_init_f (void)
|
|||
*(vu_long *)MPC5XXX_WU_GPIO_DIR |= 0xc4000000;
|
||||
|
||||
/* Set LR mirror bit because it is low-active */
|
||||
*(vu_long *)MPC5XXX_WU_GPIO_DATA |= GPIO_WKUP_7;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_WKUP_7;
|
||||
/*
|
||||
* Reset Coral-P graphics controller
|
||||
*/
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_PSC3_9;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_PSC3_9;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC3_9;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC3_9;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -241,8 +238,6 @@ void pci_init_board(void)
|
|||
|
||||
#if defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET)
|
||||
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
void init_ide_reset (void)
|
||||
{
|
||||
debug ("init_ide_reset\n");
|
||||
|
@ -251,7 +246,7 @@ void init_ide_reset (void)
|
|||
*(vu_long *) MPC5XXX_WU_GPIO_ENABLE |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DIR |= GPIO_PSC1_4;
|
||||
/* Deassert reset */
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
|
||||
void ide_set_reset (int idereset)
|
||||
|
@ -259,11 +254,11 @@ void ide_set_reset (int idereset)
|
|||
debug ("ide_reset(%d)\n", idereset);
|
||||
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
/* Make a delay. MPC5200 spec says 25 usec min */
|
||||
udelay(500000);
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
}
|
||||
#endif /* defined (CFG_CMD_IDE) && defined (CONFIG_IDE_RESET) */
|
||||
|
|
|
@ -341,9 +341,7 @@ void pci_init_board(void)
|
|||
#define SM501_GPIO_DATA_DIR_HIGH 0x0001000CUL
|
||||
#define SM501_GPIO_DATA_HIGH 0x00010004UL
|
||||
#define SM501_GPIO_51 0x00080000UL
|
||||
#else
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
#endif
|
||||
#endif /* CONFIG MINIFAP */
|
||||
|
||||
void init_ide_reset (void)
|
||||
{
|
||||
|
@ -381,9 +379,9 @@ void ide_set_reset (int idereset)
|
|||
}
|
||||
#else
|
||||
if (idereset) {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA &= ~GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O &= ~GPIO_PSC1_4;
|
||||
} else {
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA |= GPIO_PSC1_4;
|
||||
*(vu_long *) MPC5XXX_WU_GPIO_DATA_O |= GPIO_PSC1_4;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -188,7 +188,14 @@
|
|||
#define MPC5XXX_WU_GPIO_ENABLE (MPC5XXX_WU_GPIO + 0x0000)
|
||||
#define MPC5XXX_WU_GPIO_ODE (MPC5XXX_WU_GPIO + 0x0004)
|
||||
#define MPC5XXX_WU_GPIO_DIR (MPC5XXX_WU_GPIO + 0x0008)
|
||||
#define MPC5XXX_WU_GPIO_DATA (MPC5XXX_WU_GPIO + 0x000c)
|
||||
#define MPC5XXX_WU_GPIO_DATA_O (MPC5XXX_WU_GPIO + 0x000c)
|
||||
#define MPC5XXX_WU_GPIO_DATA_I (MPC5XXX_WU_GPIO + 0x0020)
|
||||
|
||||
/* GPIO pins */
|
||||
#define GPIO_WKUP_7 0x80000000UL
|
||||
#define GPIO_PSC6_0 0x10000000UL
|
||||
#define GPIO_PSC3_9 0x04000000UL
|
||||
#define GPIO_PSC1_4 0x01000000UL
|
||||
|
||||
/* PCI registers */
|
||||
#define MPC5XXX_PCI_CMD (MPC5XXX_PCI + 0x04)
|
||||
|
|
Loading…
Reference in a new issue