Jump to content

AppleVIAATA over 4gb RAM bug solved (at least i believe so)! JMicron and AppleNForceATA at development


slashack
 Share

568 posts in this topic

Recommended Posts

Yes I tried your modified nforceata but like I said, it made my computer not boot

I get the "still waiting for root device" problem

 

Try my modified kext again. But this time, boot with -v -f and then take a photo of the screen to see why the kext is not loading or failing.

Link to comment
Share on other sites

Hello Slashack or Verdant,

please forgive if this has been covered, i have been out of the hackintosh game for a bit and was consumed by my iphone since launch day :rolleyes: btw i think medevil went to a paying gig, i see him developing iphone apps. at any rate...

 

I have a fresh OSX install, on an SATA HD (GUID), evga780i mb, no PATA devices at all, back down to 2gigs of ram, and clocked the ram and cpu back to stock to troubleshoot OSX. Installation went smooth using ideneb 10.5.5, updated using the normal netkas method to 10.5.6, rotating between the latest voodoo, anv & stagexnu kernels, with medevil's nForceATA test kext. Everything seems to work great, except when i'm in heavy read/write the OS seems to hang and i get the spinning beach ball of death (i can still move the mouse, so i'm not losing usb like in my previous install) . I usually boot with debug=0x100 flag but get no on-screen panics. once it happans though, all i can do is hard boot the machine

 

does your AppleNForceATA.kext improve upon medevil's test version ? or is it simply with added device id's

 

any suggestions? or help would be appreciated

 

thank you

MrRoper

Link to comment
Share on other sites

Hello Slashack or Verdant,

please forgive if this has been covered, i have been out of the hackintosh game for a bit and was consumed by my iphone since launch day :rolleyes: btw i think medevil went to a paying gig, i see him developing iphone apps. at any rate...

 

I have a fresh OSX install, on an SATA HD (GUID), evga780i mb, no PATA devices at all, back down to 2gigs of ram, and clocked the ram and cpu back to stock to troubleshoot OSX. Installation went smooth using ideneb 10.5.5, updated using the normal netkas method to 10.5.6, rotating between the latest voodoo, anv & stagexnu kernels, with medevil's nForceATA test kext. Everything seems to work great, except when i'm in heavy read/write the OS seems to hang and i get the spinning beach ball of death (i can still move the mouse, so i'm not losing usb like in my previous install) . I usually boot with debug=0x100 flag but get no on-screen panics. once it happans though, all i can do is hard boot the machine

 

does your AppleNForceATA.kext improve upon medevil's test version ? or is it simply with added device id's

 

any suggestions? or help would be appreciated

 

thank you

MrRoper

 

If i only add device id's then i won't make such a topic like this. I've modified the kexts in order to make them work with > 2gb of ram (64 bit memory addresses). MeDevil's test kext source never appeared, so i cannot patch that.

 

If the one i've modified works for you, then u should use that.

Link to comment
Share on other sites

@ slashack

 

I have found this:

 

PCIIDE(4)                 OpenBSD Programmer's Manual                PCIIDE(4)

NAME
    pciide - PCI IDE controller driver

SYNOPSIS
    pciide* at pci? flags 0x0000
    pciide* at jmb? flags 0x0000

    option PCIIDE_AMD756_ENABLEDMA
    option PCIIDE_CMD064x_DISABLE
    option PCIIDE_CMD0646U_ENABLEUDMA

    atapiscsi* at pciide? flags 0x0000
    wd* at pciide? flags 0x0000

DESCRIPTION
    The [b]pciide driver supports the PCI IDE controllers[/b] as specified in the
    "PCI IDE controller specification, revision 1.0" draft, [b]as well as the
    Serial ATA controllers working either in parallel ATA compatibility mode
    or in native serial mode[/b].  It provides the core functions for the wd(4)
    and atapiscsi(4) drivers.  This driver includes specific, enhanced sup-
    port for the CMD Tech PCI0640 controller and IDE DMA/UltraDMA support for
    the following PCI IDE controllers:

          o   Acard ATP850U, ATP860, ATP860-A, ATP865-A, ATP865-R
          o   Acer Labs M5229
          o   Adaptec AAR-1210SA
          o   Advanced Micro Devices AMD-756, AMD-766, AMD-768, AMD-8111
          o   ATI SB200, SB300, SB400, SB600, SB700 (IDE only)
          o   CMD Tech PCI0640, PCI0643, PCI0646, PCI0648, PCI0649, PCI0680
          o   Contaq Microsystems/Cypress CY82C693
          o   HighPoint HPT366, HPT370, HPT372, HPT302, HPT371, HPT374
          o   Intel PIIX, PIIX3, and PIIX4
          o   Intel 82801 (ICH/ICH0/ICH2/ICH3/ICH4/ICH4-M/ICH5/ICH5R/
              ICH6/ICH6M/ICH6R/ICH7/ICH7M/ICH7R/ICH7M DH/ICH8/ICH8M/
              ICH9/ICH9M)
          o   Intel 6300ESB/6321ESB
          o   ITE IT8211F, IT8212F
          o   JMicron JMB361/3/5/6/8
          o   National Semiconductor PC87415
          o   National Semiconductor SCx200 (found on SC1100 SoC)
          o   [b]NVIDIA nForce/nForce2/nForce2-400/nForce3/nForce3-250/nForce4,
              MCP04/MCP51/MCP55/MCP61/MCP65/MCP67/MCP73/MCP77[/b]
          o   Promise PDC20246, PDC20262, PDC20265, PDC20267, PDC20268,
              PDC20268R, PDC20269, PDC20271, PDC20275, PDC20276, PDC20277,
              PDC20318, PDC20319, PDC20371, PDC20375, PDC20376, PDC20377,
              PDC20378, PDC20379, PDC20571, PDC20575, PDC20579, PDC20771,
              PDC20775, PDC40518, PDC40519, PDC40718, PDC40719, PDC40779
          o   ServerWorks SATA, OSB4, CSB5, CSB6 (including support for the
              third channel)
          o   Silicon Image SiI3112, SiI3512, SiI3114
          o   Silicon Integrated System 180, 181, 5513 (5597/5598), 540, 550,
              620, 630, 630S, 633, 635, 640, 645, 645DX, 648, 650, 651, 652,
              655, 658, 661, 730, 733, 735, 740, 745, 746, 748, 750, 751,
              752, 755, 760, 962, 963
          o   VIA Technologies CX700, VT82C586/A/B, VT82C596A/B, VT82C686A/B,
              VT8231, VT8366, VT8233, VT8235, VT8237, VT8237A/S, VT8251,
              VT6410, VX700

    Some of these controllers are only available in multifunction PCI chips.

    The 0x0001 flag forces the pciide driver to use DMA when there is no ex-
    plicit DMA mode setting support for the controller but DMA is present.
    If the BIOS didn't configure the controller properly, this can cause a
    machine hang.

 

and see here.......

 

CD boot

The CD provides an El Torito no-emulation boot image that includes almost all OpenBSD drivers. This also includes minimal USB support (storage devices and keyboard).

For the latest list of drivers available on this image, take a look at the RAMDISK_CD kernel configuration file.

 

I hope this gives you some pointers for downloading the pciide(4) driver source......

http://www.openbsd.org/anoncvs.html

http://www.openbsd.org/cgi-bin/cvsweb/

http://www.openbsd.org/cvsync.html

http://www.openbsd.org/cvsup.html

 

I am not a Unix programmer by profession and so cannot offer any Unix/BSD coding/porting help.....but this is as much as I have managed to find so far......as regards storage controller drivers, better support appears to be offered by OpenBSD and NetBSD than FreeBSD......

 

Hello Slashack or Verdant,

please forgive if this has been covered, i have been out of the hackintosh game for a bit and was consumed by my iphone since launch day :rolleyes: btw i think medevil went to a paying gig, i see him developing iphone apps. at any rate...

 

I have a fresh OSX install, on an SATA HD (GUID), evga780i mb, no PATA devices at all, back down to 2gigs of ram, and clocked the ram and cpu back to stock to troubleshoot OSX. Installation went smooth using ideneb 10.5.5, updated using the normal netkas method to 10.5.6, rotating between the latest voodoo, anv & stagexnu kernels, with medevil's nForceATA test kext. Everything seems to work great, except when i'm in heavy read/write the OS seems to hang and i get the spinning beach ball of death (i can still move the mouse, so i'm not losing usb like in my previous install) . I usually boot with debug=0x100 flag but get no on-screen panics. once it happans though, all i can do is hard boot the machine

 

does your AppleNForceATA.kext improve upon medevil's test version ? or is it simply with added device id's

 

any suggestions? or help would be appreciated

 

thank you

MrRoper

 

If you post in my Series 7 nForce thread I will see what I can do to help on some of your issues, should any remain after you try slashack's great modding of the MeDevil AppleNForceATA.kext for 64bit addressing and >3GB RAM support......assuming there are no SATA DVDRW issues...... ;)

Link to comment
Share on other sites

Try the latest one. I've uploaded it to googlecode.

 

I tried the latest one and I got more or less the same results, lots of (debug?) mesages on system log, slow boot times and iokitwaitquiet messages and the same problem with cable detection:

 

Apr 29 09:18:12 localhost kernel[0]: AppleNForceATA: 80-conductor cable not detected
Apr 29 09:18:12 localhost kernel[0]: AppleNForceATA: selected Ultra mode 2

 

If I understand that right, 80-conductor cable detection is not working with my drive/board (its actually a UDMA4 drive on a 80-conductor cable) and the driver seems to default to PIO4/UDMA2 in that case, if thats a generic bug and not just happens for me, that can cause a serious performance hit on hard drives.

 

At least the drive is detected and working fine, I managed to test DVD writing and its also working 100% OK, considering you dont have the time nor the hardware to develop this any further, I must say its a great work, so thanks for the effort! :-)

 

Hints for anyone who would like to improve AppleNForceATA (I'm not a programmer so these might be shots in the dark...):

- Try to avoid doing 40/80 wires cable detection and get right UDMA mode from somewhere else (BIOS?)

- For the problems with SATA DVD drives, I've read Linux driver suffer from the same problem and the root cause seems to be NVIDIA's nforce ADMA/SWNCQ modes not working with ATAPI, if AppleNForceATA is using that it might worth a try disabling that to see if ATAPI drives work...

 

@ slashack

 

Has anybody been able to track down the source for AppleNForceATA_Test for you yet?

 

Also, nForce 610i and 630i chipset MOBOs appear to have more problems with "still waiting for root devic" errors.....

 

Are you able to add, or have you added, in IDs for 630i NForce MOBOs in your new nForceATA test kesxt?

Or do these restrictions (according to MeDevil) still apply :

I have also found the following from Phoenix DriverAgent.com, that may be helpful for checking 10de device IDs:

0265	MCP51	Parallel	ATA	Controller			PATA
0266	MCP51	Serial	ATA	Controller			SATA
0267	MCP51	Serial	ATA	Controller			SATA
036e	MCP55	IDE					IDE
037e	MCP55	SATA	Controller				SATA
037f	MCP55	SATA	Controller				SATA
036f	MCP55	Serial	ATA	Controller			SATA
044c	MCP65	AHCI	Controller				AHCI
044d	MCP65	AHCI	Controller				AHCI
044e	MCP65	AHCI	Controller				AHCI
044f	MCP65	AHCI	Controller				AHCI
0448	MCP65	IDE					IDE
045c	MCP65	SATA	Controller				SATA
045d	MCP65	SATA	Controller				SATA
045e	MCP65	SATA	Controller				SATA
045f	MCP65	SATA	Controller				SATA
0550	MCP67	AHCI	Controller				AHCI
0554	MCP67	AHCI	Controller				AHCI
0560	MCP67	IDE	Controller				IDE
03ec	nForce	430	(MCP61)	IDE	Controller		IDE
03e7	nForce	430	(MCP61)	SATA	Controller		SATA
03f6	nForce	430	(MCP61)	SATA	Controller		SATA
03f7	nForce	430	(MCP61)	SATA	Controller		SATA
01bc	nForce	ATA	Controller				ATA
0085	nForce	MCP2S	Parallel	ATA	Controller		PATA
008e	nForce	MCP2S	Serial	ATA	Compatible	Controller	SATA
00d5	nForce	MCP3	Parallel	ATA	Controller		PATA
0065	nForce2	ATA	Controller				ATA
00e5	nForce3	250	Parallel	ATA	Controller		IDE
00e3	nForce3	250	Serial	ATA	Controller		SATA
00ee	nForce3	250	Serial	ATA	Controller		SATA
0035	nForce4	Intel	Edition	Parallel	ATA	Controller	PATA
0036	nForce4	Intel	Edition	Serial	ATA	Controller	SATA
003e	nForce4	Intel	Edition	Serial	ATA	Controller	SATA
0053	nForce4	Parallel	ATA	Controller			PATA
0054	nForce4	Serial	ATA	Controller			SATA
0055	nForce4	Serial	ATA	Controller			SATA
0555	NVIDIA	nForce	Serial	ATA	Controller		SATA
0556	NVIDIA	nForce	Serial	ATA	Controller		SATA
0558	NVIDIA	nForce	Serial	ATA	Controller		SATA
0559	NVIDIA	nForce	Serial	ATA	Controller		SATA
055a	NVIDIA	nForce	Serial	ATA	Controller		SATA
0768	NVIDIA	nForce	Serial	ATA	Controller		SATA
07b5	NVIDIA	nForce	Serial	ATA	Controller		SATA
07b9	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f4	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f5	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f6	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f7	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f8	NVIDIA	nForce	Serial	ATA	Controller		SATA
07f9	NVIDIA	nForce	Serial	ATA	Controller		SATA
07fa	NVIDIA	nForce	Serial	ATA	Controller		SATA
07fb	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ab8	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ab9	NVIDIA	nForce	Serial	ATA	Controller		SATA
0abc	NVIDIA	nForce	Serial	ATA	Controller		SATA
0abd	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ad4	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ad5	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ad8	NVIDIA	nForce	Serial	ATA	Controller		SATA
0ad9	NVIDIA	nForce	Serial	ATA	Controller		SATA
0bc4	NVIDIA	nForce	Serial	ATA	Controller		SATA
0bc5	NVIDIA	nForce	Serial	ATA	Controller		SATA
0bcc	NVIDIA	nForce	Serial	ATA	Controller		SATA
0bcd	NVIDIA	nForce	Serial	ATA	Controller		SATA

 

I got that SATA controller in my board (GA-73PVM-S2H: Geforce 7100/nForce 630i) and it works just fine in AHCI mode.

Some of the other device ids you list also belong to AHCI controllers, assuming AppleNforceATA is a pure IDE driver they most likely wont work with it (unless the drive can switch the controller from AHCI to IDE on the fly...).

 

 

@ slashack

 

I have found this:

 

PCIIDE(4)                 OpenBSD Programmer's Manual                PCIIDE(4)

NAME
    pciide - PCI IDE controller driver

SYNOPSIS
    pciide* at pci? flags 0x0000
    pciide* at jmb? flags 0x0000

    option PCIIDE_AMD756_ENABLEDMA
    option PCIIDE_CMD064x_DISABLE
    option PCIIDE_CMD0646U_ENABLEUDMA

    atapiscsi* at pciide? flags 0x0000
    wd* at pciide? flags 0x0000

DESCRIPTION
    The [b]pciide driver supports the PCI IDE controllers[/b] as specified in the
    "PCI IDE controller specification, revision 1.0" draft, [b]as well as the
    Serial ATA controllers working either in parallel ATA compatibility mode
    or in native serial mode[/b].  It provides the core functions for the wd(4)
    and atapiscsi(4) drivers.  This driver includes specific, enhanced sup-
    port for the CMD Tech PCI0640 controller and IDE DMA/UltraDMA support for
    the following PCI IDE controllers:

          o   Acard ATP850U, ATP860, ATP860-A, ATP865-A, ATP865-R
          o   Acer Labs M5229
          o   Adaptec AAR-1210SA
          o   Advanced Micro Devices AMD-756, AMD-766, AMD-768, AMD-8111
          o   ATI SB200, SB300, SB400, SB600, SB700 (IDE only)
          o   CMD Tech PCI0640, PCI0643, PCI0646, PCI0648, PCI0649, PCI0680
          o   Contaq Microsystems/Cypress CY82C693
          o   HighPoint HPT366, HPT370, HPT372, HPT302, HPT371, HPT374
          o   Intel PIIX, PIIX3, and PIIX4
          o   Intel 82801 (ICH/ICH0/ICH2/ICH3/ICH4/ICH4-M/ICH5/ICH5R/
              ICH6/ICH6M/ICH6R/ICH7/ICH7M/ICH7R/ICH7M DH/ICH8/ICH8M/
              ICH9/ICH9M)
          o   Intel 6300ESB/6321ESB
          o   ITE IT8211F, IT8212F
          o   JMicron JMB361/3/5/6/8
          o   National Semiconductor PC87415
          o   National Semiconductor SCx200 (found on SC1100 SoC)
          o   [b]NVIDIA nForce/nForce2/nForce2-400/nForce3/nForce3-250/nForce4,
              MCP04/MCP51/MCP55/MCP61/MCP65/MCP67/MCP73/MCP77[/b]
          o   Promise PDC20246, PDC20262, PDC20265, PDC20267, PDC20268,
              PDC20268R, PDC20269, PDC20271, PDC20275, PDC20276, PDC20277,
              PDC20318, PDC20319, PDC20371, PDC20375, PDC20376, PDC20377,
              PDC20378, PDC20379, PDC20571, PDC20575, PDC20579, PDC20771,
              PDC20775, PDC40518, PDC40519, PDC40718, PDC40719, PDC40779
          o   ServerWorks SATA, OSB4, CSB5, CSB6 (including support for the
              third channel)
          o   Silicon Image SiI3112, SiI3512, SiI3114
          o   Silicon Integrated System 180, 181, 5513 (5597/5598), 540, 550,
              620, 630, 630S, 633, 635, 640, 645, 645DX, 648, 650, 651, 652,
              655, 658, 661, 730, 733, 735, 740, 745, 746, 748, 750, 751,
              752, 755, 760, 962, 963
          o   VIA Technologies CX700, VT82C586/A/B, VT82C596A/B, VT82C686A/B,
              VT8231, VT8366, VT8233, VT8235, VT8237, VT8237A/S, VT8251,
              VT6410, VX700

    Some of these controllers are only available in multifunction PCI chips.

    The 0x0001 flag forces the pciide driver to use DMA when there is no ex-
    plicit DMA mode setting support for the controller but DMA is present.
    If the BIOS didn't configure the controller properly, this can cause a
    machine hang.

 

and see here.......

I hope this gives you some pointers for downloading the pciide(4) driver source......

 

Unfortunately, I think that driver is only for NVIDIA's IDE controllers, which I think are mostly standard ones. For SATA, I think NVIDIA doesnt publish any info about the hardware, from what I know Linux SATA driver had to be developed basically with reverse engineering...

Link to comment
Share on other sites

@ thorazine74

 

The reason why I was not too sure about it being only for nVidia IDE controllers was because its Description said

The pciide driver supports the PCI IDE controllers as specified in the

"PCI IDE controller specification, revision 1.0" draft, as well as the

Serial ATA controllers working either in parallel ATA compatibility mode

or in native serial mode.

and because of the following information for FreeBSD7.0
The currently supported ATA/SATA controller chips in FreeBSD 7.0 are:

 

Acard: ATP850P, ATP860A, ATP860R, ATP865A, ATP865R.

ALI: M5229, M5281, M5287, M5288, M5289.

AMD: AMD756, AMD766, AMD768, AMD8111, CS5536.

ATI: IXP200, IXP300, IXP400. IXP600 patch in FreeBSD-CURRENT!

CMD: CMD646, CMD646U2, CMD648, CMD649.

Cypress: Cypress 82C693.

Cyrix: Cyrix 5530.

HighPoint: HPT302, HPT366, HPT368, HPT370, HPT371, HPT372, HPT372N,

HPT374.

Intel: 6300ESB, 31244, PIIX, PIIX3, PIIX4, ESB2, ICH, ICH0,

ICH2, ICH3, ICH4, ICH5, ICH6, ICH7, ICH8, ICH9.

ITE: IT8211F, IT8212F.

JMicron: JMB360, JMB361, JMB363, JMB365, JMB366, JMB368.

Marvell 88SX5040, 88SX5041, 88SX5080, 88SX5081, 88SX6041,

88SX6081, 88SX6101, 88SX6141.

National: SC1100.

NetCell: NC3000, NC5000.

nVidia: nForce, nForce2, nForce2 MCP, nForce3, nForce3 MCP,

nForce3 Pro, nForce4.

Promise: PDC20246, PDC20262, PDC20263, PDC20265, PDC20267,

PDC20268, PDC20269, PDC20270, PDC20271, PDC20275,

PDC20276, PDC20277, PDC20318, PDC20319, PDC20371,

PDC20375, PDC20376, PDC20377, PDC20378, PDC20379,

PDC20571, PDC20575, PDC20579, PDC20580, PDC20617,

PDC20618, PDC20619, PDC20620, PDC20621, PDC20622,

PDC40518, PDC40519, PDC40718, PDC40719.

ServerWorks: HT1000, ROSB4, CSB5, CSB6, K2, Frodo4, Frodo8.

Silicon Image: SiI0680, SiI3112, SiI3114, SiI3124, SiI3132, SiI3512.

SiS: SIS180, SIS181, SIS182, SIS5513, SIS530, SIS540, SIS550,

SIS620, SIS630, SIS630S, SIS633, SIS635, SIS730, SIS733,

SIS735, SIS745, SIS961, SIS962, SIS963, SIS964, SIS965.

VIA: VT6410, VT6420, VT6421, VT82C586, VT82C586B, VT82C596,

VT82C596B, VT82C686, VT82C686A, VT82C686B, VT8231,

VT8233, VT8233A, VT8233C, VT8235, VT8237, VT8237A,

VT8237S, VT8251.

 

According to the manpage:

 

Unknown ATA chipsets are supported in PIO modes, and if the standard bus-master DMA registers are present and contain valid setup, DMA is also enabled, although the max mode is limited to UDMA33, as it is not known what the chipset can do and how to program it.

 

The ata driver can change the transfer mode and various other parameters when the system is up and running. See atacontrol(8).

where a lot of the controllers are the same ones listed for OpenBSD.....?

 

But I defer to anyone with greater knowledge in this matter.......

Link to comment
Share on other sites

@ slashack

 

I have found this:

 

PCIIDE(4)                 OpenBSD Programmer's Manual                PCIIDE(4)

NAME
    pciide - PCI IDE controller driver

SYNOPSIS
    pciide* at pci? flags 0x0000
    pciide* at jmb? flags 0x0000

    option PCIIDE_AMD756_ENABLEDMA
    option PCIIDE_CMD064x_DISABLE
    option PCIIDE_CMD0646U_ENABLEUDMA

    atapiscsi* at pciide? flags 0x0000
    wd* at pciide? flags 0x0000

DESCRIPTION
    The [b]pciide driver supports the PCI IDE controllers[/b] as specified in the
    "PCI IDE controller specification, revision 1.0" draft, [b]as well as the
    Serial ATA controllers working either in parallel ATA compatibility mode
    or in native serial mode[/b].  It provides the core functions for the wd(4)
    and atapiscsi(4) drivers.  This driver includes specific, enhanced sup-
    port for the CMD Tech PCI0640 controller and IDE DMA/UltraDMA support for
    the following PCI IDE controllers:

          o   Acard ATP850U, ATP860, ATP860-A, ATP865-A, ATP865-R
          o   Acer Labs M5229
          o   Adaptec AAR-1210SA
          o   Advanced Micro Devices AMD-756, AMD-766, AMD-768, AMD-8111
          o   ATI SB200, SB300, SB400, SB600, SB700 (IDE only)
          o   CMD Tech PCI0640, PCI0643, PCI0646, PCI0648, PCI0649, PCI0680
          o   Contaq Microsystems/Cypress CY82C693
          o   HighPoint HPT366, HPT370, HPT372, HPT302, HPT371, HPT374
          o   Intel PIIX, PIIX3, and PIIX4
          o   Intel 82801 (ICH/ICH0/ICH2/ICH3/ICH4/ICH4-M/ICH5/ICH5R/
              ICH6/ICH6M/ICH6R/ICH7/ICH7M/ICH7R/ICH7M DH/ICH8/ICH8M/
              ICH9/ICH9M)
          o   Intel 6300ESB/6321ESB
          o   ITE IT8211F, IT8212F
          o   JMicron JMB361/3/5/6/8
          o   National Semiconductor PC87415
          o   National Semiconductor SCx200 (found on SC1100 SoC)
          o   [b]NVIDIA nForce/nForce2/nForce2-400/nForce3/nForce3-250/nForce4,
              MCP04/MCP51/MCP55/MCP61/MCP65/MCP67/MCP73/MCP77[/b]
          o   Promise PDC20246, PDC20262, PDC20265, PDC20267, PDC20268,
              PDC20268R, PDC20269, PDC20271, PDC20275, PDC20276, PDC20277,
              PDC20318, PDC20319, PDC20371, PDC20375, PDC20376, PDC20377,
              PDC20378, PDC20379, PDC20571, PDC20575, PDC20579, PDC20771,
              PDC20775, PDC40518, PDC40519, PDC40718, PDC40719, PDC40779
          o   ServerWorks SATA, OSB4, CSB5, CSB6 (including support for the
              third channel)
          o   Silicon Image SiI3112, SiI3512, SiI3114
          o   Silicon Integrated System 180, 181, 5513 (5597/5598), 540, 550,
              620, 630, 630S, 633, 635, 640, 645, 645DX, 648, 650, 651, 652,
              655, 658, 661, 730, 733, 735, 740, 745, 746, 748, 750, 751,
              752, 755, 760, 962, 963
          o   VIA Technologies CX700, VT82C586/A/B, VT82C596A/B, VT82C686A/B,
              VT8231, VT8366, VT8233, VT8235, VT8237, VT8237A/S, VT8251,
              VT6410, VX700

    Some of these controllers are only available in multifunction PCI chips.

    The 0x0001 flag forces the pciide driver to use DMA when there is no ex-
    plicit DMA mode setting support for the controller but DMA is present.
    If the BIOS didn't configure the controller properly, this can cause a
    machine hang.

 

and see here.......

I hope this gives you some pointers for downloading the pciide(4) driver source......

http://www.openbsd.org/anoncvs.html

http://www.openbsd.org/cgi-bin/cvsweb/

http://www.openbsd.org/cvsync.html

http://www.openbsd.org/cvsup.html

 

I am not a Unix programmer by profession and so cannot offer any Unix/BSD coding/porting help.....but this is as much as I have managed to find so far......as regards storage controller drivers, better support appears to be offered by OpenBSD and NetBSD than FreeBSD......

If you post in my Series 7 nForce thread I will see what I can do to help on some of your issues, should any remain after you try slashack's great modding of the MeDevil AppleNForceATA.kext for 64bit addressing and >3GB RAM support......assuming there are no SATA DVDRW issues...... :(

 

Thank's. I'll take a look at it when i get some free time.

Link to comment
Share on other sites

How exactly would I do that since I can't boot?

 

If u can boot with another AppleNForceATA.kext, then check what's inside Info.plist and compare with the one I modified. They should be the same. If not, just make them be the same.

Link to comment
Share on other sites

How exactly would I do that since I can't boot?

Good point. Not sure. In my case, I only needed to use the JMichron kext in this topic for fixing my 4Gb memory issue. The 'still waiting for root device' was fixed by another kext (see signature).

Link to comment
Share on other sites

Any chance this device ID could be added to the kext? Adding it to the info.plist dosen't do enough, it just says it's unsupported. The device ID is '07f8'. It's for the SATA MCP73 chipset.

Link to comment
Share on other sites

How exactly would I do that since I can't boot?

 

Check if you have other kexts loaded that could cause the kp panic, maybe something inside the IOATAFamily plugins you are using?

 

Any chance this device ID could be added to the kext? Adding it to the info.plist dosen't do enough, it just says it's unsupported. The device ID is '07f8'. It's for the SATA MCP73 chipset.

 

MCP73 supports AHCI mode, use that and you need no third party driver for the SATA (you still need it for the IDE ports).

Link to comment
Share on other sites

Check if you have other kexts loaded that could cause the kp panic, maybe something inside the IOATAFamily plugins you are using?

MCP73 supports AHCI mode, use that and you need no third party driver for the SATA (you still need it for the IDE ports).

I can't set ACHI in the motherboard, it's an OEM Gateway motherboard, that option is disabled.

Link to comment
Share on other sites

If u can boot with another AppleNForceATA.kext, then check what's inside Info.plist and compare with the one I modified. They should be the same. If not, just make them be the same.

 

Alrighty

I coppied the contents of the original nforceata plist to your modified one, saved it, and then fixed permissions and deleted extensions mkext. Now it boots. I ran remember with all 4 gigs and no kp. This issue appears to now be resolved. Thank you very much slashack and others for the help.

 

minor note: my computer will only boot with -f flag

any idea why?

Link to comment
Share on other sites

Thank's. I'll take a look at it when i get some free time.

 

Also see here for FreeBSD VirtualBox image......

Link to comment
Share on other sites

Can anyone help me? I want to get this working with an MCP73 not in ACHI mode.. in native SATA mode.

 

Unless someone fixes AppleNforceATA to avoid the whitelisting/blacklisting of non specifically supported device ids I'm afraid there is nothing you can do (cant help you with that as I'm not a programmer, sorry).

Only other option would be trying to use AppleViaAta but chances are it wont work.

Also I just realized "07f8" is the device id for the MCP73 RAID Controller, which is most likely not supported by any OS X Driver at all. Are you sure you have no option for changing SATA modes in the BIOS?

Link to comment
Share on other sites

Hi Slashack and others,

 

Thank you for the time and effort putting into this.

I just subscribed to this forum and did read all the posts of this topic. Very interesting

 

Busy with my own hackintosh, and having an iTE IT8213 chip on my mobo for IDE, I did notice that there is no mention in this topic about the ITE chips

(info: 05:07.0 IDE interface [0101]: Integrated Technology Express, Inc. Unknown device [1283:8213]).

 

I am using a Chameleon partition to boot from and have other partitions with vanila 10.5.6 client and a Vanaila 10.5.6 server. In Chameleon I can see the IDE drives but not in 10.5.6 C/S (only SATA).

Did try to figure out why, but havend found the reason.

 

What kext should I use to get this working, AppleVIAATA or JMicron?

 

BTW, I have 8GB Ram, but would like to update to 16GB soon.

 

Thanks in advance

 

LA

Link to comment
Share on other sites

Busy with my own hackintosh, and having an iTE IT8213 chip on my mobo for IDE, I did notice that there is no mention in this topic about the ITE chips

(info: 05:07.0 IDE interface [0101]: Integrated Technology Express, Inc. Unknown device [1283:8213]).

 

I am using a Chameleon partition to boot from and have other partitions with vanila 10.5.6 client and a Vanaila 10.5.6 server.

In Chameleon I can see the IDE drives but not in 10.5.6 C/S (only SATA).

This, the last strikethrough line, is Not true. By coincendence, a SATA partition name has the same name as my ide drive, but the SATA Name did just show up twice in Chameleon.

 

What kext should I use to get this working, AppleVIAATA or JMicron?

 

I did try to use AppleVIAATA, but it doesn't show up.

 

My kextstat.txt file kextstat.txt

 

In order to get my kextstat file I use:

root# uname -a > kextstat.txt
root# echo >> kextstat.txt
root# kextstat | grep ATA >> kextstat.txt
root# echo >> kextstat.txt
root# ioreg -l >> kextstat.txt

 

 

I did insert this in the AppleVIAATA.kext info.plist file [ref: http://www.insanelymac.com/forum/index.php...p=1094620]

<key>ITE IT8213 PATA Controller</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleVIAATA</string>
<key>Hardware Name</key>
<string>IT8213 PATA</string>
<key>IOClass</key>
<string>AppleVIAATARoot</string>
<key>IOPCIPrimaryMatch</key>
<string>0x82131283</string>
<key>IOProbeScore</key>
<string>1500</string>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>
<key>Serial ATA</key>
<false/>
</dict>

 

Has anybody suggestions?

 

LA

 

PS. You can use this Get_IOReg.app.zip to make a kextstat.txt file. Just double click to get the kextstat.txt in your home folder. Maybe somebody can use it.

Link to comment
Share on other sites

 Share

×
×
  • Create New...