1168404Spjd# $FreeBSD$
2168404Spjd
3168404Spjd# This is a placeholder until the hardware support is complete.
4168404Spjd
5168404Spjd# mdiobus0 on arge0
6168404Spjdhint.argemdio.0.at="nexus0"
7168404Spjdhint.argemdio.0.maddr=0x19000000
8168404Spjdhint.argemdio.0.msize=0x1000
9168404Spjdhint.argemdio.0.order=0
10168404Spjd
11168404Spjd# DB120 GMAC configuration
12168404Spjd# + AR934X_ETH_CFG_RGMII_GMAC0              (1 << 0)
13168404Spjd# + AR934X_ETH_CFG_SW_ONLY_MODE             (1 << 6)
14168404Spjdhint.ar934x_gmac.0.gmac_cfg=0x41
15168404Spjd
16168404Spjd# GMAC0 here - connected to an AR8327
17168404Spjdhint.arswitch.0.at="mdio0"
18168404Spjdhint.arswitch.0.is_7240=0
19168404Spjdhint.arswitch.0.is_9340=0	# not the internal switch!
20168404Spjdhint.arswitch.0.numphys=5
21168404Spjdhint.arswitch.0.phy4cpu=0
22219089Spjdhint.arswitch.0.is_rgmii=1
23277826Sdelphijhint.arswitch.0.is_gmii=0
24268123Sdelphij
25260835Sdelphij# Other AR8327 configuration parameters
26268085Sdelphij
27168404Spjd# AR8327_PAD_MAC_RGMII
28168404Spjdhint.arswitch.0.pad.0.mode=6
29168404Spjdhint.arswitch.0.pad.0.txclk_delay_en=1
30168404Spjdhint.arswitch.0.pad.0.rxclk_delay_en=1
31168404Spjd# AR8327_CLK_DELAY_SEL1
32168404Spjdhint.arswitch.0.pad.0.txclk_delay_sel=1
33168404Spjd# AR8327_CLK_DELAY_SEL2
34168404Spjdhint.arswitch.0.pad.0.rxclk_delay_sel=2
35168404Spjd
36168404Spjd# XXX there's no LED management just yet!
37168404Spjdhint.arswitch.0.led.ctrl0=0x00000000
38168404Spjdhint.arswitch.0.led.ctrl1=0xc737c737
39168404Spjdhint.arswitch.0.led.ctrl2=0x00000000
40168404Spjdhint.arswitch.0.led.ctrl3=0x00c30c00
41168404Spjdhint.arswitch.0.led.open_drain=1
42168404Spjd
43168404Spjd# force_link=1 is required for the rest of the parameters
44168404Spjd# to be configured.
45168404Spjdhint.arswitch.0.port.0.force_link=1
46168404Spjdhint.arswitch.0.port.0.speed=1000
47168404Spjdhint.arswitch.0.port.0.duplex=1
48168404Spjdhint.arswitch.0.port.0.txpause=1
49168404Spjdhint.arswitch.0.port.0.rxpause=1
50168404Spjd
51185029Spjd# XXX OpenWRT DB120 BSP doesn't have media/duplex set?
52185029Spjdhint.arge.0.phymask=0x0
53168404Spjdhint.arge.0.media=1000
54168404Spjdhint.arge.0.fduplex=1
55168404Spjdhint.arge.0.miimode=3           # RGMII
56168404Spjdhint.arge.0.pll_1000=0x06000000
57185029Spjd
58168404Spjd# MAC for arge0 is the first 6 bytes of the ART
59168404Spjdhint.arge.0.eeprommac=0x1f7f0000
60168404Spjd
61168404Spjd# mdiobus1 on arge1
62251631Sdelphijhint.argemdio.1.at="nexus0"
63168404Spjdhint.argemdio.1.maddr=0x1a000000
64168404Spjdhint.argemdio.1.msize=0x1000
65168404Spjdhint.argemdio.1.order=0
66251631Sdelphij
67168404Spjd# Embedded switch on the AR9344
68168404Spjd# mdio1 is actually created as the AR8327 internal bus; so
69168404Spjd# this pops up as mdio2.
70168404Spjdhint.arswitch.1.at="mdio2"
71168404Spjdhint.arswitch.1.is_7240=0
72168404Spjdhint.arswitch.1.is_9340=1
73168404Spjdhint.arswitch.1.numphys=5
74168404Spjdhint.arswitch.1.phy4cpu=0       # phy 4 is not a "CPU port" PHY here
75168404Spjdhint.arswitch.1.is_rgmii=0
76168404Spjdhint.arswitch.1.is_gmii=1       # arge1 <-> switch PHY is GMII
77168404Spjd
78168404Spjd# arge1 - lock up to 1000/full
79185029Spjdhint.arge.1.phymask=0x0		# Nothing attached here (XXX?)
80168404Spjdhint.arge.1.media=1000
81251631Sdelphijhint.arge.1.fduplex=1
82168404Spjdhint.arge.1.miimode=1		# GMII
83168404Spjd
84168404Spjd# MAC for arge1 is the second 6 bytes of the ART
85168404Spjdhint.arge.1.eeprommac=0x1f7f0006
86168404Spjd
87168404Spjd# ath0: Where the ART is - last 64k in the flash
88168404Spjdhint.ath.0.eepromaddr=0x1fff0000
89168404Spjdhint.ath.0.eepromsize=16384
90168404Spjd
91168404Spjd# ath1: it's different; it's a PCIe attached device, so
92168404Spjd# we instead need to teach the PCIe bridge code about it
93168404Spjd# (ie, the 'early pci fixup' stuff that programs the PCIe
94168404Spjd# host registers on the NIC) and then we teach ath where
95168404Spjd# to find it.
96168404Spjd
97168404Spjd# ath1 hint - pcie slot 0
98168404Spjdhint.pcib.0.bus.0.0.0.ath_fixup_addr=0x1fff4000
99168404Spjdhint.pcib.0.bus.0.0.0.ath_fixup_size=16384
100168404Spjd
101168404Spjd# ath0 - eeprom comes from here
102168404Spjdhint.ath.1.eeprom_firmware="pcib.0.bus.0.0.0.eeprom_firmware"
103168404Spjd
104168404Spjd# flash layout:
105168404Spjd#
106168404Spjd# bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),64k(mib0),64k(ART)
107168404Spjd
108268858Sdelphij# 256KiB u-boot
109168404Spjdhint.map.0.at="flash/spi0"
110168404Spjdhint.map.0.start=0x00000000
111168404Spjdhint.map.0.end=0x00040000	# 256k u-boot
112168404Spjdhint.map.0.name="u-boot"
113185029Spjdhint.map.0.readonly=1
114286570Smav
115185029Spjd# 64KiB u-boot-env
116185029Spjdhint.map.1.at="flash/spi0"
117185029Spjdhint.map.1.start=0x00040000
118185029Spjdhint.map.1.end=0x00050000	# 64k u-boot-env
119185029Spjdhint.map.1.name="u-boot-env"
120185029Spjdhint.map.1.readonly=1
121168404Spjd
122168404Spjd# 6336KiB rootfs
123168404Spjdhint.map.2.at="flash/spi0"
124168404Spjdhint.map.2.start=0x00050000
125251478Sdelphijhint.map.2.end=0x00680000	# 6336k rootfs
126168404Spjdhint.map.2.name="rootfs"
127168404Spjdhint.map.2.readonly=1
128168404Spjd
129185029Spjd# 1344KiB uImage
130219089Spjdhint.map.3.at="flash/spi0"
131258632Savghint.map.3.start=0x00680000
132168404Spjdhint.map.3.end=0x007d0000	# 1408k uImage, 64k off the end..
133168404Spjdhint.map.3.name="uImage"
134168404Spjdhint.map.3.readonly=1
135168404Spjd
136168404Spjd# 64KiB cfg
137248572Ssmhhint.map.4.at="flash/spi0"
138219089Spjdhint.map.4.start=0x007d0000
139168404Spjdhint.map.4.end=0x007e0000
140168404Spjdhint.map.4.name="cfg"
141191902Skmacyhint.map.4.readonly=0
142272483Ssmh
143191902Skmacy# 64KiB mib0
144240133Smmhint.map.5.at="flash/spi0"
145240133Smmhint.map.5.start=0x007e0000
146240133Smmhint.map.5.end=0x007f0000	# 64k mib0
147240133Smmhint.map.5.name="mib0"
148240133Smmhint.map.5.readonly=1
149240133Smm
150240133Smm# 64KiB ART
151240133Smmhint.map.6.at="flash/spi0"
152168404Spjdhint.map.6.start=0x007f0000
153168404Spjdhint.map.6.end=0x00800000	# 64k ART
154168404Spjdhint.map.6.name="ART"
155168404Spjdhint.map.6.readonly=1
156168404Spjd