Contribute
Register

npci=0x2000 what does it do exactly? Also, kernel param

Status
Not open for further replies.
Joined
Sep 21, 2010
Messages
33
Motherboard
gigabyte
CPU
i5
Graphics
8600gt
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. 0
I can't boot into Lion without this. I did not need it for SL. What does it do exactly? Also, regarding command line Chimera boot parameters.....It appears that they all take effect when I boot. for example, I have arch=i386 in Boot.plist but have booted command line with npci=0x2000 arch=x86_64 -v and I get a 64 bit kernel but when I look at the logs all the command line and both Boot.plist params are there. I would think that command line would cause the other params to be ignored?

-Mike
 
gosh darn good question. I use npci=0x2000 as well and have no idea what it does. I also googled it and came up empty handed.

Someone?
Anyone?
Bueller?
 
I have no idea, but I'd quite like to know too!

Oddly, I had to use this flag with PCIRootUID=1 to get my installer to boot, then to boot into Lion first time around. After installing Multibeast with PCIRootUID fix and Graphicsenabler 64bit = yes - I no longer needed to use the apci=0x2000 flag?
 
i upgraded before they had a multi beast for lion so i don't have that flag in my plist and it works fine so i never added it if tony or someone with knowledge could chime in that would be great

after some research i think i it has to do with pci configuration
 
npci=0x2000 is the fix for those whose systems stick at 'pci configuration begins'
 
bcc9 said:
0x2000 is the kIOPCIConfiguratorPFM64 flag, as seen in the IOPCIFamily source code. (PFM64 probably stands for prefetch memory 64 bit).

npci=0x2000 turns off this flag, as npci negates whatever flag bits you specify.

With this flag turned off, the logic that sets fConsoleRange is disabled, and so the new graphics console relocation code is not triggered.

However, the rest of the other new relocation code is still executed, and therein probably lies a problem for some, depending upon your PCI memory config.

AFAIK, npci=0x2000 is working fine without side effects for most users.

bcc9 said:
You need npci=0x2000 under kernel flags to avoid losing console output during boot after the "PCI Configuration begin" message appears.
 
john738411 said:
bcc9 said:
0x2000 is the kIOPCIConfiguratorPFM64 flag, as seen in the IOPCIFamily source code. (PFM64 probably stands for prefetch memory 64 bit).

npci=0x2000 turns off this flag, as npci negates whatever flag bits you specify.

With this flag turned off, the logic that sets fConsoleRange is disabled, and so the new graphics console relocation code is not triggered.

However, the rest of the other new relocation code is still executed, and therein probably lies a problem for some, depending upon your PCI memory config.

AFAIK, npci=0x2000 is working fine without side effects for most users.

Thank you ... this is, at least, a tangible answer. I may not understand it completely, but I'm now further along than before. And ... it gives me a starting point for more inquiries if need be.

Thanks again,

Rick
 
Thank you. Exactly what I was looking for in an explanation. -Mike
 
Status
Not open for further replies.
Back
Top