x86: Unify arch/io.h and arch/romcc_io.h
Here's the great news: From now on you don't have to worry about hitting the right io.h include anymore. Just forget about romcc_io.h and use io.h instead. This cleanup has a number of advantages, like you don't have to guard device/ includes for SMM and pre RAM anymore. This allows to get rid of a number of ifdefs and will generally make the code more readable and understandable. Potentially in the future some of the code in the io.h __PRE_RAM__ path should move to device.h or other device/ includes instead, but that's another incremental change. Change-Id: I356f06110e2e355e9a5b4b08c132591f36fec7d9 Signed-off-by: Stefan Reinauer <reinauer@google.com> Reviewed-on: http://review.coreboot.org/2872 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
committed by
Stefan Reinauer
parent
55ed310655
commit
24d1d4b472
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <arch/cpu.h>
|
||||
|
||||
#if !defined(__ROMCC__)
|
||||
#if !defined(__PRE_RAM__) && !defined(__SMM__)
|
||||
void cpu_initialize(unsigned int cpu_index);
|
||||
struct bus;
|
||||
void initialize_cpus(struct bus *cpu_bus);
|
||||
@@ -20,6 +20,6 @@ void smm_setup_structures(void *gnvs, void *tcg, void *smi1);
|
||||
extern struct cpu_driver cpu_drivers[];
|
||||
/** end of compile time generated pci driver array */
|
||||
extern struct cpu_driver ecpu_drivers[];
|
||||
#endif /* !__ROMCC__ */
|
||||
#endif /* !__PRE_RAM__ && !__SMM__ */
|
||||
|
||||
#endif /* CPU_CPU_H */
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#ifndef DEVICE_H
|
||||
#define DEVICE_H
|
||||
|
||||
#ifndef __SMM__
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
#include <device/resource.h>
|
||||
@@ -222,4 +223,7 @@ ROMSTAGE_CONST struct device * dev_find_slot (unsigned int bus,
|
||||
ROMSTAGE_CONST struct device * dev_find_slot_on_smbus (unsigned int bus,
|
||||
unsigned int addr);
|
||||
#endif
|
||||
#else /* __SMM__ */
|
||||
#include <arch/io.h>
|
||||
#endif /* __SMM__ */
|
||||
#endif /* DEVICE_H */
|
||||
|
@@ -20,7 +20,7 @@
|
||||
#include <device/pci_def.h>
|
||||
#include <device/resource.h>
|
||||
#include <device/device.h>
|
||||
#ifndef __PRE_RAM__
|
||||
#if !defined(__PRE_RAM__) && !defined(__SMM__)
|
||||
#include <device/pci_ops.h>
|
||||
#include <device/pci_rom.h>
|
||||
|
||||
|
@@ -1,6 +1,7 @@
|
||||
#ifndef PCI_OPS_H
|
||||
#define PCI_OPS_H
|
||||
|
||||
#ifndef __SMM__
|
||||
#include <stdint.h>
|
||||
#include <device/device.h>
|
||||
#include <arch/pci_ops.h>
|
||||
@@ -20,5 +21,6 @@ void pci_mmio_write_config8(device_t dev, unsigned int where, u8 val);
|
||||
void pci_mmio_write_config16(device_t dev, unsigned int where, u16 val);
|
||||
void pci_mmio_write_config32(device_t dev, unsigned int where, u32 val);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* PCI_OPS_H */
|
||||
|
@@ -5,6 +5,7 @@
|
||||
#include <device/device.h>
|
||||
#include <device/pnp_def.h>
|
||||
|
||||
#if !defined(__PRE_RAM__) && !defined(__SMM__)
|
||||
/* Primitive PNP resource manipulation */
|
||||
void pnp_write_config(device_t dev, u8 reg, u8 value);
|
||||
u8 pnp_read_config(device_t dev, u8 reg);
|
||||
@@ -50,4 +51,5 @@ struct resource *pnp_get_resource(device_t dev, unsigned index);
|
||||
void pnp_enable_devices(struct device *dev, struct device_operations *ops,
|
||||
unsigned int functions, struct pnp_info *info);
|
||||
|
||||
#endif
|
||||
#endif /* DEVICE_PNP_H */
|
||||
|
@@ -24,7 +24,7 @@
|
||||
#include <stdint.h>
|
||||
#ifndef __ROMCC__ /* romcc doesn't support prototypes. */
|
||||
|
||||
#ifndef __PRE_RAM__ /* Conflicts with romcc_io.h */
|
||||
#ifndef __PRE_RAM__ /* Conflicts with inline function in arch/io.h */
|
||||
/* Defined in src/lib/clog2.c */
|
||||
unsigned long log2(unsigned long x);
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user