1 #ifndef ARCH_ARM_SOC_PXA_H
2 #define ARCH_ARM_SOC_PXA_H
4 class PXAInterruptController
;
11 class PXAInterruptController
: public InterruptController
{
13 void EnableInterrupt(int irq
);
14 void DisableInterrupt(int irq
);
15 void HandleInterrupt();
17 static status_t
Init(fdt_module_info
*fdt
, fdt_device_node node
, void *cookie
) {
18 InterruptController
*ic
= new(std::nothrow
) PXAInterruptController(fdt
, node
);
19 // XXX implement InitCheck() functionality
20 return ic
!= NULL
? B_OK
: B_NO_MEMORY
;
24 PXAInterruptController(fdt_module_info
*fdt
, fdt_device_node node
);
31 class PXATimer
: public HardwareTimer
{
33 void SetTimeout(bigtime_t timeout
);
37 static status_t
Init(fdt_module_info
*fdt
, fdt_device_node node
, void *cookie
) {
38 PXATimer
*timer
= new(std::nothrow
) PXATimer(fdt
, node
);
39 // XXX implement InitCheck() functionality
40 return timer
!= NULL
? B_OK
: B_NO_MEMORY
;
44 PXATimer(fdt_module_info
*fdt
, fdt_device_node node
);
48 bigtime_t fSystemTime
;
50 static int32
_InterruptWrapper(void *data
);
51 int32
HandleInterrupt();
55 #endif // ARCH_ARM_SOC_PXA_H