Jump to content
zoliky

HP 4540s: Initializer list shorter than declared pkg length

Recommended Posts

My specs:

HP 4540s laptop, i5-2450m, Intel HD3000M, BIOS 68IRR Ver F. 01


My DSDT.dsl

https://dl.dropbox.com/u/1924024/dsdthp.dsl


IASL

I use iasl20121114 to compile and decompile the DSDT.


The problem


This is how the original (Hewlett-Packard) DSDT looks.

~iasl: Compilation complete. 0 Errors, 6 Warnings, 275 Remarks, 4643 Optimizations

 

I have more than 200 remarks:

 

dsdthp.dsl  15838:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15856:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15876:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15896:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15916:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15934:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15954:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15972:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  15992:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16012:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16030:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16048:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16066:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16084:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

dsdthp.dsl  16102:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

and much more...

 

Ok, let's examine the first remark:

 

dsdthp.dsl  15838:             Package (0x1A)
Remark   5063 -                               ^ Initializer list shorter than declared package length

 

Package (0x1A) <--- this is line 15838
{
   " ", 
   " ", 
   " ", 
   0x01, 
   0x00, 
   0x01, 
   0x02A7, 
   0x03, 
   " ", 
   " ", 
   " ", 
   0x00, 
   " ", 
   0x00
},

 

There's a way to fix that by replacing Package (0x1A) with Package () but doing that for more than 200 remarks isn't fun. I don't know if removing (0x1A) is correct.


I think the problem is somewhere else, maybe a bracket is missing in the factory DSDT. I searched three forums on the internet, but I didn't find a solution.


Can you please take a look at my DSDT? It is already decompiled. Should I ignore these remarks and warnings?

Your time is greatly appreciated. Thank you!

Link to comment
Share on other sites

Deleting 0x1A is the correct fix, if you leave the package length blank the compiler will count and set it automatically.


In your example the actual length is 14, if you set Package (), after compile/decompile it will become Package (0x0E).

ASUS N53Jq • CPU: Intel Core i7-740QM 1.73GHz • RAM: 6,0GB • HD: 500GB • GPU: GeForce GT 425M 1GB 1920x1080 • OS: OS X 10.8.4 • Linux Mint 15 • Windows 8

Link to comment
Share on other sites

May I ask how did you obtain the correct Package () informations?

For example for this code:


My DSDT:

Package (0x1A)
{
               "HP QuickLook", 
               "", 
               "\\System Configuration\\Device Configurations", 
               Zero, 
               One, 
               Zero, 
               0x0137, 
               0x03, 
               " ", 
               " ", 
               " ", 
               Zero, 
               "Disable", 
               0x02, 
               "Disable", 
               "Enable"
}, 

 

Your fixed DSDT:

 

Package (0x10)
{
               "HP QuickLook", 
               "", 
               "\\System Configuration\\Device Configurations", 
               Zero, 
               One, 
               Zero, 
               0x0137, 
               0x03, 
               " ", 
               " ", 
               " ", 
               Zero, 
               "Disable", 
               0x02, 
               "Disable", 
               "Enable"
}, 

 

My dsdt have 0x1A, and your fixed dsdt have 0x10

Link to comment
Share on other sites

May I ask how did you obtain the correct Package () informations?

For example for this code:


My DSDT:

Package (0x1A)
{
               "HP QuickLook", 
               "", 
               "\\System Configuration\\Device Configurations", 
               Zero, 
               One, 
               Zero, 
               0x0137, 
               0x03, 
               " ", 
               " ", 
               " ", 
               Zero, 
               "Disable", 
               0x02, 
               "Disable", 
               "Enable"
}, 

 

Your fixed DSDT:

 

Package (0x10)
{
               "HP QuickLook", 
               "", 
               "\\System Configuration\\Device Configurations", 
               Zero, 
               One, 
               Zero, 
               0x0137, 
               0x03, 
               " ", 
               " ", 
               " ", 
               Zero, 
               "Disable", 
               0x02, 
               "Disable", 
               "Enable"
}, 

 

My dsdt have 0x1A, and your fixed dsdt have 0x10

count how many objects have within the { } 0x10=16

btn_donate_SM.gif
Link to comment
Share on other sites

Can you please upload the patched DSDT?


Have you got HD 3000 working with QE/CI on 10.8.2?

My HD3000 works without patches or enablers.


I changed this address in AppleIntelSNBGraphicsFB.kext

IOPCIPrimaryMatch
0x1C3A8086

 

to this:

IOPCIPrimaryMatch
0x1E3A8086

 

Please note, this change works only with Intel 7-series motherboards. I use a HP 4540s laptop - i5-2450m sandy bridge.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...
The popup will be closed in 15 seconds...