Change-Id: Ib6a0f8a3beb3d02dfd90234b1af6eccd3cde21bb Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/41924 Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr> Reviewed-by: Mike Banon <mikebdp2@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
211 lines
5.6 KiB
Plaintext
211 lines
5.6 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
config SOUTHBRIDGE_AMD_CIMX_SB800
|
|
bool
|
|
default n
|
|
select IOAPIC
|
|
select HAVE_USBDEBUG_OPTIONS
|
|
select AMD_SB_CIMX
|
|
select HAVE_CF9_RESET
|
|
select HAVE_CF9_RESET_PREPARE
|
|
select COMMON_FADT
|
|
select SOC_AMD_COMMON
|
|
select SOC_AMD_COMMON_BLOCK
|
|
select SOC_AMD_COMMON_BLOCK_ACPIMMIO
|
|
|
|
if SOUTHBRIDGE_AMD_CIMX_SB800
|
|
config ENABLE_IDE_COMBINED_MODE
|
|
bool "Enable SATA IDE combined mode"
|
|
default n
|
|
help
|
|
If Combined Mode is enabled. IDE controller is exposed and
|
|
SATA controller has control over Port0 through Port3,
|
|
IDE controller has control over Port4 and Port5.
|
|
|
|
If Combined Mode is disabled, IDE controller is hidden and
|
|
SATA controller has full control of all 6 Ports when operating in non-IDE mode.
|
|
|
|
config IDE_COMBINED_MODE
|
|
hex
|
|
default 0x0 if ENABLE_IDE_COMBINED_MODE
|
|
default 0x1 if !ENABLE_IDE_COMBINED_MODE
|
|
|
|
choice
|
|
prompt "SATA Mode"
|
|
default SB800_SATA_AHCI
|
|
help
|
|
Select the mode in which SATA should be driven. NATIVE AHCI, or RAID.
|
|
The default is AHCI.
|
|
|
|
config SB800_SATA_IDE
|
|
bool "NATIVE"
|
|
help
|
|
NATIVE does not require a ROM.
|
|
|
|
config SB800_SATA_AHCI
|
|
bool "AHCI"
|
|
help
|
|
AHCI is the default and may work with or without AHCI ROM. It depends on the payload support.
|
|
For example, seabios does not require the AHCI ROM.
|
|
|
|
config SB800_SATA_RAID
|
|
bool "RAID"
|
|
help
|
|
sb800 RAID mode must have the two required ROM files.
|
|
|
|
endchoice
|
|
|
|
config SB800_SATA_MODE
|
|
hex
|
|
depends on (SB800_SATA_IDE || SB800_SATA_RAID || SB800_SATA_AHCI)
|
|
default 0x0 if SB800_SATA_IDE
|
|
default 0x1 if SB800_SATA_RAID
|
|
default 0x2 if SB800_SATA_AHCI
|
|
|
|
config SB_SUPERIO_HWM
|
|
bool
|
|
default n
|
|
|
|
if SB800_SATA_AHCI
|
|
config AHCI_ROM_ID
|
|
string "AHCI device PCI IDs"
|
|
default "1002,4391"
|
|
|
|
config SB800_AHCI_ROM
|
|
bool "Add a AHCI ROM"
|
|
|
|
config AHCI_ROM_FILE
|
|
string "AHCI ROM path and filename"
|
|
depends on SB800_AHCI_ROM
|
|
default "site-local/sb800/ahci.bin"
|
|
endif
|
|
|
|
if SB800_SATA_RAID
|
|
config RAID_ROM_ID
|
|
string "RAID device PCI IDs"
|
|
default "1002,4393"
|
|
help
|
|
1002,4392 for SATA NON-RAID5 module, 1002,4393 for SATA RAID5 mode
|
|
|
|
config RAID_ROM_FILE
|
|
string "RAID ROM path and filename"
|
|
depends on SB800_SATA_RAID
|
|
default "site-local/sb800/raid.bin"
|
|
|
|
config RAID_MISC_ROM_FILE
|
|
string "RAID Misc ROM path and filename"
|
|
default "site-local/sb800/misc.bin"
|
|
depends on SB800_SATA_RAID
|
|
|
|
config RAID_MISC_ROM_POSITION
|
|
hex "RAID Misc ROM Position"
|
|
default 0xFFF00000
|
|
depends on SB800_SATA_RAID
|
|
help
|
|
The RAID ROM requires that the MISC ROM is located between the range
|
|
0xFFF0_0000 to 0xFFF0_FFFF. Also, it must 1K bytes aligned.
|
|
The CONFIG_ROM_SIZE must larger than 0x100000.
|
|
|
|
endif
|
|
|
|
config SB800_IMC_FWM
|
|
bool "Add IMC firmware"
|
|
default n
|
|
select SPI_FLASH_HAS_VOLATILE_GROUP if SPI_FLASH
|
|
help
|
|
Add SB800 / Hudson 1 IMC Firmware to support the onboard fan control.
|
|
|
|
if SB800_IMC_FWM
|
|
|
|
config SB800_IMC_FWM_FILE
|
|
string "IMC firmware path and filename"
|
|
default "3rdparty/blobs/southbridge/amd/sb800/imc.bin"
|
|
|
|
choice
|
|
prompt "SB800 Firmware ROM Position"
|
|
|
|
config SB800_FWM_AT_FFFA0000
|
|
bool "0xFFFA0000"
|
|
help
|
|
The IMC and GEC ROMs requires a 'signature' located at one of several
|
|
fixed locations in memory. The location used shouldn't matter, just
|
|
select an area that doesn't conflict with anything else.
|
|
|
|
config SB800_FWM_AT_FFF20000
|
|
bool "0xFFF20000"
|
|
help
|
|
The IMC and GEC ROMs requires a 'signature' located at one of several
|
|
fixed locations in memory. The location used shouldn't matter, just
|
|
select an area that doesn't conflict with anything else.
|
|
|
|
config SB800_FWM_AT_FFE20000
|
|
depends on BOARD_ROMSIZE_KB_8192 || BOARD_ROMSIZE_KB_4096 || BOARD_ROMSIZE_KB_2048
|
|
bool "0xFFE20000"
|
|
help
|
|
The IMC and GEC ROMs requires a 'signature' located at one of several
|
|
fixed locations in memory. The location used shouldn't matter, just
|
|
select an area that doesn't conflict with anything else.
|
|
|
|
config SB800_FWM_AT_FFC20000
|
|
depends on BOARD_ROMSIZE_KB_8192 || BOARD_ROMSIZE_KB_4096
|
|
bool "0xFFC20000"
|
|
help
|
|
The IMC and GEC ROMs requires a 'signature' located at one of several
|
|
fixed locations in memory. The location used shouldn't matter, just
|
|
select an area that doesn't conflict with anything else.
|
|
|
|
config SB800_FWM_AT_FF820000
|
|
depends on BOARD_ROMSIZE_KB_8192
|
|
bool "0xFF820000"
|
|
help
|
|
The IMC and GEC ROMs requires a 'signature' located at one of several
|
|
fixed locations in memory. The location used shouldn't matter, just
|
|
select an area that doesn't conflict with anything else.
|
|
|
|
endchoice
|
|
|
|
config SB800_FWM_POSITION
|
|
hex
|
|
default 0xFFFA0000 if SB800_FWM_AT_FFFA0000
|
|
default 0xFFF20000 if SB800_FWM_AT_FFF20000
|
|
default 0xFFE20000 if SB800_FWM_AT_FFE20000
|
|
default 0xFFC20000 if SB800_FWM_AT_FFC20000
|
|
default 0xFF820000 if SB800_FWM_AT_FF820000
|
|
|
|
endif #SB800_IMC_FWM
|
|
|
|
config EHCI_BAR
|
|
hex
|
|
default 0xfef00000
|
|
|
|
choice
|
|
prompt "Fan Control"
|
|
default SB800_NO_FAN_CONTROL
|
|
help
|
|
Select the method of SB800 fan control to be used. None would be
|
|
for either fixed maximum speed fans connected to the SB800 or for
|
|
an external chip controlling the fan speeds. Manual control sets
|
|
up the SB800 fan control registers. IMC fan control uses the SB800
|
|
IMC to actively control the fan speeds.
|
|
|
|
config SB800_NO_FAN_CONTROL
|
|
bool "None"
|
|
help
|
|
No SB800 Fan control - Do not set up the SB800 fan control registers.
|
|
|
|
config SB800_MANUAL_FAN_CONTROL
|
|
bool "Manual"
|
|
help
|
|
Configure the SB800 fan control registers in devicetree.cb.
|
|
|
|
config SB800_IMC_FAN_CONTROL
|
|
bool "IMC Based"
|
|
depends on SB800_IMC_FWM
|
|
help
|
|
Set up the SB800 to use the IMC based Fan controller. This requires
|
|
the IMC ROM from AMD. Configure the registers in devicetree.cb.
|
|
|
|
endchoice
|
|
|
|
endif #SOUTHBRIDGE_AMD_CIMX_SB800
|