1275057Ssbruno# $FreeBSD$
2275057Ssbruno
3275057Ssbruno# arge0 is connected to the LAN side of the switch PHY.
4275057Ssbruno# arge1 is connected to the single port WAN side of the switch PHY.
5275057Ssbruno
6275057Ssbrunohint.argemdio.0.at="nexus0"
7275462Ssbrunohint.argemdio.0.maddr=0x19000000
8275057Ssbrunohint.argemdio.0.msize=0x1000
9275057Ssbrunohint.argemdio.0.order=0
10275057Ssbruno
11275057Ssbrunohint.arge.0.phymask=0x0
12275057Ssbrunohint.arge.0.media=1000
13275057Ssbrunohint.arge.0.fduplex=1
14275057Ssbrunohint.arge.0.eeprommac=0x1f05120c
15275057Ssbrunohint.arge.0.mdio=mdioproxy0     # .. off of the switch mdiobus
16275057Ssbrunohint.arge.0.miimode=3 
17275057Ssbruno
18275057Ssbrunohint.arge.1.phymask=0x10
19275057Ssbrunohint.arge.1.media=1000
20275057Ssbrunohint.arge.1.fduplex=1
21275057Ssbrunohint.arge.1.eeprommac=0x1f05520c
22275462Ssbrunohint.arge.1.mdio=mdioproxy1     # .. off of the switch mdiobus
23275057Ssbrunohint.arge.1.miimode=3 
24275462Ssbruno
25275057Ssbruno#
26275470Ssbruno# AR8316 switch config
27275057Ssbruno#
28275057Ssbrunohint.arswitch.0.at="mdio0"
29275057Ssbrunohint.arswitch.0.is_7240=0       # We need to be explicitly told this
30275057Ssbrunohint.arswitch.0.numphys=4       # 5 active switch PHYs (PHY 0 -> 4)
31275462Ssbrunohint.arswitch.0.phy4cpu=1       # No, PHY 4 == dedicated PHY
32275057Ssbrunohint.arswitch.0.is_rgmii=1      # Yes, is RGMII
33275057Ssbrunohint.arswitch.0.is_gmii=0       # No, not GMII
34275057Ssbruno
35275057Ssbruno# ath0 - slot 17
36275057Ssbrunohint.pcib.0.bus.0.17.0.ath_fixup_addr=0x1f051000
37275057Ssbrunohint.pcib.0.bus.0.17.0.ath_fixup_size=4096
38275057Ssbruno
39275057Ssbruno# ath1 - slot 18
40275057Ssbrunohint.pcib.0.bus.0.18.0.ath_fixup_addr=0x1f055000
41275057Ssbrunohint.pcib.0.bus.0.18.0.ath_fixup_size=4096
42275057Ssbruno# .. and now, telling each ath(4) NIC where to find the firmware
43275057Ssbruno# image.
44275057Ssbrunohint.ath.0.eeprom_firmware="pcib.0.bus.0.17.0.eeprom_firmware"
45275057Ssbrunohint.ath.1.eeprom_firmware="pcib.0.bus.0.18.0.eeprom_firmware"
46275057Ssbruno
47275057Ssbruno# Inherited from AR71XX_BASE.hints
48275057Ssbruno#hint.mx25l.0.at="spibus0"
49275057Ssbruno#hint.mx25l.0.cs=0
50275057Ssbruno# This board has two 16 MB flash devices on difference Chip Select pins
51275057Ssbrunohint.mx25l.1.at="spibus0"
52275057Ssbrunohint.mx25l.1.cs=1
53275057Ssbruno
54275057Ssbruno
55275057Ssbruno# Geom MAP
56275057Ssbruno
57275057Ssbrunohint.map.0.at="flash/spi0"
58275057Ssbrunohint.map.0.start=0x00000000
59275057Ssbrunohint.map.0.end=0x00040000
60275057Ssbrunohint.map.0.name="uboot"
61275057Ssbrunohint.map.0.readonly=1
62275057Ssbruno
63275057Ssbrunohint.map.1.at="flash/spi0"
64275057Ssbrunohint.map.1.start=0x00040000
65275057Ssbrunohint.map.1.end=0x00050000
66275057Ssbrunohint.map.1.name="u-boot-env"
67275057Ssbrunohint.map.1.readonly=1
68275057Ssbruno
69275057Ssbrunohint.map.2.at="flash/spi0"
70275057Ssbrunohint.map.2.start=0x00050000
71275057Ssbrunohint.map.2.end=0x00060000
72275057Ssbrunohint.map.2.name="ART"
73275057Ssbrunohint.map.2.readonly=1
74275057Ssbruno
75275057Ssbruno# requires a 1M alignment and padding in the image.
76275057Ssbruno# make sure you are using conv=sync and bs=1M in your dd
77275057Ssbrunohint.map.3.at="flash/spi0"
78275057Ssbrunohint.map.3.start=0x00060000
79275057Ssbrunohint.map.3.end="search:0x00160000:0x100000:.!/bin/sh"
80275057Ssbrunohint.map.3.name="kernel"
81275057Ssbrunohint.map.3.readonly=1
82275057Ssbruno
83275057Ssbrunohint.map.4.at="flash/spi0"
84275057Ssbrunohint.map.4.start="search:0x00160000:0x100000:.!/bin/sh"
85275057Ssbrunohint.map.4.end=0x01000000
86275057Ssbrunohint.map.4.name="rootfs"
87275057Ssbrunohint.map.4.readonly=1
88275057Ssbruno
89275057Ssbrunohint.map.5.at="flash/spi1"
90275057Ssbrunohint.map.5.start=0x00FF0000
91275057Ssbrunohint.map.5.end=0x01000000
92275057Ssbrunohint.map.5.name="cfg"
93275057Ssbrunohint.map.5.readonly=0
94275057Ssbruno
95275057Ssbruno# Pin 1  - SCK
96275057Ssbruno# Pin 2  - SDA
97275057Ssbruno# Pin 3  - usb 
98275057Ssbruno# Pin 4  - 
99275057Ssbruno# Pin 5  - aoss
100275057Ssbruno# Pin 6  - router auto
101275057Ssbruno# Pin 7  - router off
102275057Ssbruno# Pin 8  - movie engine
103275057Ssbruno# Pin 9  - 
104275057Ssbruno# Pin 10 - 
105275057Ssbruno# Pin 11 - reset button
106275057Ssbruno# Pin 12 - CS0
107275057Ssbruno# Pin 13 - CS1
108275057Ssbruno# Pin 14 - 
109275057Ssbruno# Pin 15 - 
110275057Ssbruno# Pin 16 - 
111275057Ssbruno# Pin 17 - 
112275057Ssbruno
113275057Ssbruno# Don't flip on anything that isn't already enabled.
114275057Ssbruno# Force on CS lines for flash devices, apparently this isn't done
115275057Ssbruno# by uboot in normal booting.  No idea why. 
116275057Ssbrunohint.gpio.0.function_set=0x00003004
117275057Ssbrunohint.gpio.0.function_clear=0x00000000
118275057Ssbruno
119275057Ssbruno# These are the GPIO LEDs and buttons which can be software controlled.
120275057Ssbrunohint.gpio.0.pinmask=0x0001
121275057Ssbruno
122275057Ssbrunohint.gpio.0.pinon=0x00000004
123275057Ssbruno
124275057Ssbrunohint.gpioiic.0.at="gpiobus0"
125275057Ssbruno#hint.gpioiic.0.pins=0x0003
126275057Ssbrunohint.gpioiic.0.sda=0
127275057Ssbrunohint.gpioiic.0.scl=1
128275057Ssbruno
129275057Ssbruno# LEDs are configured separately and driven by the LED device
130275057Ssbrunohint.gpioled.0.at="gpiobus0"
131275057Ssbrunohint.gpioled.0.name="red-diag"
132275057Ssbrunohint.gpioled.0.pins=0x0001
133