The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/mips/conf/DIR-655A1.hints

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 
    2 # I'm assuming this is an AP135-020. The AP136-010 in openwrt has
    3 # the ethernet ports wired up to the switch in the reverse way.
    4 
    5 # $FreeBSD: releng/11.0/sys/mips/conf/DIR-655A1.hints 281119 2015-04-05 20:56:51Z adrian $
    6 
    7 # QCA955X_ETH_CFG_RGMII_EN (1 << 0)
    8 hint.qca955x_gmac.0.gmac_cfg=0x1
    9 
   10 # Use this to derive ath0 from arge0 MAC address.
   11 # 0x1ffe0004 is the arge0 MAC; but it's also the "unit MAC".
   12 # So make that the ath0 MAC, and make arge0 -1 from that.
   13 # ath0: offset 0
   14 # arge0: offset -1
   15 # arge1: use +1 from the arge0 MAC, even though
   16 # there's a secondary MAC address configured in EEPROM
   17 # at 0x1ffe0018.
   18 hint.ar71xx.0.eeprom_mac_addr=0x1ffe0004
   19 hint.ar71xx.0.eeprom_mac_isascii=1
   20 
   21 hint.ar71xx_mac_map.0.devid=ath
   22 hint.ar71xx_mac_map.0.unitid=0
   23 hint.ar71xx_mac_map.0.offset=0
   24 hint.ar71xx_mac_map.0.is_local=0
   25 
   26 hint.ar71xx_mac_map.1.devid=arge
   27 hint.ar71xx_mac_map.1.unitid=0
   28 hint.ar71xx_mac_map.1.offset=-1
   29 hint.ar71xx_mac_map.1.is_local=0
   30 
   31 hint.ar71xx_mac_map.2.devid=arge
   32 hint.ar71xx_mac_map.2.unitid=1
   33 hint.ar71xx_mac_map.2.offset=1
   34 hint.ar71xx_mac_map.2.is_local=0
   35 
   36 # mdiobus0 on arge0
   37 hint.argemdio.0.at="nexus0"
   38 hint.argemdio.0.maddr=0x19000000
   39 hint.argemdio.0.msize=0x1000
   40 hint.argemdio.0.order=0
   41 
   42 # mdiobus1 on arge1 - required to bring up arge1?
   43 hint.argemdio.1.at="nexus0"
   44 hint.argemdio.1.maddr=0x1a000000
   45 hint.argemdio.1.msize=0x1000
   46 hint.argemdio.1.order=0
   47 
   48 # AR8327 - connected via mdiobus0 on arge0
   49 hint.arswitch.0.at="mdio0"
   50 hint.arswitch.0.is_7240=0       # definitely not the internal switch!
   51 hint.arswitch.0.is_9340=0       # not the internal switch!
   52 hint.arswitch.0.numphys=5       # all ports are PHYs
   53 hint.arswitch.0.phy4cpu=0
   54 hint.arswitch.0.is_rgmii=0      # not needed
   55 hint.arswitch.0.is_gmii=0       # not needed
   56 
   57 # This is where it gets a bit odd. port 0 and port 6 are CPU ports.
   58 # The current code only supports one CPU port.  So hm, what should
   59 # we do to hook PAD6 up to be RGMII but a PHY, not a MAC?
   60 
   61 # The other trick - how do we get arge1 (hooked up to GMAC0) to work?
   62 # That's currently supposed to be hooked up to CPU port 0.
   63 
   64 # Other AR8327 configuration parameters
   65 
   66 # AP136-020 parameters
   67 
   68 # GMAC0 AR8327 -> GMAC1 (arge1) SoC, SGMII
   69 
   70 # AR8327_PAD_MAC_SGMII
   71 hint.arswitch.0.pad.0.mode=3
   72 #hint.arswitch.0.pad.0.rxclk_delay_sel=0
   73 hint.arswitch.0.pad.0.sgmii_delay_en=1
   74 
   75 # GMAC6 AR8327 -> GMAC0 (arge0) SoC, RGMII
   76 
   77 # AR8327_PAD_MAC_RGMII
   78 # XXX I think this hooks it up to the internal MAC6
   79 hint.arswitch.0.pad.6.mode=6
   80 hint.arswitch.0.pad.6.txclk_delay_en=1
   81 hint.arswitch.0.pad.6.rxclk_delay_en=1
   82 # AR8327_CLK_DELAY_SEL1
   83 hint.arswitch.0.pad.6.txclk_delay_sel=1
   84 # AR8327_CLK_DELAY_SEL2
   85 hint.arswitch.0.pad.6.rxclk_delay_sel=2
   86 
   87 # XXX there's no LED management just yet!
   88 hint.arswitch.0.led.ctrl0=0x00000000
   89 hint.arswitch.0.led.ctrl1=0xc737c737
   90 hint.arswitch.0.led.ctrl2=0x00000000
   91 hint.arswitch.0.led.ctrl3=0x00c30c00
   92 hint.arswitch.0.led.open_drain=1
   93 
   94 # force_link=1 is required for the rest of the parameters
   95 # to be configured.
   96 hint.arswitch.0.port.0.force_link=1
   97 hint.arswitch.0.port.0.speed=1000
   98 hint.arswitch.0.port.0.duplex=1
   99 hint.arswitch.0.port.0.txpause=1
  100 hint.arswitch.0.port.0.rxpause=1
  101 
  102 # force_link=1 is required for the rest of the parameters
  103 # to be configured.
  104 hint.arswitch.0.port.6.force_link=1
  105 hint.arswitch.0.port.6.speed=1000
  106 hint.arswitch.0.port.6.duplex=1
  107 hint.arswitch.0.port.6.txpause=1
  108 hint.arswitch.0.port.6.rxpause=1
  109 
  110 # arge0 - hooked up to AR8327 GMAC6, RGMII
  111 # set at 1000/full to the switch.
  112 # so, lock both sides of this connect up to 1000/full;
  113 # if_arge thus wont change the PLL configuration
  114 # upon a link status change.
  115 hint.arge.0.phymask=0x0
  116 hint.arge.0.miimode=3           # RGMII
  117 hint.arge.0.media=1000
  118 hint.arge.0.fduplex=1
  119 hint.arge.0.pll_1000=0x56000000
  120 # hint.arge.0.eeprommac=0x1ffe0004
  121 # hint.arge.0.readascii=1
  122 
  123 # arge1 - lock up to 1000/full
  124 hint.arge.1.phymask=0x0
  125 hint.arge.1.media=1000
  126 hint.arge.1.fduplex=1
  127 hint.arge.1.miimode=5           # SGMII
  128 hint.arge.1.pll_1000=0x03000101
  129 #hint.arge.1.eeprommac=0x1ffe0018
  130 #hint.arge.1.readascii=1
  131 
  132 # ath0: Where the ART is - last 64k in the flash
  133 # Note: ath0 MAC is default (00:11:22:33:44:55) and thus
  134 # requires replacing via the board MAC address map.
  135 hint.ath.0.eepromaddr=0x1fff0000
  136 hint.ath.0.eepromsize=16384
  137 
  138 # 256KiB u-boot
  139 hint.map.0.at="flash/spi0"
  140 hint.map.0.start=0x00000000
  141 hint.map.0.end=0x00040000       # 256k u-boot
  142 hint.map.0.name="u-boot"
  143 hint.map.0.readonly=1
  144 
  145 # kernel
  146 hint.map.1.at="flash/spi0"
  147 hint.map.1.start=0x00040000
  148 hint.map.1.end="search:0x00040000:0x10000:.!/bin/sh"
  149 hint.map.1.name="kernel"
  150 hint.map.1.readonly=1
  151 
  152 # rootfs
  153 hint.map.2.at="flash/spi0"
  154 hint.map.2.start="search:0x00040000:0x10000:.!/bin/sh"
  155 hint.map.2.end=0x007d0000
  156 hint.map.2.name="rootfs"
  157 hint.map.2.readonly=1
  158 
  159 # 64KiB cfg
  160 hint.map.3.at="flash/spi0"
  161 hint.map.3.start=0x007d0000
  162 hint.map.3.end=0x007e0000
  163 hint.map.3.name="cfg"
  164 hint.map.3.readonly=0
  165 
  166 # 8256 KiB mib0
  167 hint.map.4.at="flash/spi0"
  168 hint.map.4.start=0x007e0000
  169 hint.map.4.end=0x00ff0000       # 64k mib0
  170 hint.map.4.name="mib0"
  171 hint.map.4.readonly=1
  172 
  173 # 64KiB ART
  174 # XXX TODO: is this really here?
  175 hint.map.5.at="flash/spi0"
  176 hint.map.5.start=0x00ff0000
  177 hint.map.5.end=0x01000000       # 64k ART
  178 hint.map.5.name="ART"
  179 hint.map.5.readonly=1

Cache object: fe902e39a47c0066081605a13b7e954c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.