前回の続き、エラーを潰していきます。
Not all control paths return a value (名前)
このエラーに対しては最後に値を返せばよさそうなので
Return (Zero) をそのセクションの最後に追加
ここまでの編集でエラーは出なくなったので最後にRTC,HPETの項目の編集をします。
HPETの編集
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (_UID, Zero)
Name (CRS0, ResourceTemplate ()
{
})
Name (CRS1, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y0D)
IRQNoFlags ()
{0}
IRQNoFlags ()
{8}
})
Method (_STA, 0, NotSerialized)
{
If (LEqual (OSFL (), Zero))
{
If (LEqual (NVID, 0x10DE))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS1, \_SB.PCI0.SBRG.HPET._Y0D._BAS, HPX1)
CreateDWordField (CRS1, \_SB.PCI0.SBRG.HPET._Y0D._LEN, HPX2)
If (LEqual (NVID, 0x10DE))
{
Store (SHPB, HPX1)
Store (SHPL, HPX2)
Return (CRS1)
}
Else
{
Return (CRS0)
}
}
OperationRegion (HPTE, SystemMemory, SHPB, 0x04)
Field (HPTE, ByteAcc, NoLock, Preserve)
{
Offset (0x02),
NVID, 16
}
}
編集後
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (_UID, Zero)
Name (CRS0, ResourceTemplate ()
{
})
Name (CRS1, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y0D)
IRQNoFlags ()
{0}
IRQNoFlags ()
{8}
})
OperationRegion (HPTE, SystemMemory, SHPB, 0x04)
Field (HPTE, ByteAcc, NoLock, Preserve)
{
Offset (0x02),
NVID, 16
}
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Method (_CRS, 0, NotSerialized)
{
Return (CRS1)
}
}
Device (RTC)の編集は必要なさそうだったのでそのままスルー。
ここまで編集したら一度コンパイルしなおして新しいdsdt.amlとして保存
。
Not all control paths return a value (名前)
このエラーに対しては最後に値を返せばよさそうなので
Return (Zero) をそのセクションの最後に追加
ここまでの編集でエラーは出なくなったので最後にRTC,HPETの項目の編集をします。
HPETの編集
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (_UID, Zero)
Name (CRS0, ResourceTemplate ()
{
})
Name (CRS1, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y0D)
IRQNoFlags ()
{0}
IRQNoFlags ()
{8}
})
Method (_STA, 0, NotSerialized)
{
If (LEqual (OSFL (), Zero))
{
If (LEqual (NVID, 0x10DE))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS1, \_SB.PCI0.SBRG.HPET._Y0D._BAS, HPX1)
CreateDWordField (CRS1, \_SB.PCI0.SBRG.HPET._Y0D._LEN, HPX2)
If (LEqual (NVID, 0x10DE))
{
Store (SHPB, HPX1)
Store (SHPL, HPX2)
Return (CRS1)
}
Else
{
Return (CRS0)
}
}
OperationRegion (HPTE, SystemMemory, SHPB, 0x04)
Field (HPTE, ByteAcc, NoLock, Preserve)
{
Offset (0x02),
NVID, 16
}
}
編集後
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (_UID, Zero)
Name (CRS0, ResourceTemplate ()
{
})
Name (CRS1, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y0D)
IRQNoFlags ()
{0}
IRQNoFlags ()
{8}
})
OperationRegion (HPTE, SystemMemory, SHPB, 0x04)
Field (HPTE, ByteAcc, NoLock, Preserve)
{
Offset (0x02),
NVID, 16
}
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Method (_CRS, 0, NotSerialized)
{
Return (CRS1)
}
}
Device (RTC)の編集は必要なさそうだったのでそのままスルー。
ここまで編集したら一度コンパイルしなおして新しいdsdt.amlとして保存
。
