You are not logged in.

#1 2014-01-12 15:52:50

JoeHartley
Member
Registered: 2011-10-01
Posts: 23

Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

Yesterday I was able to upgrade my main machine from an old 2-core AMD processor to a Gigabyte 990FXA-UD3 with an AMD FX8350 CPU and 2 sticks of Corsair Vengeance DDR3 1866 MHz 4GB RAM.  I chose that mobo because of my need for both a PCI slot and a Firewire port for various audio gear.  My storage, PSU and GPU were staying the same.

It went pretty well, all things considered, but I ran into 4 issues along the way.  This post is to document my fixes and to see how close I am with one last issue.

1) At first boot, the machine gave me the Syslinux menu but wouldn't boot into Arch.  This was sort of expected.  The fix was straightforward:
  - Boot from USB
  - mount my / and /boot partitions as /mnt and /mnt/boot
  - run "arch-chroot /mnt"
  - run "mkinitcpio -p linux"
  - reboot

Now that I could boot into my own environment, I was ready to.... figure out why my mouse and keyboard weren't responding after getting past the BIOS screen.  It's a USB keyboard and mouse, and though they both worked fine in the BIOS environment, as soon as Syslinux took over, they were unavailable.  I had a PS/2 keyboard available, so that went on to allow me access.  Now that I could log in, I could Google the issue and see....  wait, eth0 is there but not getting a DHCP address.  OK, hard-code an IP and... I still can't ping my router.  That isn't good.  So, onto a laptop to work this one out....

2 & 3)  No network and no USB

This was the hardest to work out.  I found that my USB3.0 ports were fine, but the 1.1/2.0 ports were not.  I also saw that the mobo uses a Realtek RTL8111/8168/8411 Ethernet controller.  All sorts of playing around building the r8168-all package (sneakernetted via USB key from the laptop) from AUR didn't help.

The fixes for these happened simultaneously, so I've grouped the solutions together here.

  - Get into the BIOS, go to Peripherals
  - Change these items from the default:
    EHCI hand-off - ENABLE
    IOMMU controller - ENABLE
    Get to the boot menu, hit TAB to edit the boot options, add iommu=pt and boot up
    Edit your boot configuration file (mine's /boot/syslinux/syslinux.cfg but GRUB users will change /boot/grub/menu.lst) to add the iommu=pt definition.

Now there's only one thing to look at - the RAM speed.  This is where I'm really out of my element.  I'm not an overclocker so I don't know much about latency and timings and bus speed multipliers.  I have 2 sticks, and as recommended these went in alternating slots to enable Dual Channel mode.

I saw in the BIOS that the RAM was defined for 1333MHz, not what I'm looking for.

From the BIOS, I went to MIT -> Advanced Memory Settings, and I fond I could change the Extreme Memory Profile (XMP) from Disabled to Profile1.  (TIL that the XMP is stored on the UDIMM and lets you automatically set timings etc. to the defined profile.  Nice.)  Profile1 sets the RAM to run at 1866MHz, and all looked great at the BIOS level.

When I boot into Arch and run various utilities, I don't see what I'm expecting:

[jh@xtc ~]$ sudo lshw -c memory -short
H/W path                Device     Class       Description
==========================================================
/0/0                               memory      64KiB BIOS
/0/4/5                             memory      384KiB L1 cache
/0/4/6                             memory      8MiB L2 cache
/0/4/7                             memory      8MiB L3 cache
/0/2c                              memory      8GiB System Memory
/0/2c/0                            memory      DIMM Synchronous [empty]
/0/2c/1                            memory      4GiB DIMM DDR3 Synchronous 667 MHz (1.5 ns)
/0/2c/2                            memory      DIMM Synchronous [empty]
/0/2c/3                            memory      4GiB DIMM DDR3 Synchronous 667 MHz (1.5 ns)

[jh@xtc ~]$ sudo dmidecode --type 17
           *** snip ***
Handle 0x0034, DMI type 17, 34 bytes
Memory Device
        Array Handle: 0x002C
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 4096 MB
        Form Factor: DIMM
        Set: None
        Locator: Node0_Dimm3
        Bank Locator: Node0_Bank0
        Type: DDR3
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 667 MHz
        Manufacturer: Corsair           
        Serial Number: 00000000   
        Asset Tag: Dimm3_AssetTag
        Part Number: CMZ8GX3M2A186
        Rank: 1
        Configured Clock Speed: 933 MHz

Now, I know from reading a lot of forums that because of Dual Channel and multipliers, it can be hard to figure out what the actual RAM speed is.  I *might* be there already, since 933*2 = 1866, the number I'm looking for, and I've seen at least one post saying that this would be the expected number, but I'm just not sure.  I tried pulling one stick to disable Dual Channel, but got the same result as above.

I've also gone in and bumped the multiplier from 9.33x to 10.66x, which according to the BIOS gives me 2132MHz.  In that state, lshw still reports the DIMM at 667MHz, while dmidecode gives me "Configured Clock Speed: 1066 MHz" but at least it's different, even if it is 1/2 the number I was expecting.

So now I'm working on trying to find out if dmidecode is reporting numbers incorrectly, or if I'm missing something in correctly configuring my system.  All pointers to knowledge of this are greatly appreciated!

Hopefully this post will at least let another Gigabyte mobo user avoid some of the pain I went through on this.

Last edited by JoeHartley (2014-01-16 13:45:55)

Offline

#2 2014-01-12 16:03:31

the_shiver
Member
Registered: 2013-03-27
Posts: 130

Re: Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

http://en.wikipedia.org/wiki/Double_data_rate

the frequencies are correct, DDR transfers 2 signals per clock cycle which is about the same ammount transfered as if only 1 signal got transfered per clock cycle with twice the frequency

Offline

#3 2014-01-12 16:32:48

JoeHartley
Member
Registered: 2011-10-01
Posts: 23

Re: Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

the_shiver wrote:

http://en.wikipedia.org/wiki/Double_data_rate

the frequencies are correct, DDR transfers 2 signals per clock cycle which is about the same ammount transfered as if only 1 signal got transfered per clock cycle with twice the frequency


Thanks, I was getting a bit lost in the acronym soup, not to mention some posts on the net that were seriously off-base.

Offline

#4 2014-01-16 03:37:38

JoeHartley
Member
Registered: 2011-10-01
Posts: 23

Re: Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

A followup here - I've learned more about this board, and have changed a couple of things in my setup.

I found that even with IOMMU enabled, the network port seemed flaky.  Neither the Realtek driver in Arch nor the one inAUR helped; the net would hang at times for brief moments but there was nothing I could put my finger on.  I happened to have an Intel network card handy so I dropped that in and disabled the onboard LAN.  It's been rock-solid.

I've also tried connecting an eSATA interface to the box to make a set of backup disks, but I never saw the drives in parted and there are errors like this:
Jan 15 21:27:36 xtc kernel: [   12.434714] AMD-Vi: Event logged [IO_PAGE_FAULT device=04:00.1 domain=0x0000 address=0x0000000221720450 flags=0x0070]

Some Googling showed these errors are related to the IOMMU.  Since I'm no longer using the onboard LAN, I disabled IOMMU, which brought up the drives  in the eSATA interface.  Downside is I lose the USB2.0 ports, but the USB3.0 ports work, and two USB ports are enough for now.  The Firewire port still works, so I'm at a stable place with this configuration.

I think this is a great looking mobo and it's screaming along, but I only give it 7/10 for Linux compatibility.

Offline

#5 2017-04-08 20:00:08

denvit
Member
Registered: 2016-02-22
Posts: 6

Re: Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

Sorry for the necrobump, but this can actually be solved by setting `iommu=soft` or `iommu=pt` as a boot parameter

Offline

#6 2017-04-08 20:10:44

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 11,865
Website

Re: Arch on a Gigabyte 990FXA-UD3 mobo - 3 [SOLVED], 1 given up on

That's probably why the first post includes iommu=pt, and the wiki explicitly mentions using iommu=soft for this particular motherboard.

Closing.


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Online

Board footer

Powered by FluxBB