summaryrefslogtreecommitdiff
path: root/src/superio/winbond/w83627hf/early_serial.c
diff options
context:
space:
mode:
authorEdward O'Callaghan <eocallaghan@alterapraxis.com>2014-04-29 13:09:50 +1000
committerKyösti Mälkki <kyosti.malkki@gmail.com>2014-05-31 21:17:37 +0200
commitbeb0f2631fe6e49e86687cc3a7cf63ce41157a45 (patch)
treeefafc117389de92204dcbc98e6edd9ad56c2212c /src/superio/winbond/w83627hf/early_serial.c
parent9068788a8f0c96a5153fcd4e5ed80eac80b060c6 (diff)
downloadcoreboot-beb0f2631fe6e49e86687cc3a7cf63ce41157a45.tar.xz
superio/winbond/w83627hf: Avoid .c includes in mainboards
Move towards the removal of the superio model specific xxx_serial_enable implementation. Make remaining superio romstage parts link-time symbols and fix corresponding mainboards to match. The following mainboards remain unconverted as they are ROMCC: - mainboard/supermicro/x6dai_g - mainboard/supermicro/x6dhe_g - mainboard/supermicro/x6dhr_ig - mainboard/supermicro/x6dhr_ig2 and so block the final removal of w83627hf_serial_enable(). Special cases: - mainboard/supermicro/h8qme_fam10: Provide local pnp_ sio func Provide local superio pnp_ programming entry/exit functions as to avoid making superio implementation global symbols. Although this is not the proper/final solution, it does mitigate possible symbol collisions and allow for continued superio refactorisation. Change-Id: Iaefb25d77512503050cb38313ca90855ebb538ad Signed-off-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-on: http://review.coreboot.org/5601 Tested-by: build bot (Jenkins) Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Diffstat (limited to 'src/superio/winbond/w83627hf/early_serial.c')
-rw-r--r--src/superio/winbond/w83627hf/early_serial.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/superio/winbond/w83627hf/early_serial.c b/src/superio/winbond/w83627hf/early_serial.c
index db2827bfdb..bc251a67e3 100644
--- a/src/superio/winbond/w83627hf/early_serial.c
+++ b/src/superio/winbond/w83627hf/early_serial.c
@@ -37,6 +37,18 @@ static void pnp_exit_ext_func_mode(device_t dev)
outb(0xaa, port);
}
+/*
+ * FIXME: The following ROMCC boards are blocking the removal this superio's
+ * model specific w83627hf_enable_serial() symbol.
+ *
+ * mainboard/supermicro/x6dai_g
+ * mainboard/supermicro/x6dhe_g
+ * mainboard/supermicro/x6dhr_ig
+ * mainboard/supermicro/x6dhr_ig2
+ *
+ * XXX: ROMCC - everything is inlined, no forwarding function prototypes
+ * declarations are accepted.
+ */
void w83627hf_enable_serial(device_t dev, u16 iobase)
{
pnp_enter_ext_func_mode(dev);