summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2014-05-16 23:27:18 +0000
committerian <ian@FreeBSD.org>2014-05-16 23:27:18 +0000
commit8c5245706ff09e86526d43eedb7d37926a47d7d9 (patch)
treebd9466354d65aa13fa69cfdc30267c99cdf40c18 /sys/boot
parent3fad78482e066ba9e0e11e5ab0b65ed6a51f5c2e (diff)
downloadFreeBSD-src-8c5245706ff09e86526d43eedb7d37926a47d7d9.zip
FreeBSD-src-8c5245706ff09e86526d43eedb7d37926a47d7d9.tar.gz
MFC 262695, 262708, 262709, 262710, 262711, 262728, 262870, 262877, 262880,
262885, 262891, 262903, imx6: Add a tunable to set the number of active cores, enable SMP by default. ffec: Fix multicast filtering. Allwinner a10/a20... - Add gpio and clock bits for A10/A20's EMAC ethernet controller driver - EMAC gpio configuration - EMAC clock activation - Add Static Random Access Memory controller driver for A10/A20. A10/A20's SRAM is used by devices, such as CPU, EMAC, for extra fast memory or as cache. - Add EMAC 10/100 Ethernet controller driver for A10/A20. It is available mostly in A10 devices like Hackberry, Marsboard, Mele A1000, A2000, A100 HTPC, cubieboard1 and A20 device like cubieboard2. TX performance can be improved using both channels 0 and 1. RX performance is poor and needs improvement with the assistance of external DMA controller in case there - Add EMAC and SRAM controller entries to FDT. - Add EMAC device to kernel config files and enable EMAC, SRAM drivers. OMAP: When calculating the MPU freq, make sure not to overflow. Vybrid: - Add driver for Port control and interrupts (PORT). - Export panel info to DTS - Reset all the layers before setup first one - Enable display nandfs: Slight code reordering to make error branch last. Add option TMPFS to arm/conf/DEFAULTS, remove it from the few configs that have it individually. Concensus on freebsd-arm@ is that it should be included in all ARM kernels. Fix the arm sys_sigreturn(): its argument is a struct ucontext, not a struct sigframe containing the struct ucontext.
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/fdt/dts/arm/cubieboard.dts14
-rw-r--r--sys/boot/fdt/dts/arm/cubieboard2.dts14
-rw-r--r--sys/boot/fdt/dts/arm/vybrid-quartz.dts45
-rw-r--r--sys/boot/fdt/dts/arm/vybrid.dtsi9
4 files changed, 80 insertions, 2 deletions
diff --git a/sys/boot/fdt/dts/arm/cubieboard.dts b/sys/boot/fdt/dts/arm/cubieboard.dts
index 81bce0c..884dc57 100644
--- a/sys/boot/fdt/dts/arm/cubieboard.dts
+++ b/sys/boot/fdt/dts/arm/cubieboard.dts
@@ -61,6 +61,13 @@
reg = < 0x01c20400 0x400 >;
};
+ sramc@01c00000 {
+ compatible = "allwinner,sun4i-sramc";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ reg = < 0x01c00000 0x1000 >;
+ };
+
ccm@01c20000 {
compatible = "allwinner,sun4i-ccm";
#address-cells = <1>;
@@ -124,6 +131,13 @@
busy-detect = <1>;
broken-txfifo = <1>;
};
+
+ emac@01c0b000 {
+ compatible = "allwinner,sun4i-emac";
+ reg = <0x01c0b000 0x1000>;
+ interrupts = <55>;
+ interrupt-parent = <&AINTC>;
+ };
};
chosen {
diff --git a/sys/boot/fdt/dts/arm/cubieboard2.dts b/sys/boot/fdt/dts/arm/cubieboard2.dts
index 324ca26..1437bfe 100644
--- a/sys/boot/fdt/dts/arm/cubieboard2.dts
+++ b/sys/boot/fdt/dts/arm/cubieboard2.dts
@@ -61,6 +61,13 @@
#interrupt-cells = <1>;
};
+ sramc@01c00000 {
+ compatible = "allwinner,sun4i-sramc";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ reg = < 0x01c00000 0x1000 >;
+ };
+
cpu-cfg@01c25c00 {
compatible = "allwinner,sun7i-cpu-cfg";
#address-cells = <1>;
@@ -130,6 +137,13 @@
busy-detect = <1>;
broken-txfifo = <1>;
};
+
+ emac@01c0b000 {
+ compatible = "allwinner,sun4i-emac";
+ reg = <0x01c0b000 0x1000>;
+ interrupts = <55>;
+ interrupt-parent = <&GIC>;
+ };
};
chosen {
diff --git a/sys/boot/fdt/dts/arm/vybrid-quartz.dts b/sys/boot/fdt/dts/arm/vybrid-quartz.dts
index d978796..48cc1b5 100644
--- a/sys/boot/fdt/dts/arm/vybrid-quartz.dts
+++ b/sys/boot/fdt/dts/arm/vybrid-quartz.dts
@@ -60,6 +60,51 @@
edma1: edma@40098000 {
status = "okay";
};
+
+ dcu0: dcu4@40058000 {
+ status = "okay";
+
+ panel-size = < 800 480 >;
+ panel-hsync = < 40 48 40 >;
+ panel-vsync = < 29 3 13 >;
+ panel-clk-div = < 17 >;
+ panel-backlight-pin = < 25 >;
+
+ iomux_config = < 105 0x1001c4 /* hsync */
+ 106 0x1001c4 /* vsync */
+ 107 0x1001e0 /* pclk */
+ 108 0x1001e0
+ 109 0x1001be /* de */
+ 110 0x1001e0 /* r0 */
+ 111 0x1001e0
+ 112 0x1001e0
+ 113 0x1001e0
+ 114 0x1001e0
+ 115 0x1001e0
+ 116 0x1001e0
+ 117 0x1001e0
+ 118 0x1001e0 /* g0 */
+ 119 0x1001e0
+ 120 0x1001e0
+ 121 0x1001e0
+ 122 0x1001e0
+ 123 0x1001e0
+ 124 0x1001e0
+ 125 0x1001e0
+ 126 0x1001e0 /* b0 */
+ 127 0x1001e0
+ 128 0x1001e0
+ 129 0x1001e0
+ 130 0x1001e0
+ 131 0x1001e0
+ 132 0x1001e0
+ 133 0x1001e0
+ 25 0x0001be >; /* led */
+ };
+
+ tcon0: tcon@4003D000 {
+ status = "okay";
+ };
};
chosen {
diff --git a/sys/boot/fdt/dts/arm/vybrid.dtsi b/sys/boot/fdt/dts/arm/vybrid.dtsi
index 154c1ab..1386c70 100644
--- a/sys/boot/fdt/dts/arm/vybrid.dtsi
+++ b/sys/boot/fdt/dts/arm/vybrid.dtsi
@@ -146,13 +146,18 @@
reg = <0x40048000 0x1000>;
};
+ port@40049000 {
+ compatible = "fsl,mvf600-port";
+ reg = <0x40049000 0x5000>;
+ interrupts = < 139 140 141 142 143 >;
+ interrupt-parent = <&GIC>;
+ };
+
gpio@400FF000 {
compatible = "fsl,mvf600-gpio";
reg = <0x400FF000 0x200>;
#gpio-cells = <3>;
gpio-controller;
- interrupts = < 139 140 141 142 143 >;
- interrupt-parent = <&GIC>;
};
nand@400E0000 {
OpenPOWER on IntegriCloud