Vladimir Serbinenko (phcoder(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5167
-gerrit
commit 0dda03aad7a6475dd7b129bd2085a1658d87b358
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Sat Feb 8 19:00:54 2014 +0100
lenovo/x201: Fix order of SPI init.
The lock bit for UVSVC/LVSVC was set before both registers were programmed.
Change-Id: I000440db5c8dd2f260ebc1b69108b75621faf7b3
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
---
src/mainboard/lenovo/x201/mainboard.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mainboard/lenovo/x201/mainboard.c b/src/mainboard/lenovo/x201/mainboard.c
index 332b2aa..786d560 100644
--- a/src/mainboard/lenovo/x201/mainboard.c
+++ b/src/mainboard/lenovo/x201/mainboard.c
@@ -136,9 +136,9 @@ static void mainboard_init(device_t dev)
RCBA32(0x389c) = 0x0601209f;
RCBA32(0x38b0) = 0x00000004;
RCBA32(0x38b4) = 0x03040002;
- RCBA32(0x38c0) = 0x00000007;
- RCBA32(0x38c4) = 0x00802005;
RCBA32(0x38c8) = 0x00002005;
+ RCBA32(0x38c4) = 0x00802005;
+ RCBA32(0x38c0) = 0x00000007;
RCBA32(0x3804) = 0x3f04e008;
printk(BIOS_SPEW, "SPI configured\n");
the following patch was just integrated into master:
commit 25b55f3d1ceb4fdf67ffb29ed4080dfd5f4e5916
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Tue Mar 4 17:43:57 2014 +0100
lenovo/t60: Implement intel VGA callbacks.
Without it option ROM run results in just a black screen.
Change-Id: Id203f55ca0f02c290a3f40ac1ec7c5f23c5580bf
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
Reviewed-on: http://review.coreboot.org/5344
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki(a)gmail.com>
See http://review.coreboot.org/5344 for details.
-gerrit
Vladimir Serbinenko (phcoder(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5324
-gerrit
commit 4d48e3f764345c9a33cf017d9e29efb783086502
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Mon Mar 3 00:44:38 2014 +0100
apple/macbook21: Fix audio.
Change-Id: I0bb939ac377f84431d871b702fdb42651e9a2e96
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
---
src/mainboard/apple/macbook21/devicetree.cb | 2 +-
src/mainboard/apple/macbook21/hda_verb.h | 93 +++++++++++++++++++++++++++++
src/mainboard/apple/macbook21/mainboard.c | 6 ++
3 files changed, 100 insertions(+), 1 deletion(-)
diff --git a/src/mainboard/apple/macbook21/devicetree.cb b/src/mainboard/apple/macbook21/devicetree.cb
index d7814f4..66e5fa4 100644
--- a/src/mainboard/apple/macbook21/devicetree.cb
+++ b/src/mainboard/apple/macbook21/devicetree.cb
@@ -71,7 +71,7 @@ chip northbridge/intel/i945
register "c4onc3_enable" = "1"
device pci 1b.0 on # Audio Cnotroller
- subsystemid 0x17aa 0x2010
+ subsystemid 0x8384 0x7680
end
device pci 1c.0 on end # Ethernet
device pci 1c.1 on end # Atheros WLAN
diff --git a/src/mainboard/apple/macbook21/hda_verb.h b/src/mainboard/apple/macbook21/hda_verb.h
new file mode 100644
index 0000000..4e1687d
--- /dev/null
+++ b/src/mainboard/apple/macbook21/hda_verb.h
@@ -0,0 +1,93 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2014 Vladimir Serbinenko.
+ *
+ * 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,
+ * or (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+static const u32 mainboard_cim_verb_data[] = {
+ /* coreboot specific header */
+ 0x83847680, /* Codec Vendor / Device ID: SigmaTel STAC9221 A1 */
+ 0x106b2200, /* Subsystem ID */
+ 0x0000000B, /* Number of 4 dword sets */
+
+ /* NID 0x01: Subsystem ID. */
+ 0x00172000,
+ 0x00172122,
+ 0x0017226B,
+ 0x00172310,
+
+ /* NID 0x0A. */
+ 0x00A71C1F,
+ 0x00A71DE2,
+ 0x00A71E21,
+ 0x00A71F03,
+
+ /* NID 0x0B. */
+ 0x00B71C2E,
+ 0x00B71DE0,
+ 0x00B71EA1,
+ 0x00B71F03,
+
+ /* NID 0x0C. */
+ 0x00C71C10,
+ 0x00C71DE1,
+ 0x00C71E17,
+ 0x00C71F90,
+
+ /* NID 0x0D. */
+ 0x00D71C1F,
+ 0x00D71DE1,
+ 0x00D71E17,
+ 0x00D71F90,
+
+ /* NID 0x0E. */
+ 0x00E71CFE,
+ 0x00E71D00,
+ 0x00E71E00,
+ 0x00E71F40,
+
+ /* NID 0x0F */
+ 0x00F71C20,
+ 0x00F71DE0,
+ 0x00F71E81,
+ 0x00F71F03,
+
+ /* NID 0x10 */
+ 0x01071C30,
+ 0x01071DE2,
+ 0x01071E45,
+ 0x01071F13,
+
+ /* NID 0x11 */
+ 0x01171C40,
+ 0x01171DE2,
+ 0x01171EC5,
+ 0x01171F13,
+
+ /* NID 0x15 */
+ 0x01571CFC,
+ 0x01571D00,
+ 0x01571E00,
+ 0x01571F40,
+
+ /* NID 0x1B. */
+ 0x01B71CFB,
+ 0x01B71D00,
+ 0x01B71E00,
+ 0x01B71F40,
+
+};
diff --git a/src/mainboard/apple/macbook21/mainboard.c b/src/mainboard/apple/macbook21/mainboard.c
index 6bd3aec..9a025dd 100644
--- a/src/mainboard/apple/macbook21/mainboard.c
+++ b/src/mainboard/apple/macbook21/mainboard.c
@@ -34,8 +34,12 @@
#include <arch/x86/include/arch/acpigen.h>
#include <smbios.h>
#include <x86emu/x86emu.h>
+#include "hda_verb.h"
#define PANEL INT15_5F35_CL_DISPLAY_DEFAULT
+extern const u32 *cim_verb_data;
+extern u32 cim_verb_data_size;
+
#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
static int int15_handler(void)
{
@@ -83,6 +87,8 @@ static void mainboard_init(device_t dev)
static void mainboard_enable(device_t dev)
{
dev->ops->init = mainboard_init;
+ cim_verb_data = mainboard_cim_verb_data;
+ cim_verb_data_size = sizeof(mainboard_cim_verb_data);
}
struct chip_operations mainboard_ops = {