Official GIGABYTE Forum

Questions about GIGABYTE products => Motherboards with Intel processors => Topic started by: Slider on January 22, 2011, 09:27:36 am

Title: Best driver for the Marvell 9128 6G Controller
Post by: Slider on January 22, 2011, 09:27:36 am
What is the best driver/"Marvell Raid Console"/firmware for the Marvell 9128 on a Gigabyte P55A-UD4P?  I am running Windows 7 64-bit.

I have noticed the following:

1.  If I use my Gigabyte driver CD that came with my motherboard, it does not install a driver at all for the Marvell 9128.  Instead it allows the generic MS ACHI driver to install, combined with the virtual console driver (that allows access to RAID configuration) and an old version of the MRU (Marvell Raid Console).  Driver 1.0.0.1036 is physically on the CD but it does not install when using the setup program to install the drivers.

2.  If I download the latest driver from Gigabyte, it does not include a driver at all for the Marvell 9128.  It does have a newer version of the MRU (4.1.0.1909) though.

3.  Looking on the Gigabyte driver CD, within the "Bootdrv" folder there is a 9128 driver version 1.0.0.1036.  This driver can be manually installed, replacing the generic Microsoft ACHI driver.  Alternatively the same driver is located within the "Other/Marvell" folder and again it can be installed manually.

4.  At the website "http://www.station-drivers.com/page/marvell.htm", I found there is a newer driver (1.0.0.1051), newer firmware (2.1.0.1504), and a newer MRU (4.1.0.1909).

Which of these options provides the best performance for the 9128 controller?  I have read in various forums that there are issues with Marvell's driver (at least the older versions) so it was recommended to use the generic Microsoft AHCI driver.  Does this advice still stand or should the latest Marvell driver be installed (or perhaps the older one if the firmware is not flashed to the latest version).

Why hasn't Gigabyte updated the driver for the 9128?  Why don't they include a driver for download at all?

Another thought I had is if the 9128 is connected to a pair of decently performing SataII hard drives, it probably makes sense to force "Turbo Sata" mode in the BIOS.  Without doing this the maximum throughput is something like 130 MB/s (based on my experience with two Seagate drives in a RAID 0).  At the time I didn't understand the PCIe x1 limitation so I never tried enabling Turbo SATA (I left it on auto and the performance was terrible and the system was unstable - BSODs).  Currently I am using the Intel SATA controller and seeing roughly 250-270 MB/s throughput for the RAID 0.
Title: Re: Best driver for the Marvell 9128 6G Controller
Post by: Dark Mantis on January 22, 2011, 04:42:26 pm
Hi

The thing is I think most people (including motherboard manufacturers) gave up on the Marvell controller as it was supposed to be, and just settled for using it as a SATA2 rather than the SATA3 that it should have been. It just didn't live up to what Marvel said and it wasn't fixable with a software (BIOS) update.

As  SATA2 controller it works fine but it doesn't matter how much the software is improved I don't think it will make much difference.
Title: Re: Best driver for the Marvell 9128 6G Controller
Post by: Slider on January 23, 2011, 05:09:39 am
Hi

The thing is I think most people (including motherboard manufacturers) gave up on the Marvell controller as it was supposed to be, and just settled for using it as a SATA2 rather than the SATA3 that it should have been. It just didn't live up to what Marvel said and it wasn't fixable with a software (BIOS) update.

As  SATA2 controller it works fine but it doesn't matter how much the software is improved I don't think it will make much difference.

Have you heard this directly from Gigabyte?

I literally just purchased 3 Gigabyte motherboards 3 weeks ago and each one included SATA 6G through the Marvell 9128 controller.  Gigabyte is STILL advertising 4x performance through the use of a RAID 0 on the Marvell controller compared to the Intel SATA 3G controller.  This was part of the reason I paid extra for motherboards with the SATA 6G controller; I wanted the motherboards to support newer, higher speed hard drives in the future.

If Gigabyte has truly given up on getting the SATA 6G controller to work then they really should be offering a rebate to people like myself who paid extra for this capability - especially since they are still advertising 6G performance now that they know it doesn't (currently at least) work.

I keep wondering if the main reason I couldn't get the SATA 6G ports to work on my motherboard was because I didn't select "Turbo SATA" in the BIOS.
Title: Re: Best driver for the Marvell 9128 6G Controller
Post by: Slider on January 23, 2011, 05:23:49 am
Just in case anyone else comes upon this thread after doing a search for the "best driver for their Marvell 9128 SATA 6G controller", I'll include a link that I found to the latest drivers, firmware and MRU (Marvell Raid Utility) here:

http://www.station-drivers.com/page/marvell.htm (http://www.station-drivers.com/page/marvell.htm)

Note that as of today (January 23, 2011), Gigabyte does not actually use the Marvell driver even if you do a full driver install from the Gigabyte Install CD and/or download and install the latest Marvell 9128 driver from the Gigabyte website.  Instead Gigabyte uses the Microsoft ACHI driver combined with a virtual "console" driver that allows the Marvell Raid Utility (MRU) to communicate with the 9128 controller.  Gigabyte does include a driver on the CD that can be manually installed (version 1.0.0.1036) but installing this breaks the MRU software.  You need to install the updated MRU from Station Driver in order for it to communicate with the actual Marvell driver.

To add a little more confusion (I'm still confused...), I have not been able to find a way to uninstall the Marvell "console driver" (the virtual driver that allows the MRU to interface with the MS ACHI driver) other than going into Device Manager, System Devices, and uninstalling the driver for the "Marvell 91xx Config Device".  This virtual driver does not seem to be able to talk to the actual Marvell 9128 driver, only the MS ACHI driver.

Also, elsewhere on the web I discovered that some of the newer released BIOS for Gigabyte motherboards included updated firmware for the Marvell 9128 controller and to install it you have to sometimes make sure the BIOS setting for "GSATA_6+7 firmware" is on "Auto" so the latest BIOS firmware is loaded for the 9128.  If this is set to "On Chip", the firmware revision from the 9128 is used instead of the updated BIOS's firmware.

If you install the firmware from Station Drivers (above), my understanding is since it is newer that the on-chip firmware, it will now be loaded instead of the BIOS's firmware (if you have the "Auto" setting configured).  You can flip back and forth between the BIOS's included 9128 firmware and the downloaded firmware by changing the "GSATA_6+7" setting in the BIOS.

Unfortunately I don't know personally how well this updated firmware works (yet), but there are people talking highly about it in the french forums at Station Drivers.  I don't own an SSD so I can't test it on "very fast" drives.  I am using two fast SATA 3G hard drives that work very well on Intel's SATA controller in RAID 0 so there is little use in me switching them to the Marvell 9128 at this time (one day I'm sure I will pick up a 6G drive that can take advantage of the 6G connection; hopefully the new drivers, firmware and MRU work better than what Gigabyte is currently offering).  Anyone who tries these updates for the 9128, please post here with your results so others can benefit.

Finally I will mention here that if you are using a drive configuration that has an I/O  throughput above roughly 150 MB/s without a SATA 6G interface to the drive(s) you need to manually enable "Turbo SATA" in the BIOS.  The default setting is "AUTO" and this will enable "Turbo SATA" whenever a 6G SATA device is connected.

Note Turbo SATA reconfigures the PCIe bus to the Marvell 9128 controller.  Using NON-"Turbo SATA" mode, the 9128 connects to the chipset through a PCIe 1.0 x1 bus.  "Turbo SATA" mode uses 1/2 the PCIe bus from the video card and now the 9128 is connected through a PCIe 2.0 x8 bus (16x more throughput compared to the PCIe 1.0 x1).  While in theory this means your video card will be slower, the reality is if you have a single GPU, nothing available today can fully utilize even a PCIe 2.0 x8 bus so you shouldn't see any video performance reduction.  If you have dual video cards or a dual GPU card, this may reduce the video performance.

As a final note:  I am not certain that all Gigabyte motherboards use the PCIe 1.0 x1 vs PCIe 2.0 x8 switch to connect to the 9128 controller (check your manual).  This is accurate for the P55A-UD3R and P55A-UD4P motherboards that I own as well as most (if not all) of the P55/H55 motherboards that I considered purchasing.  Other manufacturers use different bus connections for the 9128, for example ASUS typically uses a set of 4 PCIe 1.0 x1 buses combined together (assuming no PCIe x1 card is installed)
Title: Re: Best driver for the Marvell 9128 6G Controller
Post by: Dark Mantis on January 23, 2011, 05:40:57 am
Well I will keep my fingers crossed that I ma wrong and it can be fixed. It would indeed be great to be able to make full use of this device even if it is a year later.