| # |
| # This file is part of the coreboot project. |
| # |
| # Copyright (C) 2011 - 2012 Advanced Micro Devices, Inc. |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; version 2 of the License. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| chip northbridge/amd/agesa/family15/root_complex |
| device cpu_cluster 0 on |
| chip cpu/amd/agesa/family15 |
| device lapic 0x10 on end |
| end |
| end |
| device domain 0 on |
| subsystemid 0x15d9 0xab11 inherit #Tyan |
| chip northbridge/amd/agesa/family15 # CPU side of HT root complex |
| device pci 18.0 on # Put IO-HUB at link_num 0, Instead of HT Link topology |
| chip northbridge/amd/cimx/rd890 # Southbridge PCI side of HT Root complex |
| device pci 0.0 on end # HT Root Complex 0x9600 |
| device pci 0.1 off end # CLKCONFIG |
| device pci 2.0 on end # GPP1 Port0 x16 SLOT4, 0x5A16 |
| device pci 3.0 off end # GPP1 Port1 |
| device pci 4.0 on end # GPP3a Port0 x4 SAS |
| device pci 5.0 on end # GPP3a Port1 |
| device pci 6.0 on end # GPP3a Port2 |
| device pci 7.0 on end # GPP3a Port3 |
| device pci 8.0 off end # NB/SB Link P2P bridge, should be hidden at boot time |
| device pci 9.0 on end # GPP3a Port4 x1 NC |
| device pci a.0 on end # GPP3a Port5 x1 NC |
| device pci b.0 on end # GPP2 Port0 (Not for sr5650) |
| device pci c.0 off end # GPP2 Port1 (Not for sr5650/sr5670) |
| device pci d.0 on end # GPP3b Port0 (Not for sr5650/sr5670) 0x5A1E, Intel 82576 |
| register "gpp1_configuration" = "0" # Configuration 16:0 default |
| register "gpp2_configuration" = "0" # Configuration 8:8 |
| register "gpp3a_configuration" = "2" # 2 Configuration 4:1:1:0:0:0, 11 Configuration 1:1:1:1:1:1 |
| register "port_enable" = "0x3ef6" |
| end #northbridge/amd/cimx/rd890 |
| chip southbridge/amd/cimx/sb700 # it is under NB/SB Link, but on the same pci bus |
| device pci 11.0 on end # SATA |
| device pci 12.0 on end # USB1 |
| device pci 12.1 on end # USB1 |
| device pci 12.2 on end # USB1 |
| device pci 13.0 on end # USB2 |
| device pci 13.1 on end # USB2 |
| device pci 13.2 on end # USB2 |
| device pci 14.0 on end # SM |
| device pci 14.1 off end # IDE 0x439c |
| device pci 14.2 off end # HDA 0x4383, s8226 not have codec. |
| device pci 14.3 on # LPC 0x439d |
| chip superio/winbond/w83627dhg |
| device pnp 2e.0 off # Floppy |
| io 0x60 = 0x3f0 |
| irq 0x70 = 6 |
| drq 0x74 = 2 |
| end |
| device pnp 2e.1 off # Parallel Port |
| io 0x60 = 0x378 |
| irq 0x70 = 7 |
| end |
| device pnp 2e.2 on # Com1 |
| io 0x60 = 0x3f8 |
| irq 0x70 = 4 |
| end |
| device pnp 2e.3 on # Com2 |
| io 0x60 = 0x2f8 |
| irq 0x70 = 3 |
| end |
| ## though UARTs are on the NUVOTON BMC, superio only used to support PS2 KB/MS## |
| device pnp 2e.5 on # PS/2 keyboard & mouse |
| io 0x60 = 0x60 |
| io 0x62 = 0x64 |
| irq 0x70 = 0x01 #keyboard |
| irq 0x72 = 0x0C #mouse |
| end |
| device pnp 2e.6 off # SPI |
| end |
| device pnp 2e.307 off # GPIO6 |
| end |
| device pnp 2e.8 off # WDTO#, PLED |
| end |
| device pnp 2e.009 off # GPIO2 |
| end |
| device pnp 2e.109 off # GPIO3 |
| end |
| device pnp 2e.209 off # GPIO4 |
| end |
| device pnp 2e.309 off # GPIO5 |
| end |
| device pnp 2e.a off # ACPI |
| end |
| device pnp 2e.b off # HWM |
| io 0x60 = 0x290 |
| end |
| device pnp 2e.c off # PECI, SST |
| end |
| end #superio/winbond/w83627dhg |
| chip drivers/i2c/w83795 |
| register "fanin_ctl1" = "0xff" # Enable monitoring of FANIN1 - FANIN8 |
| register "fanin_ctl2" = "0x00" # Connect FANIN11 - FANIN14 to alternate functions |
| register "temp_ctl1" = "0x2a" # Enable monitoring of DTS, VSEN12, and VSEN13 |
| register "temp_ctl2" = "0x01" # Enable monitoring of TD1/TR1 |
| register "temp_dtse" = "0x03" # Enable DTS1 and DTS2 |
| register "volt_ctl1" = "0xff" # Enable monitoring of VSEN1 - VSEN8 |
| register "volt_ctl2" = "0xf7" # Enable monitoring of VSEN9 - VSEN11, 3VDD, 3VSB, and VBAT |
| register "temp1_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp1) |
| register "temp2_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp2) |
| register "temp3_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp3) |
| register "temp4_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp4) |
| register "temp5_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp5) |
| register "temp6_fan_select" = "0x00" # All fans to manual mode (no dependence on Temp6) |
| register "temp1_source_select" = "0x00" # Use TD1/TR1 as data source for Temp1 |
| register "temp2_source_select" = "0x00" # Use TD2/TR2 as data source for Temp2 |
| register "temp3_source_select" = "0x00" # Use TD3/TR3 as data source for Temp3 |
| register "temp4_source_select" = "0x00" # Use TD4/TR4 as data source for Temp4 |
| register "temp5_source_select" = "0x00" # Use TR5 as data source for Temp5 |
| register "temp6_source_select" = "0x00" # Use TR6 as data source for Temp6 |
| register "tr1_critical_temperature" = "85" # Set TD1/TR1 critical temperature to 85°C |
| register "tr1_critical_hysteresis" = "80" # Set TD1/TR1 critical hysteresis temperature to 80°C |
| register "tr1_warning_temperature" = "70" # Set TD1/TR1 warning temperature to 70°C |
| register "tr1_warning_hysteresis" = "65" # Set TD1/TR1 warning hysteresis temperature to 65°C |
| register "dts_critical_temperature" = "85" # Set DTS (CPU) critical temperature to 85°C |
| register "dts_critical_hysteresis" = "80" # Set DTS (CPU) critical hysteresis temperature to 80°C |
| register "dts_warning_temperature" = "70" # Set DTS (CPU) warning temperature to 70°C |
| register "dts_warning_hysteresis" = "65" # Set DTS (CPU) warning hysteresis temperature to 65°C |
| register "temp1_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp2_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp3_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp4_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp5_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp6_critical_temperature" = "80" # Set Temp1 critical temperature to 80°C |
| register "temp1_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "temp2_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "temp3_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "temp4_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "temp5_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "temp6_target_temperature" = "80" # Set Temp1 target temperature to 80°C |
| register "fan1_nonstop" = "7" # Set Fan 1 minimum speed |
| register "fan2_nonstop" = "7" # Set Fan 2 minimum speed |
| register "fan3_nonstop" = "7" # Set Fan 3 minimum speed |
| register "fan4_nonstop" = "7" # Set Fan 4 minimum speed |
| register "fan5_nonstop" = "7" # Set Fan 5 minimum speed |
| register "fan6_nonstop" = "7" # Set Fan 6 minimum speed |
| register "fan7_nonstop" = "7" # Set Fan 7 minimum speed |
| register "fan8_nonstop" = "7" # Set Fan 8 minimum speed |
| register "default_speed" = "100" # All fans to full speed on power up |
| register "fan1_duty" = "100" # Fan 1 to full speed |
| register "fan2_duty" = "100" # Fan 2 to full speed |
| register "fan3_duty" = "100" # Fan 3 to full speed |
| register "fan4_duty" = "100" # Fan 4 to full speed |
| register "fan5_duty" = "100" # Fan 5 to full speed |
| register "fan6_duty" = "100" # Fan 6 to full speed |
| register "fan7_duty" = "100" # Fan 7 to full speed |
| register "fan8_duty" = "100" # Fan 8 to full speed |
| register "vcore1_high_limit_mv" = "1500" # VCORE1 (Node 0) high limit to 1.5V |
| register "vcore1_low_limit_mv" = "900" # VCORE1 (Node 0) low limit to 0.9V |
| register "vcore2_high_limit_mv" = "1500" # VCORE2 (Node 1) high limit to 1.5V |
| register "vcore2_low_limit_mv" = "900" # VCORE2 (Node 1) low limit to 0.9V |
| register "vsen3_high_limit_mv" = "1600" # VSEN1 (Node 0 RAM voltage) high limit to 1.6V |
| register "vsen3_low_limit_mv" = "1100" # VSEN1 (Node 0 RAM voltage) low limit to 1.1V |
| register "vsen4_high_limit_mv" = "1600" # VSEN2 (Node 1 RAM voltage) high limit to 1.6V |
| register "vsen4_low_limit_mv" = "1100" # VSEN2 (Node 1 RAM voltage) low limit to 1.1V |
| register "vsen5_high_limit_mv" = "1250" # VSEN5 (Node 0 HT link voltage) high limit to 1.25V |
| register "vsen5_low_limit_mv" = "1150" # VSEN5 (Node 0 HT link voltage) low limit to 1.15V |
| register "vsen6_high_limit_mv" = "1250" # VSEN6 (Node 1 HT link voltage) high limit to 1.25V |
| register "vsen6_low_limit_mv" = "1150" # VSEN6 (Node 1 HT link voltage) low limit to 1.15V |
| register "vsen7_high_limit_mv" = "1150" # VSEN7 (Northbridge core voltage) high limit to 1.15V |
| register "vsen7_low_limit_mv" = "1050" # VSEN7 (Northbridge core voltage) low limit to 1.05V |
| register "vsen8_high_limit_mv" = "1900" # VSEN8 (+1.8V) high limit to 1.9V |
| register "vsen8_low_limit_mv" = "1700" # VSEN8 (+1.8V) low limit to 1.7V |
| register "vsen9_high_limit_mv" = "1250" # VSEN9 (+1.2V) high limit to 1.25V |
| register "vsen9_low_limit_mv" = "1150" # VSEN9 (+1.2V) low limit to 1.15V |
| register "vsen10_high_limit_mv" = "1150" # VSEN10 (+1.1V) high limit to 1.15V |
| register "vsen10_low_limit_mv" = "1050" # VSEN10 (+1.1V) low limit to 1.05V |
| register "vsen11_high_limit_mv" = "1625" # VSEN11 (5VSB, scaling factor ~3.2) high limit to 5.2V |
| register "vsen11_low_limit_mv" = "1500" # VSEN11 (5VSB, scaling factor ~3.2) low limit to 4.8V |
| register "vsen12_high_limit_mv" = "1083" # VSEN12 (+12V, scaling factor ~12) high limit to 13V |
| register "vsen12_low_limit_mv" = "917" # VSEN12 (+12V, scaling factor ~12) low limit to 11V |
| register "vsen13_high_limit_mv" = "1625" # VSEN13 (+5V, scaling factor ~3.2) high limit to 5.2V |
| register "vsen13_low_limit_mv" = "1500" # VSEN13 (+5V, scaling factor ~3.2) low limit to 4.8V |
| register "vdd_high_limit_mv" = "3500" # 3VDD high limit to 3.5V |
| register "vdd_low_limit_mv" = "3100" # 3VDD low limit to 3.1V |
| register "vsb_high_limit_mv" = "3500" # 3VSB high limit to 3.5V |
| register "vsb_low_limit_mv" = "3100" # 3VSB low limit to 3.1V |
| register "vbat_high_limit_mv" = "3500" # VBAT (+3V) high limit to 3.5V |
| register "vbat_low_limit_mv" = "2500" # VBAT (+3V) low limit to 2.5V |
| register "smbus_aux" = "0" # Device located on primary SMBUS |
| device pnp 5e on #hwm |
| end |
| end #drivers/i2c/w83795 |
| end # LPC |
| device pci 14.4 on end # PCI 0x4384 |
| device pci 14.5 on end # USB 3 |
| register "boot_switch_sata_ide" = "0" # 0: boot from SATA. 1: IDE |
| end # southbridge/amd/cimx/sb700 |
| end # device pci 18.0 |
| |
| device pci 18.1 on end |
| device pci 18.2 on end |
| device pci 18.3 on end |
| device pci 18.4 on end |
| device pci 18.5 on end #f15 |
| |
| register "spdAddrLookup" = " |
| { |
| { {0xA0, 0xA4, 0xA8}, {0xA2, 0xA6, 0xAA}, }, // socket 0 |
| { {0xA0, 0xA4, 0xA8}, {0xA2, 0xA6, 0xAA}, }, // socket 1 |
| }" |
| end #chip northbridge/amd/agesa/family15 # CPU side of HT root complex |
| end #domain |
| end #northbridge/amd/agesa/family15/root_complex |