bool IOCPU::serializeProperties(OSSerialize *serialize) const
{
- super::setProperty(gIOCPUStateKey, gIOCPUStateNames[_cpuState]);
-
- return super::serializeProperties(serialize);
+ bool result;
+ OSDictionary *dict = dictionaryWithProperties();
+ dict->setObject(gIOCPUStateKey, gIOCPUStateNames[_cpuState]);
+ result = dict->serialize(serialize);
+ dict->release();
+ return result;
}
IOReturn IOCPU::setProperties(OSObject *properties)
void IOCPUInterruptController::enableCPUInterrupt(IOCPU *cpu)
{
- ml_install_interrupt_handler(cpu, cpu->getCPUNumber(), this,
- (IOInterruptHandler)&IOCPUInterruptController::handleInterrupt, 0);
+ IOInterruptHandler handler = OSMemberFunctionCast(
+ IOInterruptHandler, this, &IOCPUInterruptController::handleInterrupt);
+
+ ml_install_interrupt_handler(cpu, cpu->getCPUNumber(), this, handler, 0);
enabledCPUs++;