summaryrefslogtreecommitdiffstats
path: root/src/mainboard/asus/kgpe-d16/romstage.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/asus/kgpe-d16/romstage.c')
-rw-r--r--src/mainboard/asus/kgpe-d16/romstage.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/mainboard/asus/kgpe-d16/romstage.c b/src/mainboard/asus/kgpe-d16/romstage.c
index 9964cfe01e57..aa0245d41a3a 100644
--- a/src/mainboard/asus/kgpe-d16/romstage.c
+++ b/src/mainboard/asus/kgpe-d16/romstage.c
@@ -165,10 +165,23 @@ static void set_ddr3_voltage(uint8_t node, uint8_t index) {
static void set_peripheral_control_lines(void) {
uint8_t byte;
-
- /* Enable PCICLK5 (onboard FireWire device) */
- outb(0x41, 0xcd6);
- outb(0x02, 0xcd7);
+ uint8_t nvram;
+ uint8_t enable_ieee1394;
+
+ enable_ieee1394 = 1;
+
+ if (get_option(&nvram, "ieee1394_controller") == CB_SUCCESS)
+ enable_ieee1394 = nvram & 0x1;
+
+ if (enable_ieee1394) {
+ /* Enable PCICLK5 (onboard FireWire device) */
+ outb(0x41, 0xcd6);
+ outb(0x02, 0xcd7);
+ } else {
+ /* Disable PCICLK5 (onboard FireWire device) */
+ outb(0x41, 0xcd6);
+ outb(0x00, 0xcd7);
+ }
/* Enable the RTC AltCentury register */
outb(0x41, 0xcd6);
@@ -419,4 +432,4 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
BOOL AMD_CB_ManualBUIDSwapList (u8 node, u8 link, const u8 **List)
{
return 0;
-} \ No newline at end of file
+}