Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Nov 2009 16:23:54 +0100
From:      Matthias Reyelt <Matthias.Reyelt@brunel.de>
To:        Rafal Jaworowski <raj@semihalf.com>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: Marvell Kirkwood 6281 mge1 interface
Message-ID:  <200911051623.56583.Matthias.Reyelt@brunel.de>
In-Reply-To: <C37D237E-B40C-496A-8AAB-D75D065727D2@semihalf.com>
References:  <200911040956.09749.Matthias.Reyelt@brunel.de> <200911051423.52940.Matthias.Reyelt@brunel.de> <C37D237E-B40C-496A-8AAB-D75D065727D2@semihalf.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

the second phy is an E1116 as well.

I have applied the patch to common.h
There is still something missing. 

Here is the boot log. There are some other error messages, e.g. from pcib.

Matthias

-------------------------------snip-----------------------------------------------------------------
         __  __                      _ _
        |  \/  | __ _ _ ____   _____| | |
        | |\/| |/ _` | '__\ \ / / _ \ | |
        | |  | | (_| | |   \ V /  __/ | |
        |_|  |_|\__,_|_|    \_/ \___|_|_|
 _   _     ____              _
| | | |   | __ )  ___   ___ | |_
| | | |___|  _ \ / _ \ / _ \| __|
| |_| |___| |_) | (_) | (_) | |_
 \___/    |____/ \___/ \___/ \__|
 ** MARVELL BOARD: OpenRD-Client LE

U-Boot 1.1.4 (May 18 2009 - 13:33:10) Marvell version: 3.4.16

U-Boot code: 00600000 -> 0067FFF0  BSS: -> 006CEE80

Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz

DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000   size 256MB
DRAM CS[1] base 0x10000000   size 256MB
DRAM Total size 512MB  16bit width
Flash:  0 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB

Checking for BootROM Routine Errors

No. of BootROM routine retries: 0
No error found

Running POST...

        DDR2 data bus test                               PASSED

        DDR2 address bus test                            PASSED

        UART 1 internal loopback test on baudrate   9600 PASSED
        UART 1 internal loopback test on baudrate  19200 PASSED
        UART 1 internal loopback test on baudrate 115200 PASSED

        Device: 0, Size: 512 MB, Page Size: 2 KB, Block Size: 128 KB
        NAND detection test                              PASSED

        Bad Block: 1a5a0000
        NAND bad-block detection test                    PASSED

        RTC test                                         PASSED

6/6 tests PASSED
POST completed

CPU : Marvell Feroceon (Rev 1)

Streaming disabled
Write allocate disabled

Module 0 is AUDIO
Module 1 is RGMII

USB 0: host mode
PCI 0: PCI Express Root Complex Interface
PEX interface detected Link X1
Net:   egiga0 [PRIME], egiga1
Hit any key to stop autoboot:  0
Marvell>> tftpboot 900000 kernel.bin
Using egiga0 device
TFTP from server 172.16.102.81; our IP address is 172.16.102.69
Filename 'kernel.bin'.
Load address: 0x900000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ###############################################################
done
Bytes transferred = 2980852 (2d7bf4 hex)
Marvell>> go 900000
## Starting application at 0x00900000 ...
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2009 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.0-RC2 #15 r198539:198785M: Thu Nov  5 15:46:38 CET 2009
    
root@bcspc5.bcs.brunel.local:/usr/obj/arm/arm/src/8-stable/8/sys/DB-88F6XXX
Preloaded elf kernel "elf kernel" at 0xc0bf11d8.
CPU: Feroceon 88FR131 rev 1 (write-through core)
  WB enabled EABT branch prediction enabled
  16KB/32B 4-way Instruction cache
  16KB/32B 4-way write-back-locking-C Data cache
real memory  = 536870912 (512 MB)
Physical memory chunk(s):
00000000 - 0x8fffff, 9437184 bytes (2304 pages)
0xce7000 - 0x1f64bfff, 513167360 bytes (125285 pages)
avail memory = 520372224 (496 MB)
SOC: (0x6281:0x02) Marvell 88F6281 rev A0, TClock 200MHz
nfslock: pseudo-device
mem: <memory>
null: <null device, zero device>
random: <entropy source, Software, Yarrow>
mbus0: <Marvell Internal Bus (Mbus)> on motherboard
ic0: <Marvell Integrated Interrupt Controller> at mem 0xf1020200-0xf102023b on 
mbus0
timer0: <Marvell CPU Timer> at mem 0xf1020300-0xf102032f irq 1 on mbus0
timer0: [FILTER]
rtc0: <Marvell Integrated RTC> at mem 0xf1010300-0xf1010307 on mbus0
rtc0: registered as a time-of-day clock (resolution 1000000us)
gpio0: <Marvell Integrated GPIO Controller> at mem 0xf1010100-0xf101011f irq 
35,36,37,38,39,40,41 on mbus0
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
gpio0: [FILTER]
uart0: <16550 or compatible> at mem 0xf1012000-0xf101201f irq 33 on mbus0
uart0: [FILTER]
uart0: fast interrupt
uart0: console (115740,n,8,1)
uart1: <16550 or compatible> at mem 0xf1012100-0xf101211f irq 34 on mbus0
uart1: [FILTER]
uart1: fast interrupt
ehci0: <Marvell Integrated USB 2.0 controller> at mem 0xf1050000-0xf1050fff 
irq 48,19 on mbus0
ehci0: [FILTER]
ehci0: [MPSAFE]
ehci0: [ITHREAD]
ehci0: 5.24 GL USB-2 workaround enabled
usbus0: EHCI version 1.0
usbus0: set host controller mode
usbus0: <Marvell Integrated USB 2.0 controller> on ehci0
mge0: <Marvell Gigabit Ethernet controller> at mem 0xf1072000-0xf1073fff irq 
12,13,14,11,46 on mbus0
mge0: bpf attached
mge0: Ethernet address: 00:50:43:01:a2:5e
mge0: Now probing PHY
mge0: mii_phy_probe: Starting to probe PHYs: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0 
8:31085 ok
miibus0: (miibus_probe) is the mii device
mge0: (miibus_probe) is the eth device
miibus0: Probing phy 0 miibus0: No phy found
miibus0: Probing phy 1 miibus0: No phy found
miibus0: Probing phy 2 miibus0: No phy found
miibus0: Probing phy 3 miibus0: No phy found
miibus0: Probing phy 4 miibus0: No phy found
miibus0: Probing phy 5 miibus0: No phy found
miibus0: Probing phy 6 miibus0: No phy found
miibus0: Probing phy 7 miibus0: No phy found
miibus0: Probing phy 8 miibus0: found one. Now looking for ID
miibus0: Probing phy 9 miibus0: No phy found
miibus0: Probing phy a miibus0: No phy found
miibus0: Probing phy b miibus0: No phy found
miibus0: Probing phy c miibus0: No phy found
miibus0: Probing phy d miibus0: No phy found
miibus0: Probing phy e miibus0: No phy found
miibus0: Probing phy f miibus0: No phy found
miibus0: Probing phy 10 miibus0: No phy found
miibus0: Probing phy 11 miibus0: No phy found
miibus0: Probing phy 12 miibus0: No phy found
miibus0: Probing phy 13 miibus0: No phy found
miibus0: Probing phy 14 miibus0: No phy found
miibus0: Probing phy 15 miibus0: No phy found
miibus0: Probing phy 16 miibus0: No phy found
miibus0: Probing phy 17 miibus0: No phy found
miibus0: Probing phy 18 miibus0: No phy found
miibus0: Probing phy 19 miibus0: No phy found
miibus0: Probing phy 1a miibus0: No phy found
miibus0: Probing phy 1b miibus0: No phy found
miibus0: Probing phy 1c miibus0: No phy found
miibus0: Probing phy 1d miibus0: No phy found
miibus0: Probing phy 1e miibus0: No phy found
miibus0: Probing phy 1f miibus0: No phy found
miibus0: <MII bus> on mge0
miibus0: miibus_attach
e1000phy0: Probing e1000 PHY
e1000phy0: Probing e1000 PHY
e1000phy0: <Marvell 88E1116R Gigabit PHY> PHY 8 on miibus0
mge0: Writing 6800 to reg 10 on phy 8
mge0: Writing 70 to reg 14 on phy 8
mge0: Writing 9140 to reg 0 on phy 8
e1000phy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 
1000baseT-FDX, auto
mge0: [MPSAFE]
mge0: [ITHREAD]
mge0: [MPSAFE]
mge0: [ITHREAD]
mge1: <Marvell Gigabit Ethernet controller> at mem 0xf1076000-0xf1077fff irq 
16,17,18,15,46 on mbus0
mge1: bpf attached
mge1: Ethernet address: 00:50:43:01:a2:5f
mge1: Now probing PHY
mge1: mii_phy_probe: Starting to probe PHYs: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0 
8:0 9:65535 ok
miibus1: (miibus_probe) is the mii device
mge1: (miibus_probe) is the eth device
miibus1: Probing phy 0 miibus1: No phy found
miibus1: Probing phy 1 miibus1: No phy found
miibus1: Probing phy 2 miibus1: No phy found
miibus1: Probing phy 3 miibus1: No phy found
miibus1: Probing phy 4 miibus1: No phy found
miibus1: Probing phy 5 miibus1: No phy found
miibus1: Probing phy 6 miibus1: No phy found
miibus1: Probing phy 7 miibus1: No phy found
miibus1: Probing phy 8 miibus1: No phy found
miibus1: Probing phy 9 miibus1: found one. Now looking for ID
miibus1: Probing phy a miibus1: No phy found
miibus1: Probing phy b miibus1: No phy found
miibus1: Probing phy c miibus1: No phy found
miibus1: Probing phy d miibus1: No phy found
miibus1: Probing phy e miibus1: No phy found
miibus1: Probing phy f miibus1: No phy found
miibus1: Probing phy 10 miibus1: No phy found
miibus1: Probing phy 11 miibus1: No phy found
miibus1: Probing phy 12 miibus1: No phy found
miibus1: Probing phy 13 miibus1: No phy found
miibus1: Probing phy 14 miibus1: No phy found
miibus1: Probing phy 15 miibus1: No phy found
miibus1: Probing phy 16 miibus1: No phy found
miibus1: Probing phy 17 miibus1: No phy found
miibus1: Probing phy 18 miibus1: No phy found
miibus1: Probing phy 19 miibus1: No phy found
miibus1: Probing phy 1a miibus1: No phy found
miibus1: Probing phy 1b miibus1: No phy found
miibus1: Probing phy 1c miibus1: No phy found
miibus1: Probing phy 1d miibus1: No phy found
miibus1: Probing phy 1e miibus1: No phy found
miibus1: Probing phy 1f miibus1: No phy found
miibus1: <MII bus> on mge1
miibus1: miibus_attach
e1000phy1: Probing e1000 PHY
ukphy0: <Generic IEEE 802.3u media interface> PHY 9 on miibus1
ukphy0: OUI 0x3fffff, model 0x003f, rev. 15
mge1: Writing 8400 to reg 0 on phy 9
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 100baseT4, 
1000baseSX, 1000baseSX-FDX, 1000baseT, 1000baseT-FDX, auto
mge1: [MPSAFE]
mge1: [ITHREAD]
mge1: [MPSAFE]
mge1: [ITHREAD]
twsi0: <Marvell Integrated I2C Bus Controller> at mem 0xf1011000-0xf101101f on 
mbus0
iicbus0: <Philips I2C bus> on twsi0
iic0: <I2C generic I/O> on iicbus0
sata0: <Marvell Integrated SATA Controller> at mem 0xf1080000-0xf1085fff irq 
21 on mbus0
sata0: [MPSAFE]
sata0: [ITHREAD]
ata0: <Marvell Integrated SATA Channel> on sata0
ata0: hardware reset ...
ata0: SATA connect timeout status=00000000
ata0: [MPSAFE]
ata0: [ITHREAD]
ata1: <Marvell Integrated SATA Channel> on sata0
ata1: hardware reset ...
ata1: SATA connect timeout status=00000000
ata1: [MPSAFE]
ata1: [ITHREAD]
pcib0: <Marvell 88F6281 PCI-Express host controller> at mem 
0xf1040000-0xf1041fff on mbus0
pcib0: PCI IO/Memory space exhausted
device_attach: pcib0 attach returned 12
Timecounter "CPU Timer" frequency 200000000 Hz quality 1000
Timecounters tick every 10.000 msec
lo0: bpf attached
ata0: Identifying devices: 00000000
ata0: New devices: 00000000
ata1: Identifying devices: 00000000
ata1: New devices: 00000000
usbus0: 480Mbps High Speed USB v2.0
bootpc_init: wired to interface 'mge0'
Sending DHCP Discover packet from interface mge0 (00:50:43:01:a2:5e)
ugen0.1: <Marvell> at usbus0
uhub0: <Marvell EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
uhub0: 1 port with 1 removable, self powered
mge0: link state changed to UP
ugen0.2: <vendor 0x0424> at usbus0
uhub1: <vendor 0x0424 product 0x2517, class 9/0, rev 2.00/0.01, addr 2> on 
usbus0
uhub1: 7 ports with 7 removable, self powered
DHCP/BOOTP timeout for server 255.255.255.255
DHCP/BOOTP timeout for server 255.255.255.255
DHCP/BOOTP timeout for server 255.255.255.255
DHCP/BOOTP timeout for server 255.255.255.255
DHCP/BOOTP timeout for server 255.255.255.255
Received DHCP Offer packet on mge0 from 172.16.102.81 (accepted) (no root 
path)
Sending DHCP Request packet from interface mge0 (00:50:43:01:a2:5e)
DHCP/BOOTP timeout for server 255.255.255.255
Received DHCP Ack packet on mge0 from 172.16.102.81 (accepted) (got root path)
mge0 at 172.16.102.69 server 172.16.102.81 boot file kernel.bin
subnet mask 255.255.255.0 router 172.16.102.3 rootfs 
172.16.102.81:/nfsroot/arm-8-le hostname open-rd1
Adjusted interface mge0
ifa_del_loopback_route: deletion failed
Trying to mount root from nfs:
NFS ROOT: 172.16.102.81:/nfsroot/arm-8-le
ct_to_ts([2009-11-05 14:55:27]) = 1257432927.000000000
ct_to_ts([2009-11-05 14:55:27]) = 1257432927.000000000
start_init: trying /sbin/init
Enter full pathname of shell or RETURN for /bin/sh:
# exit
Interface mge0 IP-Address 172.16.102.69 Broadcast 172.16.102.255
Entropy harvesting: interrupts ethernet point_to_point kickstart.
Fast boot: skipping disk checks.
mount_nfs: can't update /var/db/mounttab for 172.16.102.81:/nfsroot/arm-8-le
Starting Network: lo0.
route: writing to routing socket: File exists
add net default: gateway 172.16.102.3: route already in table
devd: cannot open pid file: Operation not supported
Mounting NFS file systems:mount_nfs: can't update /var/db/mounttab for 
172.16.102.81:/nfsvar/arm-8-le
.
syslogd: cannot open pid file: Operation not supported
Recovering vi editor sessions:.
Starting local daemons:rc.local
.
Nov  5 14:55:45 open-rd1 sm-mta[820]: nA5EtjYr000820: SYSERR(root): hash 
map "Alias0": missing map file /etc/mail/aliases.db: No such file or 
directory
Nov  5 14:55:45 open-rd1 sm-mta[829]: nA5EtjYr000820: SYSERR(root): hash 
map "Alias0": missing map file /etc/mail/aliases.db: No such file or 
directory

Thu Nov  5 14:55:46 UTC 2009

FreeBSD/arm (open-rd1) (ttyu0)

login:

----------------------------------snip---------------------------------------------------
Am Donnerstag 05 November 2009 15:16:08 schrieb Rafal Jaworowski:
> 
> On 2009-11-05, at 14:23, Matthias Reyelt wrote:
> 
> >> Before trying to identify PHY problems,  can you share all your
> >> changes (a diff)? So far all Kirkwood based boards we support had  
> >> only
> >> a single active Ethernet port, so the Kirkwood platform config only
> > Yes, the OpenRD client is rather new, and the board contains an  
> > awful lot of
> > interfaces (and no fan), really great.
> 
> Can you eye inspect the PHY chip connected to the second MAC, is it  
> E1116 as well?
> 
> BTW: if you managed to get OpenRD to boot, please send a full booting  
> log for reference.
> 
> >> accounted for a single MAC, have you altered the obio_devices[] in
> >> particular?
> > I did add the second interface to the obio_devices[], and adjusted  
> > the defines
> > according to the header files as good as I knew (although I have  
> > been aware
> > that there would be a reason for the missing interface :-)
> 
> Your diff looks fine, however there is missing at least one important  
> piece: decode window for the second ETH is not being configured. Try  
> adding the change below.
> 
> Rafal
> 
> diff --git a/sys/arm/mv/common.c b/sys/arm/mv/common.c
> index 76758be..b60d0ac 100644
> --- a/sys/arm/mv/common.c
> +++ b/sys/arm/mv/common.c
> @@ -204,7 +204,8 @@ soc_decode_win(void)
>          decode_win_cpu_setup();
>          decode_win_usb_setup();
>          decode_win_eth_setup(MV_ETH0_BASE);
> -       if (dev == MV_DEV_MV78100 || dev == MV_DEV_MV78100_Z0)
> +       if (dev == MV_DEV_88F6281 ||
> +           dev == MV_DEV_MV78100 || dev == MV_DEV_MV78100_Z0)
>                  decode_win_eth_setup(MV_ETH1_BASE);
>          if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100 ||
>              dev == MV_DEV_MV78100_Z0)
> 
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911051623.56583.Matthias.Reyelt>