stevester911 Posted January 5, 2012 Share Posted January 5, 2012 Hy everyone, just trying to iron out the last few compilation errors on my SSDT4.dsl file. I posted my errors, corresponding code sections and the entire SSDT4.dsl file. Any help to finish this up is much appreciated! /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1064: One, If (LEqual (DGPR, One)) Error 4096 - syntax error, unexpected PARSEOP_IF, expecting ',' or ')' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1064: One, If (LEqual (DGPR, One)) Error 4096 - syntax error, unexpected ')' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1067: One, Return (Zero), If (LEqual (Arg0, 0x03)) Error 4096 - syntax error, unexpected PARSEOP_RETURN, expecting ',' or ')' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1084: }, If (LEqual (Arg0, 0x04)) Error 4096 - syntax error, unexpected ',' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1108: }, If (LEqual (Arg0, 0x05)) Error 4096 - syntax error, unexpected ',' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1115: })) Error 4096 - syntax error, unexpected ')' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1123: }, If (LEqual (Arg0, 0x08)) Error 4096 - syntax error, unexpected ',' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1167: }, Return (Zero))) Error 4096 - syntax error, unexpected ',' ^ /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1167: }, Return (Zero))) Error 4096 - syntax error, unexpected ')' ^ CORRESPONDING CODE (1057-1170): If (LEqual (Arg0, 0x02)) { CreateWordField (Arg1, Zero, FN2S) CreateByteField (Arg1, 0x02, DGPR) If (LEqual (DGPR, Zero)) { P8XH (0x04, 0x96, One, GLSC (), \_SB.PCI0.PEG0.PEGP._OFF (), GLSR (), P8XH (0x04, 0x97, One, If (LEqual (DGPR, One)) { P8XH (0x04, 0x50, One, GLSC (), \_SB.PCI0.PEG0.PEGP._ON (), GLSR (), P8XH (0x04, 0x51, One, Return (Zero), If (LEqual (Arg0, 0x03)) { CreateWordField (Arg1, Zero, FN3S) CreateWordField (Arg1, 0x02, SDMG) GLSC () If (LEqual (SDMG, Zero)) { \_SB.PCI0.PEG0.PEGP.SGPO (\_SB.PCI0.PEG0.PEGP.DSEL, Zero) } If (LEqual (SDMG, One)) { \_SB.PCI0.PEG0.PEGP.SGPO (\_SB.PCI0.PEG0.PEGP.DSEL, One) } GLSR () Return (Zero) }, If (LEqual (Arg0, 0x04)) { CreateWordField (Arg1, Zero, FN4S) CreateWordField (Arg1, 0x02, SIMG) GLSC () If (LEqual (SIMG, Zero)) { \_SB.PCI0.PEG0.PEGP.SGPO (\_SB.PCI0.PEG0.PEGP.ESEL, Zero) } If (LEqual (SIMG, One)) { \_SB.PCI0.PEG0.PEGP.SGPO (\_SB.PCI0.PEG0.PEGP.ESEL, One) If (LEqual (PJNE, 0x05)) { If (LEqual (BDID, 0x36)) { Sleep (0xFA) } } } GLSR () Return (Zero) }, If (LEqual (Arg0, 0x05)) { CreateWordField (Arg1, Zero, FN5S) CreateWordField (Arg1, 0x02, TGFX) Store (TGFX, \_SB.PCI0.PEG0.PEGP.TGXA) Store (One, \_SB.PCI0.PEG0.PEGP.GSTP) Return (Zero) })) }, If (LEqual (Arg0, 0x06)) { CreateWordField (Arg1, Zero, FN6S) CreateWordField (Arg1, 0x02, AGFX) Store (AGFX, \_SB.PCI0.PEG0.PEGP.AGXA) Store (Zero, \_SB.PCI0.PEG0.PEGP.GSTP) Return (Zero) }, If (LEqual (Arg0, 0x08)) { Name (TMP3, Buffer (0x0100) { /* 0000 */ 0x0F, 0x00, 0x46, 0x00, 0x07, 0x01, 0x00, 0x00, /* 0008 */ 0x01, 0x07, 0x01, 0x01, 0x00, 0x01, 0x05, 0x00, /* 0010 */ 0x00, 0x00, 0x04, 0x05, 0x00, 0x01, 0x10, 0x01, /* 0018 */ 0x07, 0x03, 0x00, 0x00, 0x03, 0x07, 0x03, 0x01, /* 0020 */ 0x10, 0x02, 0x07, 0x07, 0x00, 0x01, 0x03, 0x07, /* 0028 */ 0x07, 0x01, 0x10, 0x02, 0x07, 0x09, 0x00, 0x02, /* 0030 */ 0x03, 0x07, 0x09, 0x01, 0x20, 0x02, 0x07, 0x0A, /* 0038 */ 0x00, 0x03, 0x03, 0x07, 0x0A, 0x01, 0x30, 0x02, /* 0040 */ 0x07, 0x0B, 0x00, 0x04, 0x03, 0x07, 0x0B, 0x01, /* 0048 */ 0x30, 0x02, 0x07, 0x0C, 0x00, 0x06, 0x03 }) CreateWordField (TMP3, Zero, ATNO) CreateWordField (TMP3, 0x02, ATSZ) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD2, One), Index (TMP3, 0x0E)) If (LOr (LEqual (PJNE, 0x05), LEqual (PJNE, 0x04))) { Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD2, 0x02), Index (TMP3, 0x13)) } Else { Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD2, One), Index (TMP3, 0x13)) } Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD3, One), Index (TMP3, 0x18)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD3, 0x02), Index (TMP3, 0x1D)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD4, One), Index (TMP3, 0x22)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD4, 0x02), Index (TMP3, 0x27)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD5, One), Index (TMP3, 0x2C)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD5, 0x02), Index (TMP3, 0x31)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD6, One), Index (TMP3, 0x36)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD6, 0x02), Index (TMP3, 0x3B)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD7, One), Index (TMP3, 0x40)) Store (ADPM (\_SB.PCI0.PEG0.PEGP.MXD7, 0x02), Index (TMP3, 0x45)) If (And (\_SB.PCI0.PEG0.PEGP.SGFL, One)) { Store (Add (ATNO, One), ATNO) Store (Add (ATSZ, 0x05), ATSZ) } Return (TMP3) }, Return (Zero))) } } } /Users/mahmood1/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl 1261: Name) Error 4096 - syntax error, unexpected PARSEOP_NAME, expecting $end ^ CORRESPONDING CODE (1254-1267): Multiply (Local0, 0x08, Local2) CreateField (ROM1, Local2, Local3, TMPB) Store (TMPB, ROM2) Return (ROM2) } } Name (BDFR, 0x000F804C) Name (GPLS, Zero) OperationRegion (GPCR, SystemMemory, Or (PEBS, BDFR, BDFR), One) Field (GPCR, AnyAcc, NoLock, Preserve) { GPCT, 1 } SSDT4.zip Link to comment https://www.insanelymac.com/forum/topic/274288-hp-envy-15-dsdt-compilation-errors-just-a-few-left/ Share on other sites More sharing options...
stevester911 Posted January 6, 2012 Author Share Posted January 6, 2012 Hey all so I decided to take a different approach and I'm happy to say I now have DSDT/SSDT tables to share. Currently heres how people usually handle DSDT/SSDT: 1. Extract aml data in list format from computer. 2. extract the data into individual tables. 3. Decompile to dsl type. 4. fix errors and recompile into binary aml format. I decided to take a shortcut, after lots of research I learned that bios programmers use a compiler must less strict than the iasl that we all use hence why they are able to compile our bios without error while we can sometimes get many. I went with the motto "if its good enough for them, its good enough for me". Here's what I did: 1. Extract data using acpidump command with binary and table identifier flags set in order to dump straight into the desired format (binary aml). The result working files! Now the only caveat of this is that if you wish to modify your dsdt then you will need to correct the compilation errors. However for our laptop, there is only 1 error in the DSDT so this is no problem. And there should be no need to modify the SSDT tables (phew there were over 20 errors!). The resulting files are attached, enjoy! *MADE FOR i7-2860QM PROCESSOR!* HP_ENVY_15_3000_DSDT_SSDT.zip Link to comment https://www.insanelymac.com/forum/topic/274288-hp-envy-15-dsdt-compilation-errors-just-a-few-left/#findComment-1783776 Share on other sites More sharing options...
Recommended Posts