Hello,
Does anyone know how to create a DSDT binary patch for clover, i need it to support my battery on my laptop;
I already have written a patch that i was using with Chameleon
Here's the patch; It makes the battery indicator work with sony vaio vpc-z13 and ACPIBatteryManager from RehabMan
--- /Users/stefb/cw_dsdt/original.dsl 2014-12-17 17:59:57.000000000 +0100
+++ /Users/stefb/cw_dsdt/patched.dsl 2014-12-17 17:59:57.000000000 +0100
@@ -824,6 +824,12 @@
PRSV, 656
}
+ Method (B1B2, 2, NotSerialized)
+ {
+ Or (ShiftLeft (Arg1, 0x08), Arg0, Local0)
+ Return (Local0)
+ }
+
Scope (_SB)
{
Name (PR00, Package (0x29)
@@ -4261,14 +4267,21 @@
Offset (0x1E),
Offset (0x1F),
Offset (0x20),
- SM01, 16,
- SM10, 16,
- SM18, 16,
- SM19, 16,
+ B001, 8,
+ B101, 8,
+ B010, 8,
+ B110, 8,
+ B018, 8,
+ B118, 8,
+ B019, 8,
+ B119, 8,
SM0D, 16,
- SM0F, 16,
- SM09, 16,
- SM0B, 16,
+ B00F, 8,
+ B10F, 8,
+ B009, 8,
+ B109, 8,
+ B00B, 8,
+ B10B, 8,
SM08, 16,
SM12, 16,
SM14, 16,
@@ -4568,14 +4581,16 @@
})
If (ECON)
{
- Store (Multiply (CE16 (^^PCI0.LPCB.H8EC.SM18), 0x0A), Index (BPKG, One))
- Store (Multiply (CE16 (^^PCI0.LPCB.H8EC.SM10), 0x0A), Index (BPKG, 0x02))
- Store (CE16 (^^PCI0.LPCB.H8EC.SM19), Index (BPKG, 0x04))
- If (CE16 (^^PCI0.LPCB.H8EC.SM10))
+ Store (Multiply (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B018, ^^PCI0.LPCB.H8EC.B118)), 0x0A), Index (BPKG,
+ One))
+ Store (Multiply (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B010, ^^PCI0.LPCB.H8EC.B110)), 0x0A), Index (BPKG,
+ 0x02))
+ Store (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B019, ^^PCI0.LPCB.H8EC.B119)), Index (BPKG, 0x04))
+ If (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B010, ^^PCI0.LPCB.H8EC.B110)))
{
- Store (Multiply (CE16 (^^PCI0.LPCB.H8EC.SM01), 0x0A), Local0)
+ Store (Multiply (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B001, ^^PCI0.LPCB.H8EC.B101)), 0x0A), Local0)
Store (Local0, Index (BPKG, 0x05))
- Store (Multiply (CE16 (^^PCI0.LPCB.H8EC.SM18), 0x0A), Local0)
+ Store (Multiply (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B018, ^^PCI0.LPCB.H8EC.B118)), 0x0A), Local0)
Store (Divide (Local0, 0x7D, ), Index (BPKG, 0x06))
Store (Divide (Local0, 0x01F4, ), Index (BPKG, 0x07))
Store (Divide (Local0, 0x01F4, ), Index (BPKG, 0x08))
@@ -4647,18 +4662,19 @@
And (Local0, 0x0C, Local0)
ShiftRight (Local0, 0x02, Local0)
Store (Local0, Index (PKG1, Zero))
- Store (CE16 (^^PCI0.LPCB.H8EC.SM0B), Local0)
+ Store (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B00B, ^^PCI0.LPCB.H8EC.B10B)), Local0)
If (And (Local0, 0x8000))
{
XOr (Local0, 0xFFFF, Local0)
Increment (Local0)
}
- Store (Multiply (Local0, CE16 (^^PCI0.LPCB.H8EC.SM09)), Local1)
+ Store (Multiply (Local0, CE16 (B1B2 (^^PCI0.LPCB.H8EC.B009, ^^PCI0.LPCB.H8EC.B109))), Local1)
Store (Divide (Local1, 0x03E8, ), Local1)
Store (Local1, Index (PKG1, One))
- Store (Multiply (CE16 (^^PCI0.LPCB.H8EC.SM0F), 0x0A), Index (PKG1, 0x02))
- Store (CE16 (^^PCI0.LPCB.H8EC.SM09), Index (PKG1, 0x03))
+ Store (Multiply (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B00F, ^^PCI0.LPCB.H8EC.B10F)), 0x0A), Index (PKG1,
+ 0x02))
+ Store (CE16 (B1B2 (^^PCI0.LPCB.H8EC.B009, ^^PCI0.LPCB.H8EC.B109)), Index (PKG1, 0x03))
}
Return (PKG1)