[Arm-dev] Gigabyte MP30-AR0

Sat Mar 12 17:12:26 UTC 2016
Michael Howard <mike at dewberryfields.co.uk>

On 12/03/2016 16:42, Gordan Bobic wrote:
> On 12/03/16 16:31, Michael Howard wrote:
>> On 12/03/2016 15:52, Gordan Bobic wrote:
>>> On 12/03/16 15:19, Michael Howard wrote:
>>>>
>>>>
>>>> On 12/03/2016 15:14, Gordan Bobic wrote:
>>>>> On 12/03/16 14:53, Michael Howard wrote:
>>>>>> On 12/03/2016 14:32, Gordan Bobic wrote:
>>>>>>> On 22/02/16 05:02, Phong Vo wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> The mp30ar0 U-boot has some special memory mapping to accommodate
>>>>>>>> 32-bit
>>>>>>>> DMA.
>>>>>>>> Please download the tar ball again - I've updated the tianocore 
>>>>>>>> UHP
>>>>>>>> for
>>>>>>>> this.
>>>>>>>>
>>>>>>>> https://dl.dropboxusercontent.com/u/20403943/mp30ar0_tianocore_binaries.ta 
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> r.xz
>>>>>>>>
>>>>>>>> Updated instruction for U-boot chain loading:
>>>>>>>> MP30AR0# setenv num_cores 1
>>>>>>>> MP30AR0# setenv DDRBASE2G 1
>>>>>>>> MP30AR0# save; reset
>>>>>>>>
>>>>>>>> MP30AR0# setenv load_tianocore 'tftp 0x82000000
>>>>>>>> ${user_dir}/mp30ar0_tianocore_ubt.fd; tftp 0x1d000000
>>>>>>>> ${user_dir}/mp30ar0_tianocore_sec_ubt.fd'
>>>>>>>> MP30AR0# setenv run_tianocore 'go 0x1d000000'
>>>>>>>> MP30AR0# run load_tianocore run_tianocore
>>>>>>>
>>>>>>> OK, I got this far now, with some minor changes (loading Tianocore
>>>>>>> off
>>>>>>> USB until I can complete the install  and put the files on the UEFI
>>>>>>> FAT disk partition. My modified incantations are:
>>>>>>>
>>>>>>> MP30AR0# setenv num_cores 1
>>>>>>> MP30AR0# setenv DDRBASE2G 1
>>>>>>>
>>>>>>> MP30AR0# setenv load_tianocore '
>>>>>>> fatload usb 0:1 0x82000000 mp30ar0_tianocore_ubt.fd;
>>>>>>> fatload usb 0:1 0x1d000000 mp30ar0_tianocore_sec_ubt.fd;'
>>>>>>>
>>>>>>> MP30AR0# setenv run_tianocore 'go 0x1d000000'
>>>>>>> MP30AR0# save; reset
>>>>>>>
>>>>>>> then after it reboots:
>>>>>>>
>>>>>>> MP30AR0# usb reset
>>>>>>> MP30AR0# run load_tianocore run_tianocore
>>>>>>>
>>>>>>> reading mp30ar0_tianocore_ubt.fd
>>>>>>> 1835008 bytes read in 569 ms (3.1 MiB/s)
>>>>>>> reading mp30ar0_tianocore_sec_ubt.fd
>>>>>>> 262144 bytes read in 218 ms (1.1 MiB/s)
>>>>>>> ## Starting application at 0x1D000000 ...
>>>>>>>
>>>>>>>
>>>>>>> X-Gene Mp30ar0 Board
>>>>>>> Boot firmware (version 1.20.03-uhp built at 11:18:31 on Feb 22 
>>>>>>> 2016)
>>>>>>> PROGRESS CODE: V3020003 I0
>>>>>>> PROGRESS CODE: V3020002 I0
>>>>>>> PROGRESS CODE: V3020003 I0
>>>>>>> PROGRESS CODE: V3020002 I0
>>>>>>> PROGRESS CODE: V3020003 I0
>>>>>>> PROGRESS CODE: V3020002 I0
>>>>>>> PROGRESS CODE: V3020003 I0
>>>>>>> PROGRESS CODE: V3021001 I0
>>>>>>>
>>>>>>> ***
>>>>>>> (Note: Boot stops there for long enough to be concerning. Give it a
>>>>>>> minute and it will eventually get further.)
>>>>>>> ***
>>>>>>>
>>>>>>> Eventually that will get you to the bit blow as Phong mentioned
>>>>>>> previously:
>>>>>>>
>>>>>>>> Welcome banner should show something similar to below
>>>>>>>>
>>>>>>>> TianoCore 1.20.03-uhp UEFI 2.4.0 Feb 22 2016 11:17:26 <===
>>>>>>>> CPU: APM ARM 64-bit Potenza Rev B0 2400MHz PCP 2400MHz
>>>>>>>>       32 KB ICACHE, 32 KB DCACHE
>>>>>>>>       SOC 2000MHz IOBAXI 400MHz AXI 250MHz AHB 200MHz GFC 125MHz
>>>>>>>> Board: X-Gene Mp30ar0 Board
>>>>>>>> Slimpro FW:
>>>>>>>>          Ver: 2.4 (build 01.20.04.00 2016/02/18)
>>>>>>>>          TPC: disable
>>>>>>>>          AVS: support
>>>>>>>>          SOC: 950 mV
>>>>>>>> The default boot selection will start in   5 seconds
>>>>>>> [1] Shell
>>>>>>> [2] Boot Manager
>>>>>>> [3] Reboot
>>>>>>> [4] Shutdown
>>>>>>>
>>>>>>> Make sure the install DVD is inserted, pick 1, and type in:
>>>>>>>
>>>>>>> FS1:\EFI\BOOT\BOOTAA64.EFI
>>>>>>>
>>>>>>> The installer will do the rest, with the exception of figuring out
>>>>>>> the
>>>>>>> NIC MAC addresses. 3 NICs show up as having ethernet address of
>>>>>>> ff:ff:ff:ff:ff:ff, even though they are set correctly in u-boot.
>>>>>>>
>>>>>> At the Shell prompt, set MAC0 xx:xx:xx:xx:xx:xx & set MAC1
>>>>>> xx:xx:xx:xx:xx:xx
>>>>>>
>>>>>> but this was insufficient for the Centos installer to get an ip even
>>>>>> after a reboot. What I did was change the kernel command line at the
>>>>>> grub menu to include ip, netmask and to request vnc.
>>>>>
>>>>> Yes, I went back through the thread and re-read about that bit. What
>>>>> worked for me is adding "ip=dhcp" to the kernel boot parameters. 
>>>>> There
>>>>> are actually 4 NICs on this board, so I just added all 4 (MAC0-MAC3).
>>>> Yes, ip=dhcp is also good. Actually there are 5 nics :)
>>>> Not sure why the installer only sees 3, unless the the third one it 
>>>> sees
>>>> is the BMC interface, which you wouldn't normally expect.
>>>
>>> Both the installer and the installed system see 3.
>>> eth0 and eth1 are definitely the two gigabit ports.
>>>
>>> eth3 is definitely not the BMC (different MAC address, I just checked).
>>> So eth3 is one of the SFP ports. Which makes me wonder why the 2nd SFP
>>> port isn't showing up.
>>>
>> The physical label on the port header will tell you which 10Gb port it
>> is.
>
> ethtool shows eth0 and eth1 are 1G, and eth2 is 10G, which is in line 
> with what I mentioned earlier.
>
Yeah, I meant from the sticky label on the port header of the board, 
you'll know which physical port was being identified, in case you can't 
physically check which port is working.
>> On my modified 4.5.0-rc6 I do see 4 nics but the fourth is bogus as
>> the hwaddr is nothing like and I can't physically test at the mo. I
>> don't think there is support yet for the second 10Gb nic.
>
> So mainline 4.5.0 works without needing extra patches?
Yes.
> What config did you use? The one from the CentOS kernel (with make 
> oldconfig or similar)?
Yes, I started with the original config, accepting all defaults, then 
made the changes I neeeded/wanted.
> I take it 4.1.x (most recent LT) is out of the question.
I doubt it's 'out of the question'.

As I said earlier, I can't physically test my 10G ports at the mo and 
the mac address of eth3 is wildly out. However, ethtool does report (the 
same as eth2);

# ethtool eth3
Settings for eth3:
         Supported ports: [ FIBRE ]
         Supported link modes:   10000baseT/Full
         Supported pause frame use: No
         Supports auto-negotiation: No
         Advertised link modes:  10000baseT/Full
         Advertised pause frame use: No
         Advertised auto-negotiation: No
         Speed: 10000Mb/s
         Duplex: Full
         Port: FIBRE
         PHYAD: 0
         Transceiver: internal
         Auto-negotiation: off
         Link detected: no

so maybe it's just a mis reported mac address.

-- 
Mike Howard