freebsd-skq/sys/arm/conf
zbb 4a3e4c4e49 Add etherswitch support to mge
This commit introduces support for etherswitch devices that utilize SMI as
a way of accessing its registers. SMI register is located in address space
of mge -- access to it was exported through MDIO interface.

Attachment functions were enhanced so as to ensure proper initialisation
in both cases: 1) PHYs attached directly to mge, 2) PHYs attached to
switch device and switch attached to mge. Attachment of etherswitch device
depends on dts entry with compatible="mrvl,sw" property. If none is found,
typical PHY attachment procedure follows.

In case of switch attached, PHYs' status and configuration is accessible
via etherswitchcfg, and ifconfig shows always-up, non-configurable mge
interfaces.

Due to the fact that there may be simultaneous accessess to SMI
registers (e.g. from PHY attached to one of mge instances and switch
to the other), SMI access interlock was added. It is SX lock,
because sleep ability is necessary -- busy-waiting would result
in poor performance due to long delays required by hardware.
Underlying switch driver is obliged to use sleepable locks as well.

Reviewed by:    adrian
Obtained from:  Semihalf
Submitted by:   Bartosz Szczepanek <bsz@semihalf.com>
Differential revision: https://reviews.freebsd.org/D3900
2015-10-25 22:00:56 +00:00
..
A20 Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
ALPINE Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
AML8726 Clean up the Amlogic interrupt controller driver to handle the case where 2015-05-18 11:04:07 +00:00
APALIS-IMX6 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
ARMADAXP Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
ARNDALE Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
ARNDALE-OCTA Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
ATMEL Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
AVILA Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
AVILA.hints
BEAGLEBONE Enable gpiobacklight in BEAGLEBONE config to support LCD capes by 2015-10-18 23:58:05 +00:00
BWCT Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
BWCT.hints
CAMBRIA Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CAMBRIA.hints
CHROMEBOOK Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CHROMEBOOK-PEACH-PIT Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CHROMEBOOK-PEACH-PIT.hints Add support for Chromebook2 -- next-generation 8-core 2014-08-01 06:20:25 +00:00
CHROMEBOOK-SNOW Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CHROMEBOOK-SPRING Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CHROMEBOOK.hints Add support for keyboard used in Samsung Chromebook (ARM machine) 2014-03-30 15:22:36 +00:00
CNS11XXNAS Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
COLIBRI-VF50 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
COSMIC Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
CRB Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
CUBIEBOARD Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
DB-78XXX Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
DB-88F5XXX Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
DB-88F6XXX Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
DEFAULTS Strip arm/conf/DEFAULTS down to just items that are mandatory for running 2014-03-07 21:36:49 +00:00
DIGI-CCWMX53 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
DOCKSTAR Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
DREAMPLUG-1001 Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
EA3250 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
EA3250.hints
EB9200 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
EB9200.hints
EFIKA_MX Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
EP80219 Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
ETHERNUT5 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
ETHERNUT5.hints
EXYNOS5.common Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
EXYNOS5250 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
EXYNOS5420 Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
genboardid.awk
GUMSTIX Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
GUMSTIX-QEMU fix the kernel files to match our standard "option<space><tab>" format 2012-09-16 19:48:48 +00:00
GUMSTIX.hints
HL200 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
HL201 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
HL201.hints
IMX6 Enable ARM_INTRNG on IMX6 platforms, and make the imx_gpio driver an 2015-10-18 19:54:11 +00:00
IMX53 Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
IMX53-QSB Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
IQ31244 Remove compatibility shims for legacy ATA device names. 2015-10-11 13:01:51 +00:00
KB920X Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
KB920X.hints
LN2410SBC Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
mach-types
Makefile Add NOTES and Makefile in order to generate LINT. NOTES contains pretty 2012-11-27 01:17:50 +00:00
NOTES Implement the lockstat provider using SDT(9) instead of the custom provider 2015-07-19 22:14:09 +00:00
NSLU Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
NSLU.hints
ODROIDC1 D2432 (Patch for Amlogic single core PIC) moved the SMP option out 2015-05-20 05:49:52 +00:00
PANDABOARD Enable ARM_INTRNG on the pandaboard platform. 2015-10-18 18:39:16 +00:00
PANDABOARD.hints
QILA9G20 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
QILA9G20.hints
QUARTZ Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
RADXA Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
RADXA-LITE Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
RK3188 Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
RPI2 Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
RPI-B Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
SAM9G20EK Add NFS server to mix (for easier, in-place updates). Move to 2015-05-19 21:16:51 +00:00
SAM9G20EK.hints
SAM9X25EK Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
SAM9X25EK.hints
SAM9260EK Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
SAM9260EK.hints
SHEEVAPLUG Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
SN9G45 Pass over the at91 kernels to reduce the diff between them. 2015-05-09 21:24:55 +00:00
SOCKIT Merge the common parts of the SOCKIT and SOCKIT-BERI kerenel, and mark the 2015-04-03 11:12:59 +00:00
SOCKIT-BERI Merge the common parts of the SOCKIT and SOCKIT-BERI kerenel, and mark the 2015-04-03 11:12:59 +00:00
SOCKIT.common Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
std.arm Create std.arm and std.armv6 config files and include the right one from 2015-05-05 16:09:25 +00:00
std.armv6 Enable KDTRACE_HOOKS by default on all armv6 kernels to get more testing. 2015-08-23 21:10:20 +00:00
TS7800 Add etherswitch support to mge 2015-10-25 22:00:56 +00:00
VERSATILEPB Clean up the ARM kernel configs to use 'include<space><tab>"file"'. 2015-05-07 12:38:23 +00:00
VIRT Add support for getting the memory map from EFI if it has been pased in 2015-05-24 16:11:30 +00:00
VSATV102 D2432 (Patch for Amlogic single core PIC) moved the SMP option out 2015-05-20 05:49:52 +00:00
VYBRID Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00
YYHD18 Add kernel config and dts files for an aml8726-m3 2015-05-24 08:45:19 +00:00
ZEDBOARD Ensure that all arm kernel configs contain ALT_BREAK_TO_DEBUGGER and not 2015-05-25 23:27:13 +00:00