#
303975 |
|
11-Aug-2016 |
gjb |
Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, and rename it to RC1.
Update __FreeBSD_version.
Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and the dvd1.iso packages population.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
302408 |
|
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
290910 |
|
16-Nov-2015 |
adrian |
Add initial support for the QCA953x ("Honeybee") from Qualcomm Atheros.
The QCA953x SoC is an integrated 2x2 2GHz 11n + MIPS24k core, with a 5 port FE switch, gige WAN port, and all the same stuff you'd find on its predecessor - the AR9331.
However, buried deep in here somewhere is also a PCIe EP/RC for various applications and some other weird bits I don't yet know about.
This is enough to get the reference board up and booting. I haven't yet had it pass lots of packets - I need to finalise the ethernet switch bits and the GMAC configuration (ie, how the ethernet ports and switch are wired up) and I'll bring that in when I commit the base configuration files to use the thing.
The wifi stuff will come much later. I have to port that support from Linux ath9k and extend our vendor HAL to support it.
The reference board (AP143) comes with 32MB RAM and 4MB flash, so in order to use it I need to get USB working fully so I can run root from there.
Thankyou to Qualcomm Atheros for access to the reference design board.
Details:
* Add register definitions from openwrt; * It looks like a QCA955x but shrunk down to a QCA933x footprint, so use the QCA955x bits and fix up the clock detection code to do the QCA953x bits (they're very subtly different); * Teach GPIO about it; * Teach EHCI about it; * Teach if_arge about it; * Teach the CPU detection code about it.
Tested:
* AP143, QCA9533v2 SoC
Obtained from: Linux, Linux OpenWRT
|
#
290338 |
|
03-Nov-2015 |
adrian |
Remove this; it's also in sys/conf/files.mips.
|
#
283095 |
|
19-May-2015 |
adrian |
Add initial support for the QCA955x PCIe host controller.
The QCA955x looks a lot like the AR724x PCIe controller, except it supports two root complexes. Unfortunately I only have one, so although this code has started down the path of supporting more than one, it's definitely not yet ready.
Tested:
* AP135 board (QCA9558 SoC), with the 11ac NIC swapped for an AR9380 PCIe NIC.
Notes:
* Yes, this driver isn't very pretty. I decided to commit what I have versus holding onto something that isn't yet finished. It is enough to bring up the above NIC and interrupt routing works, so it's a good start.
* However, yes, the DDR flush routine hooks need to be fixed up. I don't think I'm firing the right one at the moment.
|
#
280123 |
|
15-Mar-2015 |
adrian |
Start fleshing out some MAC address helper functions.
A lot of these embedded boards don't have a unique MAC address per device stored somewhere unique - sometimes they'll have one MAC for both arge NICs; someties they'll have one MAC for both arge NICs /and/ the ath NICs. In these instances, we need to derive device specific MAC addresses from the base MAC address.
These functions will be used by some follow-up code that'll slot into if_arge and if_ath.
|
#
276741 |
|
06-Jan-2015 |
adrian |
Make the apb.c code optional behind ar71xx_apb rather than standard.
The QCA955x has more mux interrupts going on - and the AR934x actually does, but I cheated and assigned wlan and pcie to the same interrupt line. They are, there's just a status register mux that I should've been using.
Luckily this isn't too bad a change in itself - almost all of the Atheros MIPS configurations use a _BASE file to inherit from. Except PB92, which I should really fix up at some point.
The AR934x will use the legacy apb for now until I write its replacement.
The QCA955x SoC I'm doing bring-up on will have a separate qca955x_apb.c implementation that includes hooking into IP2/IP3 and doing further interrupt demuxing as appropriate.
|
#
276685 |
|
05-Jan-2015 |
adrian |
Add initial Qualcomm Atheros QCA955x SoC support.
This adds the initial frequency poking and configures up enough for it to boot and spit out data over the console.
There's still a whole bunch of work to do in the reset path and devices to support this thing, but hey, it's alive!
ath> go 0x80050100 ## Starting application at 0x80050100 ... CPU platform: Atheros AR9558 rev 0 CPU Frequency=720 MHz CPU DDR Frequency=600 MHz CPU AHB Frequency=200 MHz platform frequency: 720 MHz CPU reference clock: 0 MHz CPU MDIO clock: 40 MHz
Done at: hackathon Obtained from: Linux OpenWRT, Qualcomm Atheros
|
#
253511 |
|
21-Jul-2013 |
adrian |
Implement some initial AR934x support routines.
This code reads the PLL configuration registers and correctly programs things so the UART and such can come up.
There's MIPS74k platform issues that need fixing; but this at least brings things up enough to echo stuff out the serial port and allow for interactive debugging with ddb.
Tested:
* AR71xx SoCs * AR933x SoC * AR9344 board (DB120)
Obtained from: Qualcomm Atheros; Linux/OpenWRT
|
#
248844 |
|
28-Mar-2013 |
adrian |
Tie in the AR933x support into -HEAD.
|
#
243179 |
|
17-Nov-2012 |
adrian |
Make MIPS24k PMC optional on "hwpmc_mips24k."
Requested by: juli
|
#
243177 |
|
17-Nov-2012 |
adrian |
Migrate the AR71xx UART (an 8250 derivative) to hide behind uart_ar71xx.
The AR9330/AR9331 UART is a totally different thing, so having it included with 'uart' is not going to work out.
|
#
234485 |
|
20-Apr-2012 |
adrian |
Introduce the matching PCI ath(4) fixup code from ar71xx_pci into ar724x_pci.c.
* Move out the code which populates the firmware into ar71xx_fixup.c * Shuffle around the ar724x fixup code to match what the ar71xx fixup code does.
I've validated this on an AR7240 with AR9285 on-board NIC. It doesn't yet load, as the AR9285 EEPROM code needs to be made "flash aware."
TODO:
* Validate that I haven't broken AR71xx * Test AR9285/AR9287 onboard NICs, complete with EEPROM code changes * Port over the needed BAR hacks for AR7240, AR7241 and AR7242 from Linux OpenWRT. The current WAR has only been tested on the AR7240 and I'm not sure the way the BAR register is treated is "right". The "fixup" method here is right when setting the BAR for local access - ie, the BAR address is either 0xffff (AR7240) or 0x1000ffff (AR7241/AR7242), but the ath9k-fixup.c code (Linux OpenWRT) does this when setting the initial "fixup" BAR. It then restores the original BAR. I'll have to read the ar724x PCI bus glue to see what other special cases await.
|
#
233319 |
|
22-Mar-2012 |
gonzo |
Rework MIPS PMC code:
- Replace MIPS24K-specific code with more generic framework that will make adding new CPU support easier - Add MIPS24K support for new framework - Limit backtrace depth to 1 for stability reasons and add option HWPMC_MIPS_BACKTRACE to override this limitation
|
#
221254 |
|
30-Apr-2011 |
adrian |
Add some initial PCIe bridge support for the AR724x chipsets.
This is reported to work on the AR7240 based Ubiquiti Rocket M5 but I haven't tested it on that hardware. I also don't yet have it fully working on the AR7242 based development board here; probe/attach functions but the register space resource looks like the endian-ness is wrong (0x10000000 instead of 0x00001000).o
Further digging will be required.
Submitted by: Luiz Otavio O Souza
|
#
221252 |
|
30-Apr-2011 |
adrian |
In preparation for the AR724x PCIe bus code, make the AR71xx PCI bus glue require 'device ar71xx_pci' .
Users of the AR71xx board configs will now require this for functioning PCI:
device pci device ar71xx_pci
|
#
213239 |
|
28-Sep-2010 |
gonzo |
Add AR71XX GPIO bus driver.
|
#
211503 |
|
19-Aug-2010 |
adrian |
Add some initial AR724X chipset support.
This is untested but should at least allow an AR724X to boot.
The current code is lacking the detail needed to expose the PCIe bus. It is also lacking any NIC, PLL or flush/WB code.
|
#
211502 |
|
19-Aug-2010 |
adrian |
Add initial Atheros AR91XX support.
This works well enough to bring a system up to single-user mode using an MDROOT.
Known Issues:
* The EHCI USB doesn't currently work and will panic the kernel during attach. * The onboard ethernet won't work until the PLL routines have been fleshed out and shoe-horned into if_arge. * The WMAC device glue (and quite likely the if_ath support) hasn't yet been implemented.
|
#
211476 |
|
19-Aug-2010 |
adrian |
Preparation work for supporting the AR91xx and AR724x.
* Implement a SoC probe function, from Linux, which determines the SoC family, type and revision. This only probes the AR71xx series SoC and (currently) panics on others.
* Migrate some of the AR71XX specific hardware init (USB device, determining system frequencies) into using the cpuops introduced in an earlier commit. Other SoC specific hardware stuff (per-device flush/WB, GPIO pin wiring, Ethernet PLL setup, other things I've likely missed) will be introduced in subsequent commits.
Reviewed by: imp@ Obtained from: (partially) Linux
|
#
202839 |
|
22-Jan-2010 |
gonzo |
- Add driver for PCF2123, SPI real time clock/calendar
|
#
202175 |
|
12-Jan-2010 |
imp |
Set the svn:eol-style = native and svn:mime-type = text/plain properties on all files in this tree.
Submitted by: rpaulo@
|
#
202173 |
|
12-Jan-2010 |
imp |
Place proper svn:keywords tag on all these files. They were created somehow without them on projects/mips, and that mistake was propigated over to head.
Submitted by: rpaulo@
|
#
201906 |
|
09-Jan-2010 |
imp |
Merge from projects/mips to head by hand:
Merge support files for the Atheros AR71xx (and soon AR9xxx) processors, except files from sys/conf and sys/mips/conf. This work was done primarily by Olecksandr Tymoshenko and works on the RouterStation and RouterStation PRO. Other AR71xx-based boards have been reported as working as well (RouterBoard, for example).
|
#
198669 |
|
30-Oct-2009 |
rrs |
With this commit our friend RMI will now compile. I have not tested it and the chances of it running yet are about ZERO.. but it will now compile. The hard part now begins, making it run ;-)
|
#
198154 |
|
15-Oct-2009 |
rrs |
Does 4 things: 1) Adds future RMI directories 2) Places intr_machdep.c in specfic files.arch pointing to the generic intr_machdep.c. This allows us to have an architecture dependant intr_machdep.c (which we will need for RMI) in the machine specific directory 3) removes intr_machdep.c from files.mips 4) Adds some TARGET_XLR_XLS ifdef's for the machine specific intra_machdep.h. We may need to look at finding a better place to put this. But first I want to get this thing compiling.
|
#
195514 |
|
09-Jul-2009 |
gonzo |
- Add AR71XX watchdog timer driver
|
#
192357 |
|
18-May-2009 |
gonzo |
- Add SPI bus driver for ar71xx SoC
|
#
192161 |
|
15-May-2009 |
gonzo |
- Add pci bus space that translates byte order to little endian, may be it will be merged with bus_space_reversed later - Handle memory resources close to bus in order to control bus_space_tag
|
#
191290 |
|
19-Apr-2009 |
gonzo |
- Add EHCI controller driver for AR71XX-based boards.
|
#
191289 |
|
19-Apr-2009 |
gonzo |
- Handle byte-order issue for non-word accesses to memory mapped registers with ar71xx_bus_space_reversed. Note, that byte order of values is handled by drivers. bus_spaces fixes only position of register in word. - Replace .hints hack for AR71XX UART with ar71xx_bus_space_reversed.
|
#
191079 |
|
14-Apr-2009 |
gonzo |
- Revert changes accidentally killed by merge operation
|
#
188884 |
|
21-Feb-2009 |
gonzo |
- Add integrated OHCI controller driver, just a wrapper around generic ohci driver
|
#
188809 |
|
19-Feb-2009 |
gonzo |
- Add if_arge to build
|
#
187706 |
|
26-Jan-2009 |
gonzo |
- Add ar71xx PCI bridge implementation and link it to the build
|
#
187517 |
|
21-Jan-2009 |
gonzo |
- Add apb device. apb is bridge that connects UART, GPIO, I2S and PCM to main bus - Connect apb and uart_bus to build
|
#
187456 |
|
20-Jan-2009 |
gonzo |
- Use more generic name for atheros-based devices subdirectory. Keep old naming scheme for files until we'll figure out common parts.
Suggested by: imp@
|
#
187423 |
|
19-Jan-2009 |
gonzo |
- First bits of Atheros' AR71XX port. Only UART supported ATM.
|