summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cpu/amd/agesa/amd_late_init.c8
-rw-r--r--src/southbridge/amd/agesa/hudson/hudson.c12
2 files changed, 11 insertions, 9 deletions
diff --git a/src/cpu/amd/agesa/amd_late_init.c b/src/cpu/amd/agesa/amd_late_init.c
index c7927dc7c1..cab03a3096 100644
--- a/src/cpu/amd/agesa/amd_late_init.c
+++ b/src/cpu/amd/agesa/amd_late_init.c
@@ -27,9 +27,6 @@
#include <agesawrapper.h>
#include <northbridge/amd/agesa/agesawrapper_call.h>
-#if IS_ENABLED(CONFIG_HUDSON_IMC_FWM)
-#include <southbridge/amd/agesa/hudson/imc.h>
-#endif
#if CONFIG_AMD_SB_CIMX
#include <sb_cimx.h>
#endif
@@ -58,11 +55,6 @@ static void agesawrapper_post_device(void *unused)
pci_write_config32(dev, 0x60, value);
#endif
-#if IS_ENABLED(CONFIG_HUDSON_IMC_FWM)
- /* AMD AGESA does not enable thermal zone, so we enable it here. */
- enable_imc_thermal_zone();
-#endif
-
#if CONFIG_AMD_SB_CIMX
sb_Late_Post();
#endif
diff --git a/src/southbridge/amd/agesa/hudson/hudson.c b/src/southbridge/amd/agesa/hudson/hudson.c
index 0edca6eafe..f60dddb71f 100644
--- a/src/southbridge/amd/agesa/hudson/hudson.c
+++ b/src/southbridge/amd/agesa/hudson/hudson.c
@@ -28,6 +28,7 @@
#include <device/pci_ops.h>
#include <cbmem.h>
#include "hudson.h"
+#include "imc.h"
#include "smbus.h"
#include "smi.h"
@@ -161,8 +162,17 @@ static void hudson_init(void *chip_info)
hudson_init_acpi_ports();
}
+static void hudson_final(void *chip_info)
+{
+#if IS_ENABLED(CONFIG_HUDSON_IMC_FWM)
+ /* AMD AGESA does not enable thermal zone, so we enable it here. */
+ enable_imc_thermal_zone();
+#endif
+}
+
struct chip_operations southbridge_amd_agesa_hudson_ops = {
CHIP_NAME("ATI HUDSON")
.enable_dev = hudson_enable,
- .init = hudson_init
+ .init = hudson_init,
+ .final = hudson_final
};