해킨질답
  • 목록
  • 아래로
  • 위로
  • 쓰기
  • 검색

dsdt 수정 중.. _BIF / _BST 관련

대기권탈출님의 기기정보
보유한 기기가 없습니다
추가사양 및 설치(할)OS el capitan 10.11.6
공지숙지/증상설명 숙지

efi 마운트해서 추출(?)한 dsdt파일입니다.

스크린샷 2017-03-27 오후 10.22.30.png

dsdt 직접 수정해 볼려고 보는 중입니다.

근데 제 것은 _BIF와 _BST가 없네요 ㅜㅠ 

이런 경우 어떻게 해야 하나요?

대기권탈출
5 Lv. 1701/2000P

댓글 10

참여를 하시면 세상을 바꿉니다.
profile image
goldbat 2017.03.28. 00:17 |댓주소:#1526543

EmbeddedControl 이하 8비트 이상의 변수를 모두 메모하신후에

검색 을 사용 8비트 이상의 변수중에

Store (****, Index (****, Zero)) 이런 비슷한 문구에 사용된 변수만 8비트로 변경하시면 됩니다.

 

_BIF/_BST 는 노트북에 따라 있을수도 있고 없을수도 있습니다.

https://www.tonymacx86.com/threads/guide-how-to-patch-dsdt-for-working-battery-status.116102/

위 사이트를 잘 검토해보시길 바랍니다.

 

 

댓글
대기권탈출 작성자 2017.04.01. 16:10 |댓주소:#1533094
앞에도 댓글 주셨는데 _ 유무를 구분 못했었던 것 같습니다. 다시한번 확인해보니 아래와 같이 있던데 이걸 8비트화 해야 하는 건가요?

Method (BTIF, 1, Serialized)
{
ShiftLeft (0x01, Arg0, Local7)
BTDR (0x01)
If (LEqual (BSTA (Local7), 0x0F))
{
Return (0xFF)
}

Acquire (BTMX, 0xFFFF)
Store (NGBF, Local0)
Release (BTMX)
If (LEqual (And (Local0, Local7), 0x00))
{
Return (0x00)
}

Store (NDBS, Index (NBST, Arg0))
Acquire (BTMX, 0xFFFF)
Or (NGBT, Local7, NGBT)
Release (BTMX)
Acquire (ECMX, 0xFFFF)
If (ECRG)
{
Store (Arg0, BSEL)
Store (BFC, Local0)
Store (Local0, Index (DerefOf (Index (NBTI, Arg0)), 0x01))
Store (Local0, Index (DerefOf (Index (NBTI, Arg0)), 0x02))
Store (BDV, Index (DerefOf (Index (NBTI, Arg0)), 0x04))
Store (NLB1, Index (DerefOf (Index (NBTI, Arg0)), 0x05))
Store (NLB2, Index (DerefOf (Index (NBTI, Arg0)), 0x06))
Store (BSN, Local0)
Store (BDAT, Local1)
}

Release (ECMX)
Store (GBSS (Local0, Local1), Local2)
Store (Local2, Index (DerefOf (Index (NBTI, Arg0)), 0x0A))
Acquire (BTMX, 0xFFFF)
And (NGBF, Not (Local7), NGBF)
Release (BTMX)
Return (0x00)
}

Method (BTST, 2, Serialized)
{
ShiftLeft (0x01, Arg0, Local7)
BTDR (0x01)
If (LEqual (BSTA (Local7), 0x0F))
{
Store (Package (0x04)
{
0x00,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF
}, Index (NBST, Arg0))
Return (0xFF)
}

Acquire (BTMX, 0xFFFF)
If (Arg1)
{
Store (0xFF, NGBT)
}

Store (NGBT, Local0)
Release (BTMX)
If (LEqual (And (Local0, Local7), 0x00))
{
Return (0x00)
}

Acquire (ECMX, 0xFFFF)
If (ECRG)
{
Store (Arg0, BSEL)
Store (BST, Local0)
Store (BPR, Local3)
Store (BRC, Index (DerefOf (Index (NBST, Arg0)), 0x02))
Store (BPV, Index (DerefOf (Index (NBST, Arg0)), 0x03))
}

Release (ECMX)
If (LEqual (GACS (), 0x01))
{
And (Not (0x01), Local0, Local0)
}
Else
{
And (Not (0x02), Local0, Local0)
}

If (And (Local0, 0x01))
{
Acquire (BTMX, 0xFFFF)
Store (Local7, NDCB)
Release (BTMX)
}

Store (Local0, Index (DerefOf (Index (NBST, Arg0)), 0x00))
If (And (Local0, 0x01))
{
If (LOr (LLess (Local3, 0x0190), LGreater (Local3, 0x1964)))
{
Store (DerefOf (Index (DerefOf (Index (NBST, Arg0)), 0x01)),
Local5)
If (LOr (LLess (Local5, 0x0190), LGreater (Local5, 0x1964)))
{
Store (Divide (0x1AF4, 0x02, ), Local3)
}
Else
{
Store (Local5, Local3)
}
}
}

Store (Local3, Index (DerefOf (Index (NBST, Arg0)), 0x01))
Acquire (BTMX, 0xFFFF)
And (NGBT, Not (Local7), NGBT)
Release (BTMX)
Return (0x00)
}
댓글
대기권탈출 작성자 2017.04.01. 16:12 |댓주소:#1533099
btif, btst 가 두개가 있군요. 이중 어떤걸 수정하면 되는지 알려주실 수 있을까요?

Method (BTIF, 1, Serialized)
{
Store (\_SB.PCI0.LPCB.EC0.BTIF (Arg0), Local0)
If (LEqual (Local0, 0xFF))
{
Return (Package (0x0D)
{
0x00,
0xFFFFFFFF,
0xFFFFFFFF,
0x01,
0xFFFFFFFF,
0x00,
0x00,
0x00,
0x00,
"",
"",
"",
0x00
})
}
Else
{
Return (DerefOf (Index (NBTI, Arg0)))
}
}

Name (NFBS, 0x01)
Method (BTST, 1, Serialized)
{
Store (NFBS, Local1)
If (NFBS)
{
Store (0x00, NFBS)
}

Store (\_SB.PCI0.LPCB.EC0.BTST (Arg0, Local1), Local0)
Return (DerefOf (Index (NBST, Arg0)))
}
댓글
권한이 없습니다. 로그인

신고

"님의 댓글"

이 댓글을 신고 하시겠습니까?

삭제

"님의 댓글"

이 댓글을 삭제하시겠습니까?