summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Griffith <Bruce.Griffith@se-eng.com>2014-08-31 22:40:57 -0600
committerBruce Griffith <Bruce.Griffith@se-eng.com>2014-09-04 12:28:29 +0200
commit230fe0ef2f2e565a1b67ffea946d77c3c24ac0d4 (patch)
tree8766b427c1b27b7de1f4011cbdfe01804f78e7d2
parentd13e2c4ab769e526e6b2c0ae568bd84b34688c58 (diff)
downloadcoreboot-230fe0ef2f2e565a1b67ffea946d77c3c24ac0d4.tar.xz
AMD Steppe Eagle: Disable "No Snoop Enable" to stop HDMI audio stutter
Ubuntu's HDMI audio has noise and echo. Disable NoSnoopEnable can resolve this issue. The posted amd_late_init.c northbridge code is missing a test for Steppe Eagle northbridges. See coreboot Gerrit change 3934, commit ID 4ca721399c (AMD Olive Hill: Disable NoSnoopEnable to fix HDMI audio corruptions with Ubuntu). Change-Id: I89894d0ce4ad72ea16d61b445edb9e67920bca24 Signed-off-by: Bruce Griffith <Bruce.Griffith@se-eng.com> Reviewed-on: http://review.coreboot.org/6822 Tested-by: build bot (Jenkins) Reviewed-by: WANG Siyuan <wangsiyuanbuaa@gmail.com> Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
-rw-r--r--src/cpu/amd/agesa/amd_late_init.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/cpu/amd/agesa/amd_late_init.c b/src/cpu/amd/agesa/amd_late_init.c
index faba328eea..c7927dc7c1 100644
--- a/src/cpu/amd/agesa/amd_late_init.c
+++ b/src/cpu/amd/agesa/amd_late_init.c
@@ -20,8 +20,11 @@
#include <arch/acpi.h>
#include <bootstate.h>
#include <console/console.h>
+#include <device/device.h>
+#include <device/pci_def.h>
+#include <device/pci_ops.h>
-#include "agesawrapper.h"
+#include <agesawrapper.h>
#include <northbridge/amd/agesa/agesawrapper_call.h>
#if IS_ENABLED(CONFIG_HUDSON_IMC_FWM)
@@ -31,6 +34,9 @@
#include <sb_cimx.h>
#endif
+#define NORTHBRIDGE_00700F00 IS_ENABLED(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY_16KB)
+#define NORTHBRIDGE_00730F01 IS_ENABLED(CONFIG_NORTHBRIDGE_AMD_AGESA_00730F01)
+
static void agesawrapper_post_device(void *unused)
{
if (acpi_is_wakeup_s3())
@@ -38,7 +44,7 @@ static void agesawrapper_post_device(void *unused)
AGESAWRAPPER(amdinitlate);
-#if IS_ENABLED(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY_16KB)
+#if (NORTHBRIDGE_00700F00) || (NORTHBRIDGE_00730F01)
device_t dev;
u32 value;
dev = dev_find_slot(0, PCI_DEVFN(0, 0)); /* clear IoapicSbFeatureEn */