Remove various .c #includes from Intel i810/i82801ax/i82801bx boards.
authorUwe Hermann <uwe@hermann-uwe.de>
Wed, 13 Oct 2010 23:00:41 +0000 (23:00 +0000)
committerUwe Hermann <uwe@hermann-uwe.de>
Wed, 13 Oct 2010 23:00:41 +0000 (23:00 +0000)
This is pretty much the same mechanism as in r5929.

 - Use 'romstage-y' to turn i82801ax_early_smbus.c and i82801bx_early_smbus.c
   into distinct compilation units, and don't #include the files anymore
   in romstage.c files.

 - Ditto for northbridge/intel/i82810/raminit.c, and
   northbridge/intel/i82810/debug.c.

 - Add various header files which are now needed, drop unused includes.

 - Make functions that need to be visible non-static.

Abuild-tested.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5951 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

19 files changed:
src/mainboard/asus/mew-am/romstage.c
src/mainboard/asus/mew-vm/romstage.c
src/mainboard/ecs/p6iwp-fe/romstage.c
src/mainboard/hp/e_vectra_p2706t/romstage.c
src/mainboard/intel/d810e2cb/romstage.c
src/mainboard/mitac/6513wu/romstage.c
src/mainboard/msi/ms6178/romstage.c
src/mainboard/nec/powermate2000/romstage.c
src/northbridge/intel/i82810/Makefile.inc
src/northbridge/intel/i82810/debug.c
src/northbridge/intel/i82810/i82810.h
src/northbridge/intel/i82810/raminit.c
src/northbridge/intel/i82810/raminit.h
src/southbridge/intel/i82801ax/Makefile.inc
src/southbridge/intel/i82801ax/i82801ax_early_smbus.c
src/southbridge/intel/i82801ax/i82801ax_smbus.h
src/southbridge/intel/i82801bx/Makefile.inc
src/southbridge/intel/i82801bx/i82801bx_early_smbus.c
src/southbridge/intel/i82801bx/i82801bx_smbus.h

index 402789c0af9832d0efc17f9453b195da87f2193f..aad5ed3852787f34a816df05cafb6e0edac4b3df 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <console/console.h>
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "northbridge/intel/i82810/raminit.h"
-#include "lib/debug.c"
 #include "pc80/udelay_io.c"
-#include "lib/delay.c"
 #include "cpu/x86/bist.h"
 #include "superio/smsc/smscsuperio/smscsuperio_early_serial.c"
-#include "northbridge/intel/i82810/raminit.c"
-/* #include "northbridge/intel/i82810/debug.c" */
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x2e, SMSCSUPERIO_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        smscsuperio_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
@@ -46,7 +44,7 @@ void main(unsigned long bist)
        console_init();
        report_bist_failure(bist);
        enable_smbus();
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index e4c551eb60fd6e247eca7588a80e8d76dbb886f3..87aca12f5d348d7029afff978d2b18e3b0dd1cfd 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <stdlib.h>
 #include <console/console.h>
 #include "superio/smsc/lpc47b272/lpc47b272_early_serial.c"
 #include "northbridge/intel/i82810/raminit.h"
 #include "cpu/x86/bist.h"
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
-#include "lib/debug.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "pc80/udelay_io.c"
-#include "lib/delay.c"
-#include "northbridge/intel/i82810/raminit.c"
-#include "northbridge/intel/i82810/debug.c"
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x2e, LPC47B272_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        lpc47b272_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
index b899d938af3f7f8f1df865b0c6cc2fcbb456dc87..a3c1f20af055ea290c935fdaefea1482329a7b44 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <console/console.h>
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "northbridge/intel/i82810/raminit.h"
-#include "lib/debug.c"
 #include "pc80/udelay_io.c"
-#include "lib/delay.c"
 #include "cpu/x86/bist.h"
 #include "superio/ite/it8712f/it8712f_early_serial.c"
-#include "northbridge/intel/i82810/raminit.c"
-#include "northbridge/intel/i82810/debug.c"
 #include <lib.h>
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        it8712f_24mhz_clkin();
index 39cb2669c0a93210a66143fbc101a9ff706086e0..776b841b6bc85295a4831003193c14655beb010e 100644 (file)
 /* TODO: It's i810E actually! */
 #include "northbridge/intel/i82810/raminit.h"
 #include "cpu/x86/bist.h"
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "pc80/udelay_io.c"
-#include "lib/debug.c"
-#include "northbridge/intel/i82810/raminit.c"
 #include <lib.h>
 
 /* TODO: It's a PC87364 actually! */
 #define SERIAL_DEV PNP_DEV(0x2e, PC87360_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        /* TODO: It's a PC87364 actually! */
@@ -48,7 +49,7 @@ void main(unsigned long bist)
        console_init();
        enable_smbus();
        report_bist_failure(bist);
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index 94f1170534e0ffc5e54336f7f21fef346dd9958b..fcdbb3156e513d99f1d445a9d08eeabf1ec552c5 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <console/console.h>
 #include "southbridge/intel/i82801bx/i82801bx.h"
-#include "southbridge/intel/i82801bx/i82801bx_early_smbus.c"
 #include "northbridge/intel/i82810/raminit.h"
-#include "lib/debug.c"
 #include "pc80/udelay_io.c"
-#include "lib/delay.c"
 #include "cpu/x86/bist.h"
 #include "superio/smsc/smscsuperio/smscsuperio_early_serial.c"
 #include "gpio.c"
-#include "northbridge/intel/i82810/raminit.c"
-/* #include "northbridge/intel/i82810/debug.c" */
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x4e, SMSCSUPERIO_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        /* Set southbridge and Super I/O GPIOs. */
@@ -52,7 +49,7 @@ void main(unsigned long bist)
 
        report_bist_failure(bist);
        enable_smbus();
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index 1a2d7c4f0ccbefaf3fdf113433cfe38bb60664c3..a46e5673f8b7d6f93afdfc7b66d81935b1e76610 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <console/console.h>
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "northbridge/intel/i82810/raminit.h"
-#include "lib/debug.c"
 #include "pc80/udelay_io.c"
 #include "lib/delay.c"
 #include "cpu/x86/bist.h"
 #include "superio/smsc/smscsuperio/smscsuperio_early_serial.c"
-#include "northbridge/intel/i82810/raminit.c"
-/* #include "northbridge/intel/i82810/debug.c" */
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x4e, SMSCSUPERIO_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        smscsuperio_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
@@ -47,7 +46,7 @@ void main(unsigned long bist)
 
        report_bist_failure(bist);
        enable_smbus();
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index 5aab983c572959645b4198c46e95cd3fccae3dda..30bddde5aca854b9ffc29f0020714a70580e2924 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <stdlib.h>
 #include <console/console.h>
 #include "superio/winbond/w83627hf/w83627hf_early_serial.c"
 #include "northbridge/intel/i82810/raminit.h"
 #include "cpu/x86/bist.h"
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "pc80/udelay_io.c"
-#include "lib/debug.c"
-#include "northbridge/intel/i82810/raminit.c"
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x2e, W83627HF_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        /* FIXME */
@@ -48,12 +48,9 @@ void main(unsigned long bist)
 
        uart_init();
        console_init();
-
        enable_smbus();
-
        report_bist_failure(bist);
-
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index 8f71cc9d4b2c1a1cd657ed71b87e4d67b8a9b56f..0444b08d5c55df959e37eecaad79485e373d6e1b 100644 (file)
 #include <device/pci_def.h>
 #include <arch/io.h>
 #include <device/pnp_def.h>
-#include <arch/romcc_io.h>
 #include <arch/hlt.h>
 #include <stdlib.h>
 #include <console/console.h>
 #include "superio/smsc/smscsuperio/smscsuperio_early_serial.c"
 #include "northbridge/intel/i82810/raminit.h"
 #include "cpu/x86/bist.h"
-#include "southbridge/intel/i82801ax/i82801ax_early_smbus.c"
+#include "southbridge/intel/i82801ax/i82801ax.h"
 #include "pc80/udelay_io.c"
-#include "northbridge/intel/i82810/raminit.c"
 #include <lib.h>
 
 #define SERIAL_DEV PNP_DEV(0x2e, SMSCSUPERIO_SP1)
 
+void enable_smbus(void);
+int smbus_read_byte(u8 device, u8 address);
+
 void main(unsigned long bist)
 {
        smscsuperio_enable_serial(SERIAL_DEV, CONFIG_TTYS0_BASE);
@@ -43,7 +44,7 @@ void main(unsigned long bist)
        console_init();
        enable_smbus();
        report_bist_failure(bist);
-       /* dump_spd_registers(); */
+       dump_spd_registers();
        sdram_set_registers();
        sdram_set_spd_registers();
        sdram_enable();
index 16d702a24e2bde7d26f74703d192e2a4d351a565..0c0a3c846d0af363c77795f012f8aa07a24162f2 100644 (file)
@@ -20,3 +20,6 @@
 
 driver-y += northbridge.c
 
+romstage-y += raminit.c
+romstage-y += debug.c
+
index 55af01bc22fcc974840b860fc3ca9f24275e736a..44ee197284a4e2b36327fe082ad2cca8ba30726f 100644 (file)
@@ -1,4 +1,6 @@
-static void dump_spd_registers(void)
+#include "raminit.h"
+
+void dump_spd_registers(void)
 {
 #if CONFIG_DEBUG_RAM_SETUP
        int i;
index 75d92cbbebfad590757ffeea77b6ab0bddbb1a64..66957547633cad875a6cf87f22eb07c8030910b3 100644 (file)
@@ -18,6 +18,9 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
+#ifndef NORTHBRIDGE_INTEL_I82810_I82810_H
+#define NORTHBRIDGE_INTEL_I82810_I82810_H
+
 /*
  * Datasheet:
  *   - Name: Intel 810 Chipset:
@@ -43,3 +46,7 @@
 #define MISSC  0x72            /* Miscellaneous Control */
 #define MISSC2 0x80            /* Miscellaneous Control 2 */
 #define BUFF_SC        0x92            /* System Memory Buffer Strength Control */
+
+int smbus_read_byte(u8 device, u8 address);
+
+#endif
index 3ddc8a02e66811132a8fc6e1ea4b6c178020d5b5..83b21b128649af5171eb2025a6a65b89e520a95c 100644 (file)
 
 #include <spd.h>
 #include <delay.h>
+#include <stdint.h>
+#include <arch/io.h>
+#include <arch/romcc_io.h>
+#include <device/pci_def.h>
+#include <console/console.h>
 #include "i82810.h"
+#include "raminit.h"
 
 /*-----------------------------------------------------------------------------
 Macros and definitions.
@@ -421,7 +427,7 @@ static void set_dram_buffer_strength(void)
 Public interface.
 -----------------------------------------------------------------------------*/
 
-static void sdram_set_registers(void)
+void sdram_set_registers(void)
 {
        u8 reg8;
        u16 did;
@@ -454,7 +460,7 @@ static void sdram_set_registers(void)
        pci_write_config8(PCI_DEV(0, 0, 0), MISSC2, reg8);
 }
 
-static void sdram_set_spd_registers(void)
+void sdram_set_spd_registers(void)
 {
        spd_set_dram_size();
        set_dram_buffer_strength();
@@ -464,7 +470,7 @@ static void sdram_set_spd_registers(void)
 /**
  * Enable SDRAM.
  */
-static void sdram_enable(void)
+void sdram_enable(void)
 {
        int i;
 
index f35832ecd0208772f6a9dcf9276ebf9281fa74c5..fbf64239b214d39a822cd64f9a195c3dbcff728b 100644 (file)
 /* DIMM0 is at 0x50, DIMM1 is at 0x51. */
 #define DIMM_SPD_BASE 0x50
 
-#endif                         /* NORTHBRIDGE_INTEL_I82810_RAMINIT_H */
+/* Function prototypes. */
+void sdram_set_registers(void);
+void sdram_set_spd_registers(void);
+void sdram_enable(void);
+void dump_spd_registers(void);
+
+#endif
index 6d253f01feae4a8b782d1be246925f6dc236f43d..a282dd1e36dd4e857ce4171919fcee18d1895651 100644 (file)
@@ -29,3 +29,5 @@ driver-y += i82801ax_usb.c
 ramstage-y += i82801ax_reset.c
 ramstage-y += i82801ax_watchdog.c
 
+romstage-y += i82801ax_early_smbus.c
+
index e51e6afb6a8413c07c5578e9598fbc5354079952..d30ed57e07d0d9f2d63afa91cac57fc74bb8fde5 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
+#include <arch/io.h>
+#include <arch/romcc_io.h>
+#include <console/console.h>
 #include <device/pci_ids.h>
+#include <device/pci_def.h>
 #include "i82801ax.h"
 #include "i82801ax_smbus.h"
 
-static void enable_smbus(void)
+int smbus_read_byte(u8 device, u8 address);
+
+void enable_smbus(void)
 {
        device_t dev;
 
@@ -50,7 +56,7 @@ static void enable_smbus(void)
        print_debug("SMBus controller enabled\n");
 }
 
-static inline int smbus_read_byte(unsigned device, unsigned address)
+int smbus_read_byte(u8 device, u8 address)
 {
        return do_smbus_read_byte(SMBUS_IO_BASE, device, address);
 }
index 312d0b7812bd5afe9ff4c9c07bb4179ffbe6f47c..bf7a479a492acdb31f276b8ddf27b7ac2c6cef57 100644 (file)
@@ -20,6 +20,9 @@
 
 #include <device/smbus_def.h>
 
+void enable_smbus(void);
+int do_smbus_read_byte(u16 smbus_io_base, u8 device, u8 address);
+
 static void smbus_delay(void)
 {
        inb(0x80);
@@ -51,8 +54,7 @@ static int smbus_wait_until_done(u16 smbus_io_base)
        return loops ? 0 : -1;
 }
 
-static int do_smbus_read_byte(u16 smbus_io_base, unsigned device,
-                             unsigned address)
+int do_smbus_read_byte(u16 smbus_io_base, u8 device, u8 address)
 {
        unsigned char global_status_register;
        unsigned char byte;
index cd9c1574a2a3165e9e369013eee6e6ac130d822e..313a0896dfef18fbff78941c6343aa4cbf06ef59 100644 (file)
@@ -30,3 +30,5 @@ driver-y += i82801bx_usb.c
 ramstage-y += i82801bx_reset.c
 ramstage-y += i82801bx_watchdog.c
 
+romstage-y += i82801bx_early_smbus.c
+
index b7597716e79cc97364a15a485421aabac78d1e1f..92a5403edd0671398fbf2d021dc6560dfec809ce 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
+#include <arch/io.h>
+#include <arch/romcc_io.h>
+#include <console/console.h>
 #include <device/pci_ids.h>
+#include <device/pci_def.h>
 #include "i82801bx.h"
 #include "i82801bx_smbus.h"
 
-static void enable_smbus(void)
+int smbus_read_byte(u8 device, u8 address);
+
+void enable_smbus(void)
 {
        device_t dev;
 
@@ -50,7 +56,7 @@ static void enable_smbus(void)
        print_debug("SMBus controller enabled\n");
 }
 
-static inline int smbus_read_byte(unsigned device, unsigned address)
+int smbus_read_byte(u8 device, u8 address)
 {
        return do_smbus_read_byte(SMBUS_IO_BASE, device, address);
 }
index 24c08cd35726b22233a826a43ec117456e75c8c5..066feade070d5976638ed20f2354dce1f28c3f6c 100644 (file)
@@ -20,6 +20,8 @@
 
 #include <device/smbus_def.h>
 
+void enable_smbus(void);
+
 static void smbus_delay(void)
 {
        inb(0x80);
@@ -51,8 +53,7 @@ static int smbus_wait_until_done(u16 smbus_io_base)
        return loops ? 0 : -1;
 }
 
-static int do_smbus_read_byte(u16 smbus_io_base, unsigned device,
-                             unsigned address)
+static int do_smbus_read_byte(u16 smbus_io_base, u8 device, u8 address)
 {
        unsigned char global_status_register;
        unsigned char byte;