[coreboot] New patch to review for coreboot: 06e13f3 Use mainboard_interrupt_handlers everywhere

Patrick Georgi (patrick@georgi-clan.de) gerrit at coreboot.org
Fri Oct 5 19:52:07 CEST 2012


Patrick Georgi (patrick at georgi-clan.de) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1559

-gerrit

commit 06e13f36b86b27f20569f71403f95a359f2931b1
Author: Patrick Georgi <patrick at georgi-clan.de>
Date:   Sun Sep 23 18:41:03 2012 +0200

    Use mainboard_interrupt_handlers everywhere
    
    The previous commit provides a mainboard_interrupt_handlers
    implementation YABEL with identical semantics to the
    x86emu one, so let's use it in both cases.
    
    This eliminates the need for the int15_install()
    indirection, so let's drop that, too.
    
    Generated using the following coccinelle patch and
    manual cleanups (empty #if/#endif):
      @@
      type T;
      identifier FUNCARR;
      expression INT, HANDLER;
      @@
      -typedef T yabel_handleIntFunc;
      -extern yabel_handleIntFunc FUNCARR[256];
      -FUNCARR[INT] = HANDLER;
      +mainboard_interrupt_handlers(INT, &HANDLER);
    
      @@
      @@
      -void int15_install(void)
      -{
      -mainboard_interrupt_handlers(0x15, &int15_handler);
      -}
    
      @@
      @@
      -void int15_install(void)
      -{
      -mainboard_interrupt_handlers(0x15, &int15_handler); ... mainboard_interrupt_handlers(0x15, &int15_handler);
      -}
    
      @@
      @@
      -int15_install();
      +mainboard_interrupt_handlers(0x15, &int15_handler);
    
    Change-Id: I70fd780d7ebf1564a2ff7d7148411673f6de113c
    Signed-off-by: Patrick Georgi <patrick at georgi-clan.de>
---
 src/mainboard/ibase/mb899/mainboard.c         |  9 +--------
 src/mainboard/intel/emeraldlake2/mainboard.c  | 16 +---------------
 src/mainboard/kontron/986lcd-m/mainboard.c    | 14 +-------------
 src/mainboard/roda/rk886ex/mainboard.c        | 14 +-------------
 src/mainboard/samsung/lumpy/mainboard.c       | 16 +---------------
 src/mainboard/samsung/stumpy/mainboard.c      | 16 +---------------
 src/mainboard/siemens/sitemp_g1p1/mainboard.c |  9 +--------
 src/mainboard/thomson/ip1000/mainboard.c      |  9 +--------
 8 files changed, 8 insertions(+), 95 deletions(-)

diff --git a/src/mainboard/ibase/mb899/mainboard.c b/src/mainboard/ibase/mb899/mainboard.c
index 086d456..5922707 100644
--- a/src/mainboard/ibase/mb899/mainboard.c
+++ b/src/mainboard/ibase/mb899/mainboard.c
@@ -60,13 +60,6 @@ static int int15_handler(void)
 	/* Interrupt handled */
 	return 1;
 }
-
-static void int15_install(void)
-{
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-}
 #endif
 
 /* Hardware Monitor */
@@ -222,7 +215,7 @@ static void mainboard_enable(device_t dev)
 {
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 	verb_setup();
 	hwm_setup();
diff --git a/src/mainboard/intel/emeraldlake2/mainboard.c b/src/mainboard/intel/emeraldlake2/mainboard.c
index 71832e7..a649e27 100644
--- a/src/mainboard/intel/emeraldlake2/mainboard.c
+++ b/src/mainboard/intel/emeraldlake2/mainboard.c
@@ -200,20 +200,6 @@ static int int15_handler(void)
 }
 #endif
 
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-static void int15_install(void)
-{
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-#endif
-#ifdef CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-	mainboard_interrupt_handlers(0x15, &int15_handler);
-#endif
-}
-#endif
-
 /* Audio Setup */
 
 extern const u32 * cim_verb_data;
@@ -232,7 +218,7 @@ static void mainboard_enable(device_t dev)
 {
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 	verb_setup();
 }
diff --git a/src/mainboard/kontron/986lcd-m/mainboard.c b/src/mainboard/kontron/986lcd-m/mainboard.c
index b9686bd..e45956f 100644
--- a/src/mainboard/kontron/986lcd-m/mainboard.c
+++ b/src/mainboard/kontron/986lcd-m/mainboard.c
@@ -61,13 +61,6 @@ static int int15_handler(void)
 	/* Interrupt handled */
 	return 1;
 }
-
-static void int15_install(void)
-{
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-}
 #endif
 
 #if defined(CONFIG_PCI_OPTION_ROM_RUN_REALMODE) && CONFIG_PCI_OPTION_ROM_RUN_REALMODE
@@ -109,11 +102,6 @@ static int int15_handler(struct eregs *regs)
 
 	return res;
 }
-
-static void int15_install(void)
-{
-	mainboard_interrupt_handlers(0x15, &int15_handler);
-}
 #endif
 
 
@@ -270,7 +258,7 @@ static void mainboard_enable(device_t dev)
 {
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 	verb_setup();
 	hwm_setup();
diff --git a/src/mainboard/roda/rk886ex/mainboard.c b/src/mainboard/roda/rk886ex/mainboard.c
index e2ca2ef..78c36e3 100644
--- a/src/mainboard/roda/rk886ex/mainboard.c
+++ b/src/mainboard/roda/rk886ex/mainboard.c
@@ -88,13 +88,6 @@ static int int15_handler(void)
 	/* Interrupt handled */
 	return 1;
 }
-
-static void int15_install(void)
-{
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-}
 #endif
 
 #if CONFIG_PCI_OPTION_ROM_RUN_REALMODE
@@ -136,11 +129,6 @@ static int int15_handler(struct eregs *regs)
 
 	return res;
 }
-
-static void int15_install(void)
-{
-	mainboard_interrupt_handlers(0x15, &int15_handler);
-}
 #endif
 
 #if DUMP_RUNTIME_REGISTERS
@@ -171,7 +159,7 @@ static void mainboard_enable(device_t dev)
 
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 #if DUMP_RUNTIME_REGISTERS
 	dump_runtime_registers();
diff --git a/src/mainboard/samsung/lumpy/mainboard.c b/src/mainboard/samsung/lumpy/mainboard.c
index e54b861..9d44c9a 100644
--- a/src/mainboard/samsung/lumpy/mainboard.c
+++ b/src/mainboard/samsung/lumpy/mainboard.c
@@ -230,20 +230,6 @@ static int int15_handler(void)
 }
 #endif
 
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-static void int15_install(void)
-{
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-#endif
-#ifdef CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-	mainboard_interrupt_handlers(0x15, &int15_handler);
-#endif
-}
-#endif
-
 /* Audio Setup */
 
 extern const u32 * cim_verb_data;
@@ -273,7 +259,7 @@ static void mainboard_enable(device_t dev)
 	dev->ops->init = mainboard_init;
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 	verb_setup();
 }
diff --git a/src/mainboard/samsung/stumpy/mainboard.c b/src/mainboard/samsung/stumpy/mainboard.c
index 7922fcd..7dc82fc 100644
--- a/src/mainboard/samsung/stumpy/mainboard.c
+++ b/src/mainboard/samsung/stumpy/mainboard.c
@@ -200,20 +200,6 @@ static int int15_handler(void)
 }
 #endif
 
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-static void int15_install(void)
-{
-#if CONFIG_PCI_OPTION_ROM_RUN_YABEL
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-#endif
-#ifdef CONFIG_PCI_OPTION_ROM_RUN_REALMODE
-	mainboard_interrupt_handlers(0x15, &int15_handler);
-#endif
-}
-#endif
-
 /* Audio Setup */
 
 extern const u32 * cim_verb_data;
@@ -236,7 +222,7 @@ static void mainboard_enable(device_t dev)
 {
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL || CONFIG_PCI_OPTION_ROM_RUN_REALMODE
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 	verb_setup();
 }
diff --git a/src/mainboard/siemens/sitemp_g1p1/mainboard.c b/src/mainboard/siemens/sitemp_g1p1/mainboard.c
index dc79d74..fd19a3b 100644
--- a/src/mainboard/siemens/sitemp_g1p1/mainboard.c
+++ b/src/mainboard/siemens/sitemp_g1p1/mainboard.c
@@ -270,13 +270,6 @@ static int int15_handler(void)
 	/* Interrupt handled */
 	return 1;
 }
-
-static void int15_install(void)
-{
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-}
 #endif
 /* ############################################################################################# */
 
@@ -845,7 +838,7 @@ static void enable_dev(device_t dev)
 		dev->chip_ops->name, dev_path(dev), dev->subsystem_vendor, dev->subsystem_device, __func__);
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 
 	detect_hw_variant(dev);
diff --git a/src/mainboard/thomson/ip1000/mainboard.c b/src/mainboard/thomson/ip1000/mainboard.c
index b7e3270..feb5879 100644
--- a/src/mainboard/thomson/ip1000/mainboard.c
+++ b/src/mainboard/thomson/ip1000/mainboard.c
@@ -130,13 +130,6 @@ static int int15_handler(void)
 	/* Interrupt handled */
 	return 1;
 }
-
-static void int15_install(void)
-{
-	typedef int (* yabel_handleIntFunc)(void);
-	extern yabel_handleIntFunc yabel_intFuncArray[256];
-	yabel_intFuncArray[0x15] = int15_handler;
-}
 #endif
 
 static void mainboard_init(device_t dev)
@@ -150,7 +143,7 @@ static void mainboard_enable(device_t dev)
 	dev->ops->init = mainboard_init;
 #if CONFIG_PCI_OPTION_ROM_RUN_YABEL
 	/* Install custom int15 handler for VGA OPROM */
-	int15_install();
+	mainboard_interrupt_handlers(0x15, &int15_handler);
 #endif
 }
 




More information about the coreboot mailing list