Jump to content

HP ENVY 15 DSDT Compilation errors, just a few left!


stevester911
 Share

2 posts in this topic

Recommended Posts

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
Share on other sites

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
Share on other sites

 Share

×
×
  • Create New...