Vladimir Serbinenko (phcoder(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4774
-gerrit
commit bfa57c7582a516ff0d7fa03949acefb92dc70bd2
Author: Vladimir Serbinenko <phcoder(a)gmail.com>
Date: Thu Jan 23 09:06:08 2014 +0100
lenovo: Handle EEPROM/RFID chip.
EEPROM/RFID chip present in thinkpad should be locked in a way to avoid
any potential RFID access.
Read serial number, UUID and P/N from EEPROM.
This info is stored on AT24RF08 chip acessible through SMBUS.
Change-Id: Ia3e766d90a094f63c8c854cd37e165221ccd8acd
Signed-off-by: Vladimir Serbinenko <phcoder(a)gmail.com>
---
src/drivers/i2c/Makefile.inc | 1 +
src/drivers/i2c/lenovo/Makefile.inc | 1 +
src/drivers/i2c/lenovo/eeprom.c | 167 ++++++++++++++++++++++++++++++++
src/mainboard/lenovo/t60/devicetree.cb | 25 +++++
src/mainboard/lenovo/x201/devicetree.cb | 25 +++++
src/mainboard/lenovo/x230/devicetree.cb | 28 +++++-
src/mainboard/lenovo/x60/devicetree.cb | 26 ++++-
7 files changed, 271 insertions(+), 2 deletions(-)
diff --git a/src/drivers/i2c/Makefile.inc b/src/drivers/i2c/Makefile.inc
index ef7ac4b..2cd1db0 100644
--- a/src/drivers/i2c/Makefile.inc
+++ b/src/drivers/i2c/Makefile.inc
@@ -7,3 +7,4 @@ subdirs-y += lm63
subdirs-y += rtd2132
subdirs-y += w83795
subdirs-y += w83793
+subdirs-y += lenovo
diff --git a/src/drivers/i2c/lenovo/Makefile.inc b/src/drivers/i2c/lenovo/Makefile.inc
new file mode 100644
index 0000000..87f0dbf
--- /dev/null
+++ b/src/drivers/i2c/lenovo/Makefile.inc
@@ -0,0 +1 @@
+ramstage-$(CONFIG_VENDOR_LENOVO) += eeprom.c
diff --git a/src/drivers/i2c/lenovo/eeprom.c b/src/drivers/i2c/lenovo/eeprom.c
new file mode 100644
index 0000000..1a8512c
--- /dev/null
+++ b/src/drivers/i2c/lenovo/eeprom.c
@@ -0,0 +1,167 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2013 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.
+ *
+ * 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
+ */
+
+#include <types.h>
+#include <string.h>
+#include <arch/io.h>
+#include <device/device.h>
+#include <device/smbus.h>
+#include <smbios.h>
+#include <console/console.h>
+
+static void smbus_read_string(device_t dev, u8 start, u8 len, char *result)
+{
+ int i;
+
+ for (i = 0; i < len; i++) {
+ int t = smbus_read_byte(dev, start + i);
+ if (t < 0x20 || t > 0x7f) {
+ memcpy(result, "*INVALID*", sizeof ("*INVALID*"));
+ return;
+ }
+ result[i] = t;
+ }
+}
+
+const char *smbios_mainboard_serial_number(void)
+{
+ static char result[12];
+ static int already_read;
+ device_t dev;
+
+ if (already_read)
+ return result;
+
+ memset(result, 0, sizeof (result));
+
+ dev = dev_find_slot_on_smbus(1, 0x54);
+ if (dev == 0) {
+ printk(BIOS_WARNING, "eeprom not found\n");
+ already_read = 1;
+ return result;
+ }
+
+ smbus_read_string(dev, 0x2e, 7, result);
+ already_read = 1;
+ return result;
+}
+
+const char *smbios_mainboard_product_name(void)
+{
+ static char result[12];
+ static int already_read;
+ device_t dev;
+
+ if (already_read)
+ return result;
+ memset (result, 0, sizeof (result));
+
+ dev = dev_find_slot_on_smbus(1, 0x54);
+ if (dev == 0) {
+ printk(BIOS_WARNING, "eeprom not found\n");
+ already_read = 1;
+ return result;
+ }
+
+ smbus_read_string(dev, 0x27, 7, result);
+
+ already_read = 1;
+ return result;
+}
+
+void smbios_mainboard_set_uuid(u8 *uuid)
+{
+ static char result[16];
+ unsigned i;
+ static int already_read;
+ device_t dev;
+ const int remap[16] = {
+ /* UUID byteswap. */
+ 3, 2, 1, 0, 5, 4, 7, 6, 8, 9, 10, 11, 12, 13, 14, 15
+ };
+
+
+ if (already_read) {
+ memcpy (uuid, result, 16);
+ return;
+ }
+
+ memset (result, 0, sizeof (result));
+
+ dev = dev_find_slot_on_smbus(1, 0x56);
+ if (dev == 0) {
+ printk(BIOS_WARNING, "eeprom not found\n");
+ already_read = 1;
+ memset (uuid, 0, 16);
+ return;
+ }
+
+ for (i = 0; i < 16; i++) {
+ int t = smbus_read_byte(dev, 0x12 + i);
+ if (t < 0) {
+ memset (result, 0, sizeof (result));
+ break;
+ }
+ result[remap[i]] = t;
+ }
+
+ already_read = 1;
+
+ memcpy (uuid, result, 16);
+}
+
+static void lenovo_eeprom_init(device_t dev)
+{
+ int i;
+
+ if (!dev->enabled)
+ return;
+
+ /* Ensure that EEPROM/RFID chip is not accessible through RFID.
+ Need to do it only on 5c. */
+ if (dev->path.type != DEVICE_PATH_I2C || dev->path.i2c.device != 0x5c)
+ return;
+
+ printk (BIOS_DEBUG, "Locking EEPROM RFID\n");
+
+ for (i = 0; i < 8; i++)
+ smbus_write_byte(dev, i, 0x0f);
+ printk (BIOS_DEBUG, "init EEPROM done\n");
+}
+
+static void lenovo_eeprom_noop(device_t dummy)
+{
+}
+
+static struct device_operations lenovo_eeprom_operations = {
+ .read_resources = lenovo_eeprom_noop,
+ .set_resources = lenovo_eeprom_noop,
+ .enable_resources = lenovo_eeprom_noop,
+ .init = lenovo_eeprom_init,
+};
+
+static void enable_dev(device_t dev)
+{
+ dev->ops = &lenovo_eeprom_operations;
+}
+
+struct chip_operations drivers_i2c_lenovo_ops = {
+ CHIP_NAME("Lenovo EEPROM")
+ .enable_dev = enable_dev,
+};
diff --git a/src/mainboard/lenovo/t60/devicetree.cb b/src/mainboard/lenovo/t60/devicetree.cb
index 899ea5a..3e8d531 100644
--- a/src/mainboard/lenovo/t60/devicetree.cb
+++ b/src/mainboard/lenovo/t60/devicetree.cb
@@ -213,6 +213,31 @@ chip northbridge/intel/i945
register "reg11" = "0x07"
device i2c 69 on end
end
+ # eeprom, 8 virtual devices, same chip
+ chip drivers/i2c/lenovo
+ device i2c 54 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 55 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 56 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 57 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5c on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5d on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5e on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5f on end
+ end
end
end
end
diff --git a/src/mainboard/lenovo/x201/devicetree.cb b/src/mainboard/lenovo/x201/devicetree.cb
index a8831c2..0502ad7 100644
--- a/src/mainboard/lenovo/x201/devicetree.cb
+++ b/src/mainboard/lenovo/x201/devicetree.cb
@@ -145,6 +145,31 @@ chip northbridge/intel/nehalem
end
device pci 1f.3 on # SMBUS
subsystemid 0x17aa 0x2167
+ # eeprom, 8 virtual devices, same chip
+ chip drivers/i2c/lenovo
+ device i2c 54 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 55 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 56 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 57 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5c on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5d on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5e on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5f on end
+ end
end
end
end
diff --git a/src/mainboard/lenovo/x230/devicetree.cb b/src/mainboard/lenovo/x230/devicetree.cb
index 3650b38..5e12151 100644
--- a/src/mainboard/lenovo/x230/devicetree.cb
+++ b/src/mainboard/lenovo/x230/devicetree.cb
@@ -127,7 +127,33 @@ chip northbridge/intel/sandybridge
end
end # LPC bridge
device pci 1f.2 on end # SATA Controller 1
- device pci 1f.3 on end # SMBus
+ device pci 1f.3 on
+ # eeprom, 8 virtual devices, same chip
+ chip drivers/i2c/lenovo
+ device i2c 54 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 55 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 56 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 57 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5c on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5d on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5e on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5f on end
+ end
+ end # SMBus
device pci 1f.5 off end # SATA Controller 2
device pci 1f.6 on end # Thermal
end
diff --git a/src/mainboard/lenovo/x60/devicetree.cb b/src/mainboard/lenovo/x60/devicetree.cb
index cfbb9db..5057f2e 100644
--- a/src/mainboard/lenovo/x60/devicetree.cb
+++ b/src/mainboard/lenovo/x60/devicetree.cb
@@ -190,7 +190,31 @@ chip northbridge/intel/i945
register "reg11" = "0x07"
device i2c 69 on end
end
-
+ # eeprom, 8 virtual devices, same chip
+ chip drivers/i2c/lenovo
+ device i2c 54 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 55 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 56 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 57 on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5c on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5d on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5e on end
+ end
+ chip drivers/i2c/lenovo
+ device i2c 5f on end
+ end
end
end
chip southbridge/ricoh/rl5c476
Edward O'Callaghan (eocallaghan(a)alterapraxis.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4801
-gerrit
commit 385467860e43ca2db8a4ba07f49799cc83d289ab
Author: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
Date: Sat Jan 25 21:46:10 2014 +1100
Jetway NF81-T56N-LF [2/2]: actually implement mainboard support.
Step 2: change the Persimmon code to adapt it to the new board's hardware.
The NF81-T56N-LF is a IPC form factor embedded board:
- AMD Fusion G-T56N (1.65 GHz dual core) APU
- 2x SO-DIMM sockets for DDR3 800-1066 SDRAM (1.5 or 1.35V)?
- VGA and LVDS (via Analogix ANX3110)
- AMD A55E (Hudson-E1) southbridge
- 6x USB 2.0/1.1 ports
- 5x SATA3 6Gb/s, 1x mSATA socket
- 6-Channel HD Audio (via VIA VT1705)??
- PCI and ISA (via ITE IT8888)??
- NEC uPD78F0532 microcontroller on I2C ("SEMA")??
- 2x RJ45 GbE (via Realtek RTL8111E x2)
- Fintek F71869AD Super I/O
- PS/2 KB/MS port
- RS232 header (via Unisonic UTC 75232 RS232 driver/receiver)
- GPIO header
- CIR header
- 1x MXIC MX25L1606E (SO8, soldered) 16 Mbit SPI flash (BIOS)
Note: MX25L1606E is 16Mbit, 8bits in a byte, so 2MB. Jetway *lies*
claiming the SPI flash is 16MB. They also use red pen over the chip
so you wont see this deceit.
Change-Id: I03ccc58bc782e800aeef0d19679ce060277b0c04
Signed-off-by: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
---
src/mainboard/jetway/Kconfig | 3 +++
src/mainboard/jetway/nf81-t56n-lf/Kconfig | 18 ++++++++++--------
src/mainboard/jetway/nf81-t56n-lf/board_info.txt | 5 +++--
src/mainboard/jetway/nf81-t56n-lf/devicetree.cb | 14 ++++++++------
src/mainboard/jetway/nf81-t56n-lf/platform_cfg.h | 3 +++
src/mainboard/jetway/nf81-t56n-lf/romstage.c | 7 ++++---
6 files changed, 31 insertions(+), 19 deletions(-)
diff --git a/src/mainboard/jetway/Kconfig b/src/mainboard/jetway/Kconfig
index 7e6e29d..5b55daa 100644
--- a/src/mainboard/jetway/Kconfig
+++ b/src/mainboard/jetway/Kconfig
@@ -11,6 +11,8 @@ config BOARD_JETWAY_J7F4K1G5D
bool "J7F4K1G5D"
config BOARD_JETWAY_PA78VM5
bool "PA78VM5 (Fam10)"
+config BOARD_JETWAY_NF81_T56N_LF
+ bool "NF81_T56N_LF"
endchoice
@@ -18,6 +20,7 @@ source "src/mainboard/jetway/j7f2/Kconfig"
source "src/mainboard/jetway/j7f4k1g2e/Kconfig"
source "src/mainboard/jetway/j7f4k1g5d/Kconfig"
source "src/mainboard/jetway/pa78vm5/Kconfig"
+source "src/mainboard/jetway/nf81-t56n-lf/Kconfig"
config MAINBOARD_VENDOR
string
diff --git a/src/mainboard/jetway/nf81-t56n-lf/Kconfig b/src/mainboard/jetway/nf81-t56n-lf/Kconfig
index febd8dd..d602ffa 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/Kconfig
+++ b/src/mainboard/jetway/nf81-t56n-lf/Kconfig
@@ -2,6 +2,7 @@
# This file is part of the coreboot project.
#
# Copyright (C) 2011 Advanced Micro Devices, Inc.
+# Copyright (C) 2014 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>.
#
# 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
@@ -17,7 +18,7 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
-if BOARD_AMD_PERSIMMON
+if BOARD_JETWAY_NF81_T56N_LF
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
@@ -25,22 +26,23 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select CPU_AMD_AGESA_FAMILY14
select NORTHBRIDGE_AMD_AGESA_FAMILY14
select SOUTHBRIDGE_AMD_CIMX_SB800
- select SUPERIO_FINTEK_F81865F
+ select SUPERIO_FINTEK_F71869AD
select HAVE_OPTION_TABLE
select HAVE_PIRQ_TABLE
select HAVE_MP_TABLE
- select HAVE_ACPI_RESUME
+# FIXME: Disable S3 for now. Enable by default once stabilised.
+# select HAVE_ACPI_RESUME
select SB_HT_CHAIN_UNITID_OFFSET_ONLY
select LIFT_BSP_APIC_ID
select SERIAL_CPU_INIT
select AMDMCT
select HAVE_ACPI_TABLES
- select BOARD_ROMSIZE_KB_4096
+ select BOARD_ROMSIZE_KB_2048
select GFXUMA
config MAINBOARD_DIR
string
- default amd/persimmon
+ default jetway/nf81-t56n-lf
config APIC_ID_OFFSET
hex
@@ -48,7 +50,7 @@ config APIC_ID_OFFSET
config MAINBOARD_PART_NUMBER
string
- default "Persimmon"
+ default "NF81-T56N-LF"
config HW_MEM_HOLE_SIZEK
hex
@@ -101,7 +103,7 @@ config VGA_BIOS
config VGA_BIOS_ID
string
- default "1002,9802"
+ default "1002,9806" # FUSION_G_T56N
config SB800_AHCI_ROM
bool
@@ -111,4 +113,4 @@ config DRIVERS_PS2_KEYBOARD
bool
default n
-endif # BOARD_AMD_PERSIMMON
+endif # BOARD_JETWAY_NF81_T56N_LF
diff --git a/src/mainboard/jetway/nf81-t56n-lf/board_info.txt b/src/mainboard/jetway/nf81-t56n-lf/board_info.txt
index 85cb19a..6748751 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/board_info.txt
+++ b/src/mainboard/jetway/nf81-t56n-lf/board_info.txt
@@ -1,5 +1,6 @@
-Board name: DBFT1-00-EVAL-KT (Persimmon)
-Category: eval
+Board URL: http://www.jetway.com.tw/jw/ipcboard_view.asp?productid=822&proname=NF81-T5…
+Category: Mini-ITX
+ROM package: SOIC8
ROM protocol: SPI
ROM socketed: n
Flashrom support: y
diff --git a/src/mainboard/jetway/nf81-t56n-lf/devicetree.cb b/src/mainboard/jetway/nf81-t56n-lf/devicetree.cb
index 8b1acd5..4f6006a 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/devicetree.cb
+++ b/src/mainboard/jetway/nf81-t56n-lf/devicetree.cb
@@ -2,6 +2,7 @@
# This file is part of the coreboot project.
#
# Copyright (C) 2011 Advanced Micro Devices, Inc.
+# Copyright (C) 2014 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>.
#
# 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
@@ -29,6 +30,7 @@ chip northbridge/amd/agesa/family14/root_complex
chip northbridge/amd/agesa/family14 # PCI side of HT root complex
device pci 0.0 on end # Root Complex
device pci 1.0 on end # Internal Graphics P2P bridge 0x980[2456]
+ device pci 1.1 on end # Internal Audio P2P bridge 0x1314
device pci 4.0 on end # PCIE P2P bridge on-board NIC
device pci 5.0 off end # PCIE P2P bridge
device pci 6.0 on end # PCIE P2P bridge PCIe slot
@@ -53,7 +55,7 @@ chip northbridge/amd/agesa/family14/root_complex
device pci 14.1 on end # IDE 0x439c
device pci 14.2 on end # HDA 0x4383
device pci 14.3 on # LPC 0x439d
- chip superio/fintek/f81865f
+ chip superio/fintek/f71869ad
device pnp 4e.0 off # Floppy
io 0x60 = 0x3f0
irq 0x70 = 6
@@ -76,17 +78,17 @@ chip northbridge/amd/agesa/family14/root_complex
io 0x60 = 0x2f8
irq 0x70 = 3
end
- end # f81865f
+ end # f71869ad
end #LPC
device pci 14.4 on end # PCIB 0x4384, NOTE: PCI interface pins shared with GPIO {GPIO 35:0}
- device pci 14.5 off end # OHCI FS/LS USB
+ device pci 14.5 on end # OHCI FS/LS USB (0x4399)
device pci 14.6 off end # Hudson-E1 GbE MAC: Broadcom BCM5785 (14E4:1699)
- device pci 15.0 off end # PCIe PortA
+ device pci 15.0 on end # PCIe PortA (0x43a0) GbE MAC: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 (10ec:8168)
device pci 15.1 off end # PCIe PortB
device pci 15.2 off end # PCIe PortC
device pci 15.3 off end # PCIe PortD
- device pci 16.0 off end # OHCI USB 10-13
- device pci 16.2 off end # EHCI USB 10-13
+ device pci 16.0 on end # OHCI USB 10-13 (0x4397)
+ device pci 16.2 on end # EHCI USB 10-13 (0x4396)
register "gpp_configuration" = "0" #4:0:0:0 (really need to disable all 4 somehow)
register "boot_switch_sata_ide" = "0" # 0: boot from SATA. 1: IDE
diff --git a/src/mainboard/jetway/nf81-t56n-lf/platform_cfg.h b/src/mainboard/jetway/nf81-t56n-lf/platform_cfg.h
index 0578e27..e638892 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/platform_cfg.h
+++ b/src/mainboard/jetway/nf81-t56n-lf/platform_cfg.h
@@ -2,6 +2,7 @@
* This file is part of the coreboot project.
*
* Copyright (C) 2011 Advanced Micro Devices, Inc.
+ * Copyright (C) 2014 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>.
*
* 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
@@ -227,6 +228,7 @@
*/
#define GEC_CONFIG 0
+/* FIXME: Verify this for sound to work! */
static const CODECENTRY persimmon_codec_alc269[] =
{
/* NID, PinConfig */
@@ -244,6 +246,7 @@ static const CODECENTRY persimmon_codec_alc269[] =
{0xff, 0xffffffff} /* end of table */
};
+/* FIXME: Verify this for sound to work! */
static const CODECTBLLIST codec_tablelist[] =
{
{0x010ec0269, (CODECENTRY*)&persimmon_codec_alc269[0]},
diff --git a/src/mainboard/jetway/nf81-t56n-lf/romstage.c b/src/mainboard/jetway/nf81-t56n-lf/romstage.c
index 98c64ed..f8271f7 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/romstage.c
+++ b/src/mainboard/jetway/nf81-t56n-lf/romstage.c
@@ -2,6 +2,7 @@
* This file is part of the coreboot project.
*
* Copyright (C) 2011 Advanced Micro Devices, Inc.
+ * Copyright (C) 2014 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>.
*
* 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
@@ -31,7 +32,7 @@
#include <cpu/x86/mtrr.h>
#include "agesawrapper.h"
#include "cpu/x86/bist.h"
-#include "superio/fintek/f81865f/f81865f_early_serial.c"
+#include "superio/fintek/f71869ad/f71869ad.h"
#include "cpu/x86/lapic.h"
#include "drivers/pc80/i8254.c"
#include "drivers/pc80/i8259.c"
@@ -45,7 +46,7 @@
void disable_cache_as_ram(void); /* cache_as_ram.inc */
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx);
-#define SERIAL_DEV PNP_DEV(0x4e, F81865F_SP1)
+#define SERIAL_DEV PNP_DEV(0x4e, F71869AD_SP1)
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
{
@@ -70,7 +71,7 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
sb_Poweron_Init();
post_code(0x31);
- f81865f_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
+ f71869ad_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
console_init();
}