Lines Matching refs:regEntry
79 static void AddPHandle( IORegistryEntry * regEntry );
81 static bool IODTMapInterruptsSharing( IORegistryEntry * regEntry, OSDictionary * allInts );
324 IORegistryEntry *regEntry;
336 regEntry = new IOService;
338 if( regEntry && (false == regEntry->init())) {
339 regEntry->release();
340 regEntry = 0;
343 if( regEntry &&
346 propTable = regEntry->getPropertyTable();
371 regEntry->setName( sym );
380 regEntry->setLocation( location );
387 regEntry->setLocation( location );
393 return( regEntry);
396 static void AddPHandle( IORegistryEntry * regEntry )
400 if( regEntry->getProperty( gIODTInterruptCellKey)
401 && (data = OSDynamicCast( OSData, regEntry->getProperty( gIODTPHandleKey )))) {
404 gIODTPHandleMap->setObject( regEntry );
411 IORegistryEntry *regEntry = 0;
416 regEntry = (IORegistryEntry *)
422 return( regEntry );
425 static bool GetUInt32( IORegistryEntry * regEntry, const OSSymbol * name,
430 if( (data = OSDynamicCast( OSData, regEntry->getProperty( name )))
438 static IORegistryEntry * IODTFindInterruptParent( IORegistryEntry * regEntry, IOItemCount index )
445 if( (data = OSDynamicCast( OSData, regEntry->getProperty( gIODTInterruptParentKey )))
452 } else if( 0 == regEntry->getProperty( "interrupt-controller"))
453 parent = regEntry->getParentEntry( gIODTPlane);
460 const OSSymbol * IODTInterruptControllerName( IORegistryEntry * regEntry )
467 ok = GetUInt32( regEntry, gIODTPHandleKey, &phandle);
481 static void IODTGetICellCounts( IORegistryEntry * regEntry,
484 if( !GetUInt32( regEntry, gIODTInterruptCellKey, iCellCount))
486 if( !GetUInt32( regEntry, gIODTAddressCellKey, aCellCount))
490 static UInt32 IODTMapOneInterrupt( IORegistryEntry * regEntry, UInt32 * intSpec, UInt32 index,
503 parent = IODTFindInterruptParent( regEntry, index );
507 data = OSDynamicCast( OSData, regEntry->getProperty( "reg" ));
512 regEntry = parent;
516 kprintf ("IODTMapOneInterrupt: current regEntry name %s\n", regEntry->getName());
525 regEntry->getProperty( "interrupt-controller")))) {
530 *controller = IODTInterruptControllerName( regEntry );
533 regEntry->getProperty( "interrupt-map")))) {
537 data = OSDynamicCast( OSData, regEntry->getProperty( "interrupt-map-mask" ));
587 regEntry = parent;
598 regEntry = parent;
606 IOReturn IODTGetInterruptOptions( IORegistryEntry * regEntry, int source, IOOptionBits * options )
616 controllers = OSDynamicCast(OSArray, regEntry->getProperty(gIOInterruptControllersKey));
617 specifiers = OSDynamicCast(OSArray, regEntry->getProperty(gIOInterruptSpecifiersKey));
642 static bool IODTMapInterruptsSharing( IORegistryEntry * regEntry, OSDictionary * allInts )
660 regEntry->getProperty( gIODTAAPLInterruptsKey))));
662 regEntry->getProperty( "interrupts")))))
665 if( nw && (parent = regEntry->getParentEntry( gIODTPlane))) {
684 skip = IODTMapOneInterrupt( regEntry, localBits, index, &map, &controller );
687 regEntry->getName(), mapped->getCount());
749 ok = regEntry->setProperty( gIOInterruptControllersKey, controllers);
750 ok &= regEntry->setProperty( gIOInterruptSpecifiersKey, mapped);
761 bool IODTMapInterrupts( IORegistryEntry * regEntry )
763 return( IODTMapInterruptsSharing( regEntry, 0 ));
819 bool IODTCompareNubName( const IORegistryEntry * regEntry,
825 matched = (0 != (result = CompareKey( name, regEntry, gIODTNameKey)))
826 || (0 != (result = CompareKey( name, regEntry, gIODTCompatibleKey)))
827 || (0 != (result = CompareKey( name, regEntry, gIODTTypeKey)))
828 || (0 != (result = CompareKey( name, regEntry, gIODTModelKey)));
836 bool IODTMatchNubWithKeys( IORegistryEntry * regEntry,
845 result = regEntry->compareNames( obj );
910 void IODTSetResolving( IORegistryEntry * regEntry,
923 regEntry->setProperty( gIODTPersistKey, prop);
934 void IODTGetCellCounts( IORegistryEntry * regEntry,
937 if( !GetUInt32( regEntry, gIODTSizeCellKey, sizeCount))
939 if( !GetUInt32( regEntry, gIODTAddressCellKey, addressCount))
950 bool IODTResolveAddressCell( IORegistryEntry * regEntry,
956 // cells in addresses at regEntry
958 // cells in addresses below regEntry
973 IODTGetCellCounts( regEntry, &childSizeCells, &childAddressCells );
985 prop = OSDynamicCast( OSData, regEntry->getProperty( gIODTRangeKey ));
992 parent = regEntry->getParentEntry( gIODTPlane );
1001 prop = (OSData *) regEntry->getProperty( gIODTPersistKey );
1057 regEntry = parent;
1062 while( ok && regEntry);
1068 OSArray * IODTResolveAddressing( IORegistryEntry * regEntry,
1082 parentEntry = regEntry->getParentEntry( gIODTPlane );
1083 addressProperty = (OSData *) regEntry->getProperty( addressPropertyName );
1113 regEntry->setProperty( gIODeviceMemoryKey, array);
1121 IORegistryEntry * regEntry,
1132 (*persist->locationFunc)( regEntry, busNum, deviceNum, functionNum );
1134 prop = (OSData *) regEntry->getProperty( "reg" );
1152 IOReturn IODTMakeNVDescriptor( IORegistryEntry * regEntry,
1166 (parent = regEntry->getParentEntry( gIODTPlane )) && (level < 7); level++ ) {
1168 IODTGetNVLocation( parent, regEntry,
1177 regEntry = parent;
1185 OSData * IODTFindSlotName( IORegistryEntry * regEntry, UInt32 deviceNumber )
1196 data = (OSData *) regEntry->getProperty("AAPL,slot-name");
1199 parent = regEntry->getParentEntry( gIODTPlane );
1222 regEntry->setProperty("AAPL,slot-name", data);