]> rtime.felk.cvut.cz Git - l4.git/blobdiff - kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp
update
[l4.git] / kernel / fiasco / src / kern / arm / bsp / realview / pic-arm-realview.cpp
index 796a1b66da782b773d4c9a1fd1a66967467f96e8..ba85fe872fe5978f0cde2600ce0c2f6992a1fdfe 100644 (file)
@@ -57,28 +57,6 @@ Gic Gic_pin::_gic[2];
 //-------------------------------------------------------------------
 IMPLEMENTATION [arm && pic_gic && realview && (realview_pb11mp || (realview_eb && (mpcore || (armca9 && mp))))]:
 
-PRIVATE static inline
-void
-Pic::init_gic_other()
-{
-  Gic_pin::_gic[1].init(Kmem::Gic1_cpu_map_base,
-                        Kmem::Gic1_dist_map_base);
-}
-
-//-------------------------------------------------------------------
-IMPLEMENTATION [arm && pic_gic && realview && realview_pbx]:
-
-PRIVATE static inline
-void
-Pic::init_gic_other()
-{
-  Gic_pin::_gic[1].init(Kmem::Gic2_cpu_map_base,
-                        Kmem::Gic2_dist_map_base);
-}
-
-//-------------------------------------------------------------------
-IMPLEMENTATION [arm && pic_gic && realview && (realview_pbx || realview_pb11mp || (realview_eb && (mpcore || (armca9 && mp))))]:
-
 #include "irq_chip_generic.h"
 
 class Irq_chip_arm_rv : public Irq_chip_gen
@@ -99,7 +77,8 @@ PRIVATE static inline
 void
 Pic::init_other_gics()
 {
-  init_gic_other();
+  Gic_pin::_gic[1].init(Kmem::Gic1_cpu_map_base,
+                        Kmem::Gic1_dist_map_base);
 
   static Gic_cascade_irq casc_irq(&Gic_pin::_gic[1], 32);
 
@@ -109,8 +88,15 @@ Pic::init_other_gics()
   casc_irq.pin()->unmask();
 }
 
+PRIVATE static inline
+void
+Pic::init_ap_other_gics()
+{
+  Gic_pin::_gic[1].init_ap();
+}
+
 //-------------------------------------------------------------------
-IMPLEMENTATION [arm && pic_gic && !(realview && (realview_pbx || realview_pb11mp || (realview_eb && (mpcore || (armca9 && mp)))))]:
+IMPLEMENTATION [arm && pic_gic && !(realview && (realview_pb11mp || (realview_eb && (mpcore || (armca9 && mp)))))]:
 
 #include "irq_chip_generic.h"
 
@@ -131,6 +117,11 @@ void
 Pic::init_other_gics()
 {}
 
+PRIVATE static inline
+void
+Pic::init_ap_other_gics()
+{}
+
 //-------------------------------------------------------------------
 IMPLEMENTATION [arm && pic_gic]:
 
@@ -172,7 +163,7 @@ PUBLIC static
 void Pic::init_ap()
 {
   Gic_pin::_gic[0].init_ap();
-  Gic_pin::_gic[1].init_ap();
+  init_ap_other_gics();
 }
 
 //-------------------------------------------------------------------