Author: oxygene Date: Sat May 22 17:07:15 2010 New Revision: 5580 URL: https://tracker.coreboot.org/trac/coreboot/changeset/5580
Log: Add tinybootblock support for broadcom/bcm5785. In the bootblock, 4MB of ROM are mapped instead of the default 1MB
Signed-off-by: Patrick Georgi patrick.georgi@coresystems.de Acked-by: Myles Watson mylesgw@gmail.com
Added: trunk/src/southbridge/broadcom/bcm5785/bcm5785_enable_rom.c trunk/src/southbridge/broadcom/bcm5785/bootblock.c Modified: trunk/src/southbridge/broadcom/bcm5785/Kconfig trunk/src/southbridge/broadcom/bcm5785/bcm5785_early_setup.c
Modified: trunk/src/southbridge/broadcom/bcm5785/Kconfig ============================================================================== --- trunk/src/southbridge/broadcom/bcm5785/Kconfig Fri May 21 22:40:38 2010 (r5579) +++ trunk/src/southbridge/broadcom/bcm5785/Kconfig Sat May 22 17:07:15 2010 (r5580) @@ -1,2 +1,8 @@ config SOUTHBRIDGE_BROADCOM_BCM5785 bool + select HAVE_HARD_RESET + +config BOOTBLOCK_SOUTHBRIDGE_INIT + string + default "southbridge/broadcom/bcm5785/bootblock.c" + depends on SOUTHBRIDGE_BROADCOM_BCM5785
Modified: trunk/src/southbridge/broadcom/bcm5785/bcm5785_early_setup.c ============================================================================== --- trunk/src/southbridge/broadcom/bcm5785/bcm5785_early_setup.c Fri May 21 22:40:38 2010 (r5579) +++ trunk/src/southbridge/broadcom/bcm5785/bcm5785_early_setup.c Sat May 22 17:07:15 2010 (r5580) @@ -4,20 +4,7 @@ */
#include <reset.h> -static void bcm5785_enable_rom(void) -{ - unsigned char byte; - device_t addr; - - /* Enable 4MB rom access at 0xFFC00000 - 0xFFFFFFFF */ - /* Locate the BCM 5785 SB PCI Main */ - addr = pci_locate_device(PCI_ID(0x1166, 0x0205), 0); // 0x0201? - - /* Set the 4MB enable bit bit */ - byte = pci_read_config8(addr, 0x41); - byte |= 0x0e; - pci_write_config8(addr, 0x41, byte); -} +#include "bcm5785_enable_rom.c"
static void bcm5785_enable_lpc(void) {
Added: trunk/src/southbridge/broadcom/bcm5785/bcm5785_enable_rom.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/src/southbridge/broadcom/bcm5785/bcm5785_enable_rom.c Sat May 22 17:07:15 2010 (r5580) @@ -0,0 +1,14 @@ +static void bcm5785_enable_rom(void) +{ + unsigned char byte; + device_t addr; + + /* Enable 4MB rom access at 0xFFC00000 - 0xFFFFFFFF */ + /* Locate the BCM 5785 SB PCI Main */ + addr = pci_locate_device(PCI_ID(0x1166, 0x0205), 0); // 0x0201? + + /* Set the 4MB enable bit bit */ + byte = pci_read_config8(addr, 0x41); + byte |= 0x0e; + pci_write_config8(addr, 0x41, byte); +}
Added: trunk/src/southbridge/broadcom/bcm5785/bootblock.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ trunk/src/southbridge/broadcom/bcm5785/bootblock.c Sat May 22 17:07:15 2010 (r5580) @@ -0,0 +1,5 @@ +#include "bcm5785_enable_rom.c" + +static void bootblock_southbridge_init(void) { + bcm5785_enable_rom(); +}