Skip to content
Snippets Groups Projects
Commit f20405e3 authored by Larry Johnson's avatar Larry Johnson Committed by Stefan Roese
Browse files

ppc4xx: Add variable "korat_usbcf" for Korat board


The new environment variable "korat_usbcf" selects the USB
port used by the Korat board's CompactFlash controller.

Signed-off-by: default avatarLarry Johnson <lrj@acm.org>
Signed-off-by: default avatarStefan Roese <sr@denx.de>
parent c1b7c700
No related branches found
No related tags found
No related merge requests found
/*
* (C) Copyright 2007-2008
* (C) Copyright 2007-2009
* Larry Johnson, lrj@acm.org
*
* (C) Copyright 2006-2007
......@@ -351,6 +351,7 @@ int misc_init_r(void)
unsigned long sdr0_pfc1;
uint32_t const flash1_size = gd->bd->bi_flashsize - CONFIG_SYS_FLASH0_SIZE;
char const *const act = getenv("usbact");
char const *const usbcf = getenv("korat_usbcf");
/*
* Re-do FLASH1 sizing and adjust flash start and offset.
......@@ -405,6 +406,26 @@ int misc_init_r(void)
/*
* USB suff...
*/
/*
* Select the USB controller on the 440EPx ("ppc") or on the PCI bus
* ("pci") for the CompactFlash.
*/
if (usbcf != NULL && (strcmp(usbcf, "ppc") == 0)) {
/*
* If environment variable "usbcf" is defined and set to "ppc",
* then connect the CompactFlash controller to the PowerPC USB
* port.
*/
printf("Attaching CompactFalsh controller to PPC USB\n");
out_8((u8 *) CONFIG_SYS_CPLD_BASE + 0x02,
in_8((u8 *) CONFIG_SYS_CPLD_BASE + 0x02) | 0x10);
} else {
if (usbcf != NULL && (strcmp(usbcf, "pci") != 0))
printf("Warning: \"korat_usbcf\" is not set to a legal "
"value (\"ppc\" or \"pci\")\n");
printf("Attaching CompactFalsh controller to PCI USB\n");
}
if (act == NULL || strcmp(act, "hostdev") == 0) {
/* SDR Setting */
mfsdr(SDR0_PFC1, sdr0_pfc1);
......
......@@ -49,3 +49,17 @@ creates the upgradable U-Boot but selecting loader file "u-boot-F7FC.lds" and
leaving preprocessor symbol "CONFIG_KORAT_PERMANENT" undefined.
2008-02-22, Larry Johnson <lrj@acm.org>
The CompactFlash(R) controller on the Korat board provides a hi-speed USB
interface. This may be connected to either a dedicated port on the on-board
USB controller, or to a USB port on the PowerPC 440EPx processor. The U-Boot
environment variable "korat_usbcf" can be used to specify which of these two
USB host ports is used for CompactFlash. The valid setting for the variable are
the strings "pci" and "ppc". If the variable defined and set to "ppc", then the
PowerPC USB port is used. In all other cases the on-board USB controller is
used, but if "korat_usbcf" is defined but is set to a string other than the two
valid options, a warning is also issued.
2009-01-28, Larry Johnson <lrj@acm.org>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment