diff options
author | Martin Roth <martin@se-eng.com> | 2012-12-05 16:07:11 -0700 |
---|---|---|
committer | Marc Jones <marcj303@gmail.com> | 2012-12-12 22:35:03 +0100 |
commit | e899e518d88f2f48927fba9006d02ea9e1e5a797 (patch) | |
tree | cc93e167283c3f5b3ab82725765bab058f5f6086 /src/southbridge/amd/cimx/sb800/Kconfig | |
parent | a17fd056d4b4fb373f7821ccca74a80de14fc618 (diff) | |
download | coreboot-e899e518d88f2f48927fba9006d02ea9e1e5a797.tar.xz |
SB800: Add IMC ROM and fan control.
Add configuration for AMD's IMC ROM and fan registers for cimx/sb800
platforms.
- Allows user to add the IMC rom to the build and to configure the
location of the "signature" between the allowed positions.
- Allows for no fan control, manual setup of SB800 Fan registers, or
setup of the IMC fan configuration registers.
- Register configuration is done through devicetree.cb. No files need
to be added for new platform configuration.
- Initial setup is for Persimmon, but may be extended to any cimx/sb800
platform.
Change-Id: Ib06408d794988cbb29eed6adbeeadea8b2629bae
Signed-off-by: Martin Roth <martin@se-eng.com>
Reviewed-on: http://review.coreboot.org/1977
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-by: Marc Jones <marcj303@gmail.com>
Diffstat (limited to 'src/southbridge/amd/cimx/sb800/Kconfig')
-rw-r--r-- | src/southbridge/amd/cimx/sb800/Kconfig | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/src/southbridge/amd/cimx/sb800/Kconfig b/src/southbridge/amd/cimx/sb800/Kconfig index 4ac2094d4d..2461d97fa4 100644 --- a/src/southbridge/amd/cimx/sb800/Kconfig +++ b/src/southbridge/amd/cimx/sb800/Kconfig @@ -130,5 +130,100 @@ config S3_VOLATILE_POS For a system with S3 feature, the BIOS needs to save some data to non-volitile storage at cold boot stage. +config SB800_IMC_FWM + bool "Add IMC firmware" + default n + help + Add SB800 / Hudson 1 IMC Firmware to support the onboard fan control. + Please contact AMD to obtain the related firmware. + +if SB800_IMC_FWM + +config SB800_IMC_FWM_FILE + string "IMC firmware path and filename" + default "3rdparty/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_FFE20000 + +endif #SB800_IMC_FWM + +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 |