X-Git-Url: https://rtime.felk.cvut.cz/gitweb/l4.git/blobdiff_plain/5a0e6ead0fbfbb912cd817abad695c078e82481c..8d9e85aaae867f39cdd610261e3a4181c25add2d:/kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp diff --git a/kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp b/kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp index 796a1b66d..ba85fe872 100644 --- a/kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp +++ b/kernel/fiasco/src/kern/arm/bsp/realview/pic-arm-realview.cpp @@ -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(); } //-------------------------------------------------------------------