Jump to content

No ICH7 SATA Controller displayed in 'System Profiler'


  • Please log in to reply
15 replies to this topic

#1
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Muppet Show
I have been battling to solve this on my own while searching here and other forums, but no luck. I would really appreciate your help and ideas.

I have a working 10.6.4 vanilla setup (since 10.6.0) on my Shuttle XPC SG31G2 V2 with almost no kexts in /E/E with minor DSDT tweaking. Specs report Intel SG31 & ICH7 chipsets, while lspci -nn reports:
00:1f.2 IDE interface [0101]: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller [8086:27c0]
The last thing I would like to solve is to make System Profiler properly display the section on SATA Devices, as my Intel SATA controller 0x27c0 is not recognised at all (by name/model).

Posted Image

The system boots, don't get me wrong; it's just that 'System Profiler' does not report the controller at all, despite being there in IORegistryExplorer and having attached my 2 HDDs (on first channel) and DVD-R (on second channel). Please note it's not any variant of the ICH7 IDE controller; no ICH7R or ICH7M. It's good old plain ICH7, with only 3 SATA connectors on the motherboard.

Posted Image

I have so far done the following to perhaps solve this, but no luck:

1. I introduced in Device (SATA) in DSDT.aml the device-id of the controller, with the hope it does some good:
Device (SATA)
	 {
		  Name (_ADR, 0x001F0002)
		  Method (_DSM, 4, NotSerialized)
		  {
			   Return (MCID (Arg2, 0x27C08086))  // Intel ICH7 Family SATA IDE Controller [8086:27c0]
		  }
		  ...etc...
Please note that I am past using DTGP and moved on to MasterChief's MCDP and MCID methods.

2. I used an edited legacy kext in /E/E named SerialATAPortInjector.kext with correct IOPCIPrimaryMatch values, hoping it would help:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict>	<key>CFBundleDevelopmentRegion</key>	<string>English</string>	<key>CFBundleIdentifier</key>	<string>com.shuttle.plist.sATAPortInjector</string>	<key>CFBundleInfoDictionaryVersion</key>	<string>6.0</string>	<key>CFBundleName</key>	<string>Serial ATA Chipset Injector</string>	<key>CFBundlePackageType</key>	<string>KEXT</string>	<key>CFBundleSignature</key>	<string>????</string>	<key>CFBundleVersion</key>	<string>1.1.2</string>	<key>IOKitPersonalities</key>	<dict>		<key>ICH7 ATA/100</key>		<dict>			<key>CFBundleIdentifier</key>			<string>com.apple.driver.AppleIntelPIIXATA</string>			<key>Controller Name</key>			<string>ICH7 ATA/100</string>			<key>IOClass</key>			<string>AppleIntelPIIXATARoot</string>			<key>IOPCIPrimaryMatch</key>			<string>0x27df8086</string>			<key>IOProbeScore</key>			<integer>2000</integer>			<key>IOProviderClass</key>			<string>IOPCIDevice</string>			<key>Supported Transfer Modes</key>			<string>0x3f061d</string>		</dict>		<key>ICH7 Serial ATA</key>		<dict>			<key>CFBundleIdentifier</key>			<string>com.apple.driver.AppleIntelPIIXATA</string>			<key>Controller Name</key>			<string>ICH7 SATA</string>			<key>IOClass</key>			<string>AppleIntelPIIXATARoot</string>			<key>IOPCIPrimaryMatch</key>			<string>0x27c08086</string>			<key>IOProbeScore</key>			<integer>2000</integer>			<key>IOProviderClass</key>			<string>IOPCIDevice</string>			<key>Serial ATA</key>			<true/>			<key>Supported Transfer Modes</key>			<string>0x3f061d</string>		</dict>	</dict>	<key>OSBundleRequired</key>	<string>Root</string></dict></plist>
3. I introduced "name", "model" and other parameters in Device (SATA) in DSDT.aml:
Device (SATA)
	 {
		  Name (_ADR, 0x001F0002)  
		  Method (_DSM, 4, NotSerialized)
		  {
			   Store (Package (0x0A)
			   {
					"AAPL,slot-name",
						 Buffer (0x09) {"Built In"},
					"built-in",
						 Buffer (0x01) {Zero},
					"device_type",
						 Buffer (0x10) {"AHCI Controller"},
					"model",
						 Buffer (0x1A) {"ICH7 SATA/AHCI Controller"},
					"name",
						 Buffer (0x1A) {"ICH7 SATA/AHCI Controller"},
					"device-id",
						 Buffer (0x04) {0xC0, 0x27, 0x00, 0x00}  // ICH7 SATA Controller [8086:27c0]
					}, Local0)
					MCDP (Arg2, RefOf (Local0))
					Return (Local0)
			   }
		  }
		  ...etc...
4. I tried to edit the contents of System Profiler's reporters (as per the Leopard 10.5.x patch for displaying proper CPU) but could not find anything relevant.

5. Heck, I even went so far and introduced a supposedly AHCI fix in DSDT.aml as per this ProjectOSX thread!
Method (\PINI, 0, NotSerialized)  // Added method needed for the SATA AHCI patch
	 {
		  Store (0x40, \_SB.PCI0.SATA.AHCI)  // Force SATA in AHCI mode
	 }

	 Method (\_WAK, 1, NotSerialized)
	 {
		  PINI()  // Force SATA in AHCI mode
		  ...etc...
	 }

	 Method (\_SB.PCI0._INI, 0, NotSerialized)
	 {
		  PINI()  // Force SATA in AHCI mode 
		  ...etc...
	 }

	 Device (SATA)
	 {
		  Name (_ADR, 0x001F0002)
		  OperationRegion (SAHC, PCI_Config, 0x90, 0x08)
		  Field (SAHC, ByteAcc, NoLock, Preserve)
		  {
			   AHCI, 8
		  }
		  ...etc...

Can anyone really give a hint as to what I could do? I am sure there are people like me with the same problem...

Thanks in advance. I will be updating this post often with more attempts...

#2
stellarola

stellarola

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 682 posts
  • Gender:Male
  • Location:Lextown, KY
I'm having the same problem on my Gigabyte GA-945GCMX-S2.

http://cl.ly/2839bb83c5dcb289fc63

-Stell

#3
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Muppet Show
Dear stellarola did you ever manage to solve this? Perhaps by editing some Mac configuration file(s) e.g. for MacPro 3,1 perhaps?

#4
taky2008

taky2008

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 112 posts
HOw does u installed in ICH7 ?

#5
LatinMcG

LatinMcG

    Insanely digesting DSDT

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,509 posts
  • Gender:Male
  • Location:Tampa, Florida
maybe with a devicemergenub ? ask andy

#6
Inmike02

Inmike02

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts
  • Gender:Male
  • Location:Davis, CA
  • Interests:Computers, Computer Networking, Mobile Devices, and anything else Geeks like.
I have the exact same issue on my Gigabyte GA-G31M-ES2L. I have been wanting to enable TRIM on my Kingston SSD and it won't work. I have a feeling (although I am not completely sure) that this lack of system profiler information is leading to the TRIM problem. I would appreciate any help. Thanks!

#7
ZhelR

ZhelR

    InsanelyMac Protégé

  • Members
  • Pip
  • 1 posts

Hi, I am having exactly the same issue with my ASrock G41C-VS and 10.7.2. And I am wondering if anybody came up with any solution for this?

thanks.



#8
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Muppet Show
I've given up, mates. Still running Snow Leopard.
So this also happens in Lion, huh?
Nobody has offered solution, as nobody uses our pathetic motherboards :robot:

#9
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,120 posts
  • Gender:Male
  • Location:Brazil
AHCIPortInjector.kext?

#10
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Muppet Show

AHCIPortInjector.kext?

No, dear Gringo Vermelho, not even that. I tried the injector. Remember that our machines do not support AHCI. Their SATA works via IOATAFamily.kext that I confirm via kextstat.

I also tried editing the actual Info.plist of the kext itself. However, this is crazy; the AppleIntelPIIXATA.kext (plugin of IOATAFamily.kext) included the controller 27c0 that was already there. Even tried to inject new values, such as Chipset Name and Vendor Name but nothing appears in System Profiler, unfortunately.

<key>ICH7 Serial ATA</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.AppleIntelPIIXATA</string>
			<key>Chipset Name</key>
			<string>ICH7 SATA</string>
			<key>Controller Name</key>
			<string>ICH7 SATA</string>
			<key>IOClass</key>
			<string>AppleIntelPIIXATARoot</string>
			<key>IOPCIPrimaryMatch</key>
			<string>0x27c08086</string>
			<key>IOProbeScore</key>
			<integer>2000</integer>
			<key>IOProviderClass</key>
			<string>IOPCIDevice</string>
			<key>Serial ATA</key>
			<true/>
			<key>Supported Transfer Modes</key>
			<string>0x3f061d</string>
			<key>Vendor Name</key>
			<string>Intel</string>
		</dict>
I think the binary itself must be modified. I cannot do this as my knowledge is too limited. Where can we seek help? Who is such a guru that can provide a modified binary, you think?

Cheers.

#11
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,120 posts
  • Gender:Male
  • Location:Brazil

No, dear Gringo Vermelho, not even that. I tried the injector. Remember that our machines do not support AHCI. Their SATA works via IOATAFamily.kext that I confirm via kextstat.


Oops, I meant to say ATAPortInjector.kext. But you probably tried that too.

#12
MacKonsti

MacKonsti

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 228 posts
  • Gender:Male
  • Location:Muppet Show

Oops, I meant to say ATAPortInjector.kext. But you probably tried that too.

Didn't bother trying it as I also tried editing the actual Info.plist of the kext itself, but it already included the controller 27c0. Still, nothing appears in System Profiler. Do you know how we can check what System Profiler needs to read, so we can inject it? I tried IORegistryExplorer but to no avail...

#13
moaBoBmArLeY

moaBoBmArLeY

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts
Hello,

I know this topic is too old but...

I have Asus P5L 1394 motherboard

Chipset :

Northbridge Intel MCH 954P

Southbridge Intel ICH7


Storage:

Intel ICH7 Southbridge supports:

- 1 x Ultra DMA 100/66 hard disk drivers

- 4 x Serial ATA 3.0 Gb/s hard disk drivers

JMicron JMB 360 Serial ATA controller supports:

- 1 x External SATA 3.0 Gb/s port (SATA On-the Go)


More informations about SATA controler:

Device Description Intel 82801GB ICH7 - SATA Controller [A-1]
Bus Type PCI
Bus / Device / Function 0 / 31 / 2
Device ID 8086-27C0
Subsystem ID 1043-2601
Device Class 0101 (IDE Controller)
Revision 01


and I have the same problem (No ICH7 SATA Controller displayed in 'System Profiler')

But when I boot from "Hazard 10.6.6i" distro, after choosing language I go to tools then system profiler and I can see Serial ATA controler displayed as it should be.

I don't know if it's a kext loaded at boot that resolve the problem or a moded kernel that make it possible.


#14
grisno

grisno

    InsanelyMac Protégé

  • Members
  • Pip
  • 3 posts
  • Gender:Male
  • Location:Spain
Distribution "Hazard 10.6.6i" using a patched legacy_kernel identifying ICH7 SATA controller as a standard SATA controller. Additionally uses a patched version of the driver kext IOATAFamily.kext (this kext does not solve the problem of System Profiler), an injector AHCI and ATA.

I am attaching the legacy_kernel to try it yourself in a Snow Leopard 10.6.0. In version 10.6.8 gives a Kernel Panic.

I think you can solve the problem of ICH7 patching the kernel, but it would be necessary to review the source code legacy_kernel patched. Perhaps there is a ppf patch that can be applied in a vanilla kernel


Additional Note: You can change the appearance of the "Serial-ATA" in the "System Profiler" by modifying the file "/System/Library/SystemProfiler/SPSerialATAReporter.spreporter/Contents/Resources/SPProperties.plist".

You should change:

<key> _name </ key>
<dict>
<key> _isColumn </ key>
<string> YES </ string>
<key> _isOutlineColumn </ key>
<string> YES </ string>
<key> _order </ key>
<string> 0 </ string>
</ dict>

by ...

<key> _name </ key>
<dict>
<key> _isColumn </ key>
<string> NO </ string>
<key> _isOutlineColumn </ key>
<string> YES </ string>
<key> _order </ key>
<string> 0 </ string>
</ dict>

This does not solve the problem of detection ICH7, but offers another view of the SATA controller. :-)

Attached Files



#15
LatinMcG

LatinMcG

    Insanely digesting DSDT

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,509 posts
  • Gender:Male
  • Location:Tampa, Florida
i think we need a OPROM patch in bios to add ICH7M SATA ACHI Rom

#16
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 3,016 posts
  • Gender:Male
  • Location:Moscow

ICH7 works OOB on two my computers: desktop and mobile (#3).

See no reason to worry about.







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy