[coreboot-gerrit] New patch to review for coreboot: 30610d7 fintek/f81865f: Deprecate the C inclusion of early_serial.c

Alexandru Gagniuc (mr.nuke.me@gmail.com) gerrit at coreboot.org
Sat Jan 25 16:45:25 CET 2014


Alexandru Gagniuc (mr.nuke.me at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4807

-gerrit

commit 30610d75b1f01c314229e815920d7d49f1df88e6
Author: Alexandru Gagniuc <mr.nuke.me at gmail.com>
Date:   Sat Jan 25 09:40:54 2014 -0600

    fintek/f81865f: Deprecate the C inclusion of early_serial.c
    
    Including "early_serial.c" directly in romstage.c rather than
    compiling and linking it is a remnant of ROMCC. Modernize this by
    declaring "early_serial.c" as a Makefile.inc object, and no longer
    use it by direct inclusion.
    
    Change-Id: I40a6646fedaad5371983bfc6e6e990c4932ec9bd
    Signed-off-by: Alexandru Gagniuc <mr.nuke.me at gmail.com>
---
 src/mainboard/amd/persimmon/romstage.c            |  2 +-
 src/mainboard/amd/south_station/romstage.c        |  2 +-
 src/mainboard/via/epia-m850/Makefile.inc          | 22 +----------
 src/mainboard/via/epia-m850/romstage.c            |  4 +-
 src/superio/fintek/f81865f/Makefile.inc           |  1 +
 src/superio/fintek/f81865f/early_serial.c         | 48 +++++++++++++++++++++++
 src/superio/fintek/f81865f/f81865f.h              |  2 +
 src/superio/fintek/f81865f/f81865f_early_serial.c | 47 ----------------------
 8 files changed, 56 insertions(+), 72 deletions(-)

diff --git a/src/mainboard/amd/persimmon/romstage.c b/src/mainboard/amd/persimmon/romstage.c
index 98c64ed..e082f60 100644
--- a/src/mainboard/amd/persimmon/romstage.c
+++ b/src/mainboard/amd/persimmon/romstage.c
@@ -31,7 +31,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/f81865f/f81865f.h>
 #include "cpu/x86/lapic.h"
 #include "drivers/pc80/i8254.c"
 #include "drivers/pc80/i8259.c"
diff --git a/src/mainboard/amd/south_station/romstage.c b/src/mainboard/amd/south_station/romstage.c
index 20c973c..5614f88 100644
--- a/src/mainboard/amd/south_station/romstage.c
+++ b/src/mainboard/amd/south_station/romstage.c
@@ -32,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/f81865f/f81865f.h>
 #include "cpu/x86/lapic.h"
 #include <sb_cimx.h>
 #include "SBPLATFORM.h"
diff --git a/src/mainboard/via/epia-m850/Makefile.inc b/src/mainboard/via/epia-m850/Makefile.inc
index 9c6d31f..e9a0b69 100644
--- a/src/mainboard/via/epia-m850/Makefile.inc
+++ b/src/mainboard/via/epia-m850/Makefile.inc
@@ -1,21 +1 @@
-##
-## This file is part of the coreboot project.
-##
-## Copyright (C) 2011  Alexandru Gagniuc <mr.nuke.me at gmail.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
-## the Free Software Foundation, either 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, see <http://www.gnu.org/licenses/>.
-##
-
-#romstage-y += ./../../../superio/fintek/f81865f/f81865f_early_serial.c
-
+# Nothing interesting here yet
diff --git a/src/mainboard/via/epia-m850/romstage.c b/src/mainboard/via/epia-m850/romstage.c
index 262bee7..1114cf4 100644
--- a/src/mainboard/via/epia-m850/romstage.c
+++ b/src/mainboard/via/epia-m850/romstage.c
@@ -33,11 +33,11 @@
 #include <string.h>
 #include <timestamp.h>
 #include <console/cbmem_console.h>
+#include <superio/fintek/f81865f/f81865f.h>
 
 #include "northbridge/via/vx900/early_vx900.h"
 #include "northbridge/via/vx900/raminit.h"
-/* FIXME: This is the only .c include we couldn't get rid of */
-#include "superio/fintek/f81865f/f81865f_early_serial.c"
+
 
 #define SERIAL_DEV PNP_DEV(0x4e, 0x10)
 
diff --git a/src/superio/fintek/f81865f/Makefile.inc b/src/superio/fintek/f81865f/Makefile.inc
index 1700f7c..8afb286 100644
--- a/src/superio/fintek/f81865f/Makefile.inc
+++ b/src/superio/fintek/f81865f/Makefile.inc
@@ -18,4 +18,5 @@
 ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 ##
 
+romstage-$(CONFIG_SUPERIO_FINTEK_F81865F) += early_serial.c
 ramstage-$(CONFIG_SUPERIO_FINTEK_F81865F) += superio.c
diff --git a/src/superio/fintek/f81865f/early_serial.c b/src/superio/fintek/f81865f/early_serial.c
new file mode 100644
index 0000000..29b5f9d
--- /dev/null
+++ b/src/superio/fintek/f81865f/early_serial.c
@@ -0,0 +1,48 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2011 Advanced Micro Devices, Inc.
+ *
+ * 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; either 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
+ */
+
+/* Pre-RAM driver for the Fintek F81865F/FG Super I/O chip. */
+
+#include <arch/io.h>
+#include <device/pnp.h>
+#include "f81865f.h"
+
+static void pnp_enter_conf_state(device_t dev)
+{
+	u16 port = dev >> 8;
+	outb(0x87, port);
+	outb(0x87, port);
+}
+
+static void pnp_exit_conf_state(device_t dev)
+{
+	u16 port = dev >> 8;
+	outb(0xaa, port);
+}
+
+void f81865f_enable_serial(device_t dev, u16 iobase)
+{
+	pnp_enter_conf_state(dev);
+	pnp_set_logical_device(dev);
+	pnp_set_enable(dev, 0);
+	pnp_set_iobase(dev, PNP_IDX_IO0, iobase);
+	pnp_set_enable(dev, 1);
+	pnp_exit_conf_state(dev);
+}
diff --git a/src/superio/fintek/f81865f/f81865f.h b/src/superio/fintek/f81865f/f81865f.h
index 0c36571..7269b59 100644
--- a/src/superio/fintek/f81865f/f81865f.h
+++ b/src/superio/fintek/f81865f/f81865f.h
@@ -35,4 +35,6 @@
 #define	F81865F_GPIO	0x06	/* General Purpose I/O (GPIO) */
 #define	F81865F_PME	0x0a	/* Power Management Events (PME) */
 
+void f81865f_enable_serial(device_t dev, u16 iobase);
+
 #endif
diff --git a/src/superio/fintek/f81865f/f81865f_early_serial.c b/src/superio/fintek/f81865f/f81865f_early_serial.c
deleted file mode 100644
index 2989b5f..0000000
--- a/src/superio/fintek/f81865f/f81865f_early_serial.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Advanced Micro Devices, Inc.
- *
- * 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; either 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
- */
-
-/* Pre-RAM driver for the Fintek F81865F/FG Super I/O chip. */
-
-#include <arch/io.h>
-#include "f81865f.h"
-
-static void pnp_enter_conf_state(device_t dev)
-{
-	u16 port = dev >> 8;
-	outb(0x87, port);
-	outb(0x87, port);
-}
-
-static void pnp_exit_conf_state(device_t dev)
-{
-	u16 port = dev >> 8;
-	outb(0xaa, port);
-}
-
-static void f81865f_enable_serial(device_t dev, u16 iobase)
-{
-	pnp_enter_conf_state(dev);
-	pnp_set_logical_device(dev);
-	pnp_set_enable(dev, 0);
-	pnp_set_iobase(dev, PNP_IDX_IO0, iobase);
-	pnp_set_enable(dev, 1);
-	pnp_exit_conf_state(dev);
-}



More information about the coreboot-gerrit mailing list