Jump to content

Weird LocalApicId=N order


Time2Retire
 Share

6 posts in this topic

Recommended Posts

This is what I get on my desktop hack with an Intel quad core CPU:

 

AppleACPICPU: ProcessorId=1 LocalApicId=0 Enabled

AppleACPICPU: ProcessorId=2 LocalApicId=1 Enabled

AppleACPICPU: ProcessorId=3 LocalApicId=2 Enabled

AppleACPICPU: ProcessorId=4 LocalApicId=3 Enabled

 

And this on my HP notebook (see sig):

 

AppleACPICPU: ProcessorId=1 LocalApicId=0 Enabled

AppleACPICPU: ProcessorId=2 LocalApicId=1 Enabled

AppleACPICPU: ProcessorId=3 LocalApicId=4 Enabled

AppleACPICPU: ProcessorId=4 LocalApicId=5 Enabled

AppleACPICPU: ProcessorId=5 LocalApicId=0 Disabled

AppleACPICPU: ProcessorId=6 LocalApicId=0 Disabled

AppleACPICPU: ProcessorId=7 LocalApicId=0 Disabled

AppleACPICPU: ProcessorId=8 LocalApicId=0 Disabled

 

I already removed four extra/unused Processor (CPUn, ...)'s in my DSDT's _PR scope so that should be fine I guess. The question now is: How do I solve this problem? What do I have to do to prevent the last four from showing up?

 

Also. Is this somehow related to the cpus=n boot option?

 

Cheers,

 

Sam.

Link to comment
Share on other sites

Sweet. I found something. It's the fault of my HP notebook's stupid BIOS (bad apic.aml). Here's a snippet of the original dump (the most important bits):

[02Ch 044  1]                Subtable Type : 00 <Processor Local APIC>
[02Dh 045  1]                       Length : 08
[02Eh 046  1]                 Processor ID : 01
[02Fh 047  1]                Local Apic ID : 00
[030h 048  4]        Flags (decoded below) : 00000001
                        Processor Enabled : 1

[034h 052  1]                Subtable Type : 00 <Processor Local APIC>
[035h 053  1]                       Length : 08
[036h 054  1]                 Processor ID : 02
[037h 055  1]                Local Apic ID : 01
[038h 056  4]        Flags (decoded below) : 00000001
                        Processor Enabled : 1

[03Ch 060  1]                Subtable Type : 00 <Processor Local APIC>
[03Dh 061  1]                       Length : 08
[03Eh 062  1]                 Processor ID : 03
[03Fh 063  1]                Local Apic ID : [color="#FF0000"][b]04[/b][/color]
[040h 064  4]        Flags (decoded below) : 00000001
                        Processor Enabled : 1

[044h 068  1]                Subtable Type : 00 <Processor Local APIC>
[045h 069  1]                       Length : 08
[046h 070  1]                 Processor ID : 04
[047h 071  1]                Local Apic ID : [color="#FF0000"][b]05[/b][/color]
[048h 072  4]        Flags (decoded below) : 00000001
                        Processor Enabled : 1

[color="#FF0000"][04Ch 076  1]                Subtable Type : 00 <Processor Local APIC>
[04Dh 077  1]                       Length : 08
[04Eh 078  1]                 Processor ID : 05
[04Fh 079  1]                Local Apic ID : 00
[050h 080  4]        Flags (decoded below) : 00000000
                        Processor Enabled : 0

[054h 084  1]                Subtable Type : 00 <Processor Local APIC>
[055h 085  1]                       Length : 08
[056h 086  1]                 Processor ID : 06
[057h 087  1]                Local Apic ID : 00
[058h 088  4]        Flags (decoded below) : 00000000
                        Processor Enabled : 0

[05Ch 092  1]                Subtable Type : 00 <Processor Local APIC>
[05Dh 093  1]                       Length : 08
[05Eh 094  1]                 Processor ID : 07
[05Fh 095  1]                Local Apic ID : 00
[060h 096  4]        Flags (decoded below) : 00000000
                        Processor Enabled : 0

[064h 100  1]                Subtable Type : 00 <Processor Local APIC>
[065h 101  1]                       Length : 08
[066h 102  1]                 Processor ID : 08
[067h 103  1]                Local Apic ID : 00
[068h 104  4]        Flags (decoded below) : 00000000
                        Processor Enabled : 0[/color]

I will remove the last four, unneeded blocks and change the order, and fix the "Table Length" to see what gives.

Link to comment
Share on other sites

Another update. Here's the new / patched version of apic.dsl:

[000h 0000  4]                    Signature : "APIC"    /* Multiple APIC Description Table */
[004h 0004  4]                 Table Length : 0000006C
[008h 0008  1]                     Revision : 02
[009h 0009  1]                     Checksum : D4
[00Ah 0010  6]                       Oem ID : "HPQOEM"
[010h 0016  8]                 Oem Table ID : "SLIC-MPC"
[018h 0024  4]                 Oem Revision : 00000001
[01Ch 0028  4]              Asl Compiler ID : "INTL"
[020h 0032  4]        Asl Compiler Revision : 20100915

[024h 0036  4]           Local Apic Address : FEE00000
[028h 0040  4]        Flags (decoded below) : 00000001
                       PC-AT Compatibility : 1

[02Ch 0044  1]                Subtable Type : 00 <Processor Local APIC>
[02Dh 0045  1]                       Length : 08
[02Eh 0046  1]                 Processor ID : 01
[02Fh 0047  1]                Local Apic ID : 00
[030h 0048  4]        Flags (decoded below) : 00000001
                         Processor Enabled : 1

[034h 0052  1]                Subtable Type : 00 <Processor Local APIC>
[035h 0053  1]                       Length : 08
[036h 0054  1]                 Processor ID : 02
[037h 0055  1]                Local Apic ID : 01
[038h 0056  4]        Flags (decoded below) : 00000001
                         Processor Enabled : 1

[03Ch 0060  1]                Subtable Type : 00 <Processor Local APIC>
[03Dh 0061  1]                       Length : 08
[03Eh 0062  1]                 Processor ID : 03
[03Fh 0063  1]                Local Apic ID : 02
[040h 0064  4]        Flags (decoded below) : 00000001
                         Processor Enabled : 1

[044h 0068  1]                Subtable Type : 00 <Processor Local APIC>
[045h 0069  1]                       Length : 08
[046h 0070  1]                 Processor ID : 04
[047h 0071  1]                Local Apic ID : 03
[048h 0072  4]        Flags (decoded below) : 00000001
                         Processor Enabled : 1

[04Ch 0076  1]                Subtable Type : 01 <I/O APIC>
[04Dh 0077  1]                       Length : 0C
[04Eh 0078  1]                  I/O Apic ID : 02
[04Fh 0079  1]                     Reserved : 00
[050h 0080  4]                      Address : FEC00000
[054h 0084  4]                    Interrupt : 00000000

[058h 0088  1]                Subtable Type : 02 <Interrupt Source Override>
[059h 0089  1]                       Length : 0A
[05Ah 0090  1]                          Bus : 00
[05Bh 0091  1]                       Source : 00
[05Ch 0092  4]                    Interrupt : 00000002
[060h 0096  2]        Flags (decoded below) : 0000
                                  Polarity : 0
                              Trigger Mode : 0

[062h 0098  1]                Subtable Type : 02 <Interrupt Source Override>
[063h 0099  1]                       Length : 0A
[064h 0100  1]                          Bus : 00
[065h 0101  1]                       Source : 09
[066h 0102  4]                    Interrupt : 00000009
[06Ah 0106  2]        Flags (decoded below) : 000D
                                  Polarity : 1
                              Trigger Mode : 3

It was surprisingly easy. Had to download a copy of iasl after I made my changes. Compiles fine now. Great.

 

Next step is to inject my modifications with a capable /boot loader. Going to try out master chief's work first. Will update when I get it to work.

Link to comment
Share on other sites

HP laptops seem to have tons of ACPI issues.

 

Try Chameleon 2.0 RC5, with your original DSDT processor scope and without loading your modified APIC.aml.

http://www.insanelymac.com/forum/index.php?showtopic=225766

 

If you're using an older bootloader you might want to go through the thread first to see what you need to delete from/add to com.apple.Boot.plist.

Add wait=y to com.apple.Boot.plist to see if things are working better.

Link to comment
Share on other sites

HP laptops seem to have tons of ACPI issues.
So i noticed.

 

Try Chameleon 2.0 RC5, with your original DSDT processor scope and without loading your modified APIC.aml.

http://www.insanelymac.com/forum/index.php?showtopic=225766

Thanks. I'll give it a try... after I found out what com.apple.Boot.plist options I need. Dazzling.

 

If you're using an older bootloader you might want to go through the thread first to see what you need to delete from/add to com.apple.Boot.plist.

Add wait=y to com.apple.Boot.plist to see if things are working better.

I am currently using Revolution (by Master Chief) which itself is pretty old by now, but I love its lack of options to mess with. I mean I can replace my /boot with a newer one. Sure. But all these options and additional files is what is keeping me from doing so.

 

Edit: Messing with the order resulted in this error on my desktop hack.

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.

 Share

×
×
  • Create New...