freebsd-dev/sys/arm/allwinner
Luiz Otavio O Souza 7ec8c789c3 Add AHCI attachment code for Allwinner A10/A20 SoCs.
The Allwinner SoC has an AHCI device on its internal main bus rather
than the PCI bus.  This SoC is somewhat underdocumented, and its SATA
controller is no exception.  The methods to support this chip were
harvested from the Linux Allwinner SDK, and then constants invented to
describe what's going on based on low-level constants contained in the
SATA standard and guess work.

This SoC requires a specific AHCI channel setup in order to start the
operations on the channel properly.

Clock setup and AHCI channel setup idea came from NetBSD.

Tested on Cubieboard 2 and Banana pi (and attachment on Cubieboard by
Pratik Singhal).

Differential Revision:	https://reviews.freebsd.org/D737
Submitted by:	imp
Reviewed by:	imp, ganbold, mav, andrew
2015-07-03 14:11:01 +00:00
..
a20 Add the gic to files.arm under "device gic" and use it with the 2015-05-10 09:33:03 +00:00
a10_ahci.c Add AHCI attachment code for Allwinner A10/A20 SoCs. 2015-07-03 14:11:01 +00:00
a10_clk.c Add AHCI attachment code for Allwinner A10/A20 SoCs. 2015-07-03 14:11:01 +00:00
a10_clk.h Add AHCI attachment code for Allwinner A10/A20 SoCs. 2015-07-03 14:11:01 +00:00
a10_common.c Stop using machine/fdt.h in the arm kernel code when we don't need it. 2015-04-04 21:34:26 +00:00
a10_ehci.c Add 64-bit DMA support in the XHCI controller driver. 2015-01-05 20:22:18 +00:00
a10_gpio.c Stop using machine/fdt.h in the arm kernel code when we don't need it. 2015-04-04 21:34:26 +00:00
a10_gpio.h Switch to my freebsd.org emal address in copyright. 2014-03-25 08:31:47 +00:00
a10_machdep.c Add the start of the ARM platform code. This is based on the PowerPC 2014-05-17 11:27:36 +00:00
a10_mmc.c Add DMA support for Allwinner MMC controller. 2015-07-01 23:27:01 +00:00
a10_mmc.h Add DMA support for Allwinner MMC controller. 2015-07-01 23:27:01 +00:00
a10_sramc.c Stop using machine/fdt.h in the arm kernel code when we don't need it. 2015-04-04 21:34:26 +00:00
a10_sramc.h Switch to my freebsd.org emal address in copyright. 2014-03-25 08:31:47 +00:00
a10_wdog.c Stop using machine/fdt.h in the arm kernel code when we don't need it. 2015-04-04 21:34:26 +00:00
a10_wdog.h Add watchdog driver for Allwinner A10 2013-02-11 11:31:23 +00:00
aintc.c Switch to my freebsd.org emal address in copyright. 2014-03-25 08:31:47 +00:00
console.c Switch to my freebsd.org emal address in copyright. 2014-03-25 08:31:47 +00:00
files.a10 Move the items common to all SoCs to a single file. 2015-04-18 03:07:01 +00:00
files.allwinner Add AHCI attachment code for Allwinner A10/A20 SoCs. 2015-07-03 14:11:01 +00:00
if_emac.c Simplify the receiver code a bit. 2015-04-18 00:35:00 +00:00
if_emacreg.h Simplify the receiver code a bit. 2015-04-18 00:35:00 +00:00
std.a10 Clean up the style to use "options<space><tab>". 2015-05-10 08:48:00 +00:00
timer.c Stop using machine/fdt.h in the arm kernel code when we don't need it. 2015-04-04 21:34:26 +00:00