608f583b4a
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
21 lines
654 B
Plaintext
21 lines
654 B
Plaintext
# $FreeBSD$
|
|
kern/kern_clocksource.c standard
|
|
|
|
arm/arm/bus_space_base.c standard
|
|
arm/arm/bus_space_asm_generic.S standard
|
|
arm/arm/bus_space_generic.c standard
|
|
|
|
arm/allwinner/a10_ahci.c optional ahci
|
|
arm/allwinner/a10_clk.c standard
|
|
arm/allwinner/a10_common.c standard
|
|
arm/allwinner/a10_ehci.c optional ehci
|
|
arm/allwinner/a10_gpio.c optional gpio
|
|
arm/allwinner/a10_machdep.c standard
|
|
arm/allwinner/a10_mmc.c optional mmc
|
|
arm/allwinner/a10_sramc.c standard
|
|
arm/allwinner/a10_wdog.c standard
|
|
arm/allwinner/a20/a20_cpu_cfg.c standard
|
|
arm/allwinner/if_emac.c optional emac
|
|
arm/allwinner/timer.c standard
|
|
#arm/allwinner/console.c standard
|