1220295Sadrian# 2220295Sadrian# This file adds to the values in AR91XX_BASE.hints. 3220295Sadrian# 4220295Sadrian# $FreeBSD$ 5220295Sadrian 6220295Sadrian# Hard-code the PHY for now, until there's switch phy support. 7234945Sadrian# hint.arge.0.phymask=0x000c 8234945Sadrianhint.arge.0.phymask=0x0000 9220295Sadrianhint.arge.0.media=1000 10220295Sadrianhint.arge.0.fduplex=1 11220295Sadrian# Where is the MAC address stored in flash for this particular unit. 12220295Sadrianhint.arge.0.eeprommac=0x1f01fc00 13220295Sadrian 14220295Sadrian# This isn't used, but configure it anyway. 15220295Sadrian# This should eventually just not be configured, but the if then 16220295Sadrian# needs to be properly disabled or spurious interrupts occur. 17220295Sadrianhint.arge.1.phymask=0x0 18220295Sadrian 19220295Sadrian# Where the ART is 20220295Sadrianhint.ath.0.eepromaddr=0x1fff1000 21227921Sadrian 22227921Sadrian# 23227921Sadrian# Define a slightly custom flash layout. 24227921Sadrian 25227921Sadrian# The default flash layout: 26227921Sadrian# 27227921Sadrian# 128k: uboot 28227921Sadrian# 1024k: kernel 29227921Sadrian# 4096k: rootfs 30227926Sadrian# 2816: unknown 31227926Sadrian# 64k: board config? 32227921Sadrian# 64k: ART 33227921Sadrian# 34227921Sadrian# from printenv: 35227921Sadrian# bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init 36227921Sadrian# mtdparts=ar9100-nor0:128k(u-boot),1024k(kernel),4096k(rootfs),64k(art) 37227921Sadrian 38227921Sadrian# This isn't a lot of space! 39227921Sadrian# So: 40227921Sadrian# 128k: uboot 41227921Sadrian# 2048k: kernel 42227938Sadrian# 5888k: rootfs 43227926Sadrian# 64k: config 44227921Sadrian# 64k: ART 45227921Sadrian 46227921Sadrianhint.map.0.at="flash/spi0" 47227921Sadrianhint.map.0.start=0x00000000 48227921Sadrianhint.map.0.end=0x000200000 49227921Sadrianhint.map.0.name="uboot" 50227921Sadrianhint.map.0.readonly=1 51227921Sadrian 52227921Sadrianhint.map.1.at="flash/spi0" 53227921Sadrianhint.map.1.start=0x00020000 54227921Sadrianhint.map.1.end=0x00220000 55227921Sadrianhint.map.1.name="kernel" 56227921Sadrianhint.map.1.readonly=1 57227921Sadrian 58227921Sadrianhint.map.2.at="flash/spi0" 59227921Sadrianhint.map.2.start=0x00220000 60227938Sadrianhint.map.2.end=0x007e0000 61227921Sadrianhint.map.2.name="rootfs" 62227921Sadrianhint.map.2.readonly=1 63227921Sadrian 64227926Sadrianhint.map.3.at="flash/spi0" 65227938Sadrianhint.map.3.start=0x007e0000 66227938Sadrianhint.map.3.end=0x007f0000 67227926Sadrianhint.map.3.name="cfg" 68227926Sadrianhint.map.3.readonly=0 69227921Sadrian 70227926Sadrian# This is radio calibration section. It is (or should be!) unique 71227926Sadrian# for each board, to take into account thermal and electrical differences 72227926Sadrian# as well as the regulatory compliance data. 73227926Sadrian# 74227938Sadrianhint.map.4.at="flash/spi0" 75227938Sadrianhint.map.4.start=0x007f0000 76227938Sadrianhint.map.4.end=0x00800000 77227938Sadrianhint.map.4.name="art" 78227938Sadrianhint.map.4.readonly=1 79228519Sadrian 80228519Sadrian# GPIO specific configuration block 81228519Sadrian 82228519Sadrian# Don't flip on anything that isn't already enabled. 83228519Sadrian# This includes leaving the SPI CS1/CS2 pins as GPIO pins as they're 84228519Sadrian# not used here. 85235345Sadrianhint.gpio.0.function_set=0x00002000 86228519Sadrianhint.gpio.0.function_clear=0x00000000 87228519Sadrian 88228519Sadrian# These are the GPIO LEDs and buttons which can be software controlled. 89228519Sadrianhint.gpio.0.pinmask=0x001c02ae 90228519Sadrian 91228519Sadrian# pin 1 - USB (LED) 92228519Sadrian# pin 2 - System (LED) 93228519Sadrian# Pin 3 - Reset (input) 94228519Sadrian# Pin 5 - QSS (LED) 95228519Sadrian# Pin 7 - QSS Button (input) 96228519Sadrian# Pin 8 - wired into the chip reset line 97228519Sadrian# Pin 9 - WLAN 98228519Sadrian# Pin 10 - UART TX (not GPIO) 99228519Sadrian# Pin 13 - UART RX (not GPIO) 100228519Sadrian# Pin 18 - RTL8366RB switch data line 101228519Sadrian# Pin 19 - RTL8366RB switch clock line 102228519Sadrian# Pin 20 - "GPIO20" 103228519Sadrian 104228519Sadrian# LEDs are configured separately and driven by the LED device 105235345Sadrian#hint.gpioled.0.at="gpiobus0" 106235345Sadrian#hint.gpioled.0.name="usb" 107235345Sadrian#hint.gpioled.0.pins=0x0002 108228519Sadrian 109228519Sadrianhint.gpioled.1.at="gpiobus0" 110228519Sadrianhint.gpioled.1.name="system" 111228519Sadrianhint.gpioled.1.pins=0x0004 112228519Sadrian 113228519Sadrianhint.gpioled.2.at="gpiobus0" 114228519Sadrianhint.gpioled.2.name="qss" 115228519Sadrianhint.gpioled.2.pins=0x0020 116228519Sadrian 117228519Sadrianhint.gpioled.3.at="gpiobus0" 118228519Sadrianhint.gpioled.3.name="wlan" 119228519Sadrianhint.gpioled.3.pins=0x0200 120235345Sadrian 121235345Sadrian# GPIO I2C bus 122235345Sadrianhint.gpioiic.0.at="gpiobus0" 123235345Sadrianhint.gpioiic.0.pins=0xc0000 124235345Sadrianhint.gpioiic.0.scl=1 125235345Sadrianhint.gpioiic.0.sda=0 126235345Sadrian 127235345Sadrian# I2C bus 128235345Sadrian# Don't be strict about I2C protocol - the relaxed semantics are required 129235345Sadrian# by the realtek switch PHY. 130235345Sadrianhint.iicbus.0.strict=0 131235345Sadrian 132235345Sadrian# Bit bang bus - override default delay 133235345Sadrian#hint.iicbb.0.udelay=3 134