@@ -438,29 +438,28 @@ impl AmlContext {
438
438
* (e.g. systems with a single segment group and a single root, respectively).
439
439
*/
440
440
let parent_device = parent_device. as_ref ( ) . unwrap ( ) ;
441
- let seg = match self . namespace . search ( & AmlName :: from_str ( "_SEG" ) . unwrap ( ) , parent_device) {
442
- Ok ( ( _, handle) ) => self
443
- . namespace
444
- . get ( handle) ?
445
- . as_integer ( self ) ?
446
- . try_into ( )
447
- . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
441
+ let seg = match self . invoke_method (
442
+ & AmlName :: from_str ( "_SEG" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
443
+ Args :: EMPTY ,
444
+ ) {
445
+ Ok ( seg) => seg. as_integer ( self ) ?. try_into ( ) . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
448
446
Err ( AmlError :: ValueDoesNotExist ( _) ) => 0 ,
449
447
Err ( err) => return Err ( err) ,
450
448
} ;
451
- let bbn = match self . namespace . search ( & AmlName :: from_str ( "_BBN" ) . unwrap ( ) , parent_device) {
452
- Ok ( ( _, handle) ) => self
453
- . namespace
454
- . get ( handle) ?
455
- . as_integer ( self ) ?
456
- . try_into ( )
457
- . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
449
+ let bbn = match self . invoke_method (
450
+ & AmlName :: from_str ( "_BBN" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
451
+ Args :: EMPTY ,
452
+ ) {
453
+ Ok ( bbn) => bbn. as_integer ( self ) ?. try_into ( ) . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
458
454
Err ( AmlError :: ValueDoesNotExist ( _) ) => 0 ,
459
455
Err ( err) => return Err ( err) ,
460
456
} ;
461
457
let adr = {
462
- let ( _, handle) = self . namespace . search ( & AmlName :: from_str ( "_ADR" ) . unwrap ( ) , parent_device) ?;
463
- self . namespace . get ( handle) ?. as_integer ( self ) ?
458
+ let adr = self . invoke_method (
459
+ & AmlName :: from_str ( "_ADR" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
460
+ Args :: EMPTY ,
461
+ ) ?;
462
+ adr. as_integer ( self ) ?
464
463
} ;
465
464
466
465
let device = adr. get_bits ( 16 ..24 ) as u8 ;
@@ -530,29 +529,28 @@ impl AmlContext {
530
529
* (e.g. systems with a single segment group and a single root, respectively).
531
530
*/
532
531
let parent_device = parent_device. as_ref ( ) . unwrap ( ) ;
533
- let seg = match self . namespace . search ( & AmlName :: from_str ( "_SEG" ) . unwrap ( ) , parent_device) {
534
- Ok ( ( _, handle) ) => self
535
- . namespace
536
- . get ( handle) ?
537
- . as_integer ( self ) ?
538
- . try_into ( )
539
- . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
532
+ let seg = match self . invoke_method (
533
+ & AmlName :: from_str ( "_SEG" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
534
+ Args :: EMPTY ,
535
+ ) {
536
+ Ok ( seg) => seg. as_integer ( self ) ?. try_into ( ) . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
540
537
Err ( AmlError :: ValueDoesNotExist ( _) ) => 0 ,
541
538
Err ( err) => return Err ( err) ,
542
539
} ;
543
- let bbn = match self . namespace . search ( & AmlName :: from_str ( "_BBN" ) . unwrap ( ) , parent_device) {
544
- Ok ( ( _, handle) ) => self
545
- . namespace
546
- . get ( handle) ?
547
- . as_integer ( self ) ?
548
- . try_into ( )
549
- . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
540
+ let bbn = match self . invoke_method (
541
+ & AmlName :: from_str ( "_BBN" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
542
+ Args :: EMPTY ,
543
+ ) {
544
+ Ok ( bbn) => bbn. as_integer ( self ) ?. try_into ( ) . map_err ( |_| AmlError :: FieldInvalidAddress ) ?,
550
545
Err ( AmlError :: ValueDoesNotExist ( _) ) => 0 ,
551
546
Err ( err) => return Err ( err) ,
552
547
} ;
553
548
let adr = {
554
- let ( _, handle) = self . namespace . search ( & AmlName :: from_str ( "_ADR" ) . unwrap ( ) , parent_device) ?;
555
- self . namespace . get ( handle) ?. as_integer ( self ) ?
549
+ let adr = self . invoke_method (
550
+ & AmlName :: from_str ( "_ADR" ) . unwrap ( ) . resolve ( parent_device) . unwrap ( ) ,
551
+ Args :: EMPTY ,
552
+ ) ?;
553
+ adr. as_integer ( self ) ?
556
554
} ;
557
555
558
556
let device = adr. get_bits ( 16 ..24 ) as u8 ;
0 commit comments