summaryrefslogtreecommitdiff
path: root/target/linux
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/config/Config.in.block4
-rw-r--r--target/linux/config/Config.in.cpu11
-rw-r--r--target/linux/config/Config.in.dma6
-rw-r--r--target/linux/config/Config.in.ethernet4
-rw-r--r--target/linux/config/Config.in.i2c4
-rw-r--r--target/linux/config/Config.in.serial4
-rw-r--r--target/linux/config/Config.in.spi11
-rw-r--r--target/linux/kernel.config1
-rw-r--r--target/linux/patches/4.12.3/regmap-default-on.patch17
-rw-r--r--target/linux/patches/4.12.3/startup.patch34
10 files changed, 93 insertions, 3 deletions
diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block
index 179b59a0a..487cfd206 100644
--- a/target/linux/config/Config.in.block
+++ b/target/linux/config/Config.in.block
@@ -486,8 +486,10 @@ config ADK_KERNEL_MMC_SUNXI
select ADK_KERNEL_MMC_SDHCI_PLTFM
select ADK_KERNEL_MMC_UNSAFE_RESUME
select ADK_KERNEL_LBDAF
- depends on ADK_TARGET_SYSTEM_BANANA_PRO
+ depends on ADK_TARGET_SYSTEM_BANANA_PRO || \
+ ADK_TARGET_SYSTEM_ORANGE_PI0
default y if ADK_TARGET_SYSTEM_BANANA_PRO
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
default n
config ADK_KERNEL_MMC_ATMELMCI
diff --git a/target/linux/config/Config.in.cpu b/target/linux/config/Config.in.cpu
index 43b5d107c..4c77970a7 100644
--- a/target/linux/config/Config.in.cpu
+++ b/target/linux/config/Config.in.cpu
@@ -43,6 +43,17 @@ config ADK_KERNEL_CPU_FREQ_GOV_ONDEMAND
config ADK_KERNEL_CPU_FREQ_GOV_CONSERVATIVE
bool
+config ADK_KERNEL_CPUFREQ_DT_PLATDEV
+ bool
+
+config ADK_KERNEL_CPUFREQ_DT
+ bool "CPU frequency support DT"
+ select ADK_KERNEL_CPU_FREQ
+ select ADK_KERNEL_CPUFREQ_DT_PLATDEV
+ depends on ADK_TARGET_SYSTEM_ORANGE_PI0
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
+ default n
+
config ADK_KERNEL_ARM_IMX6Q_CPUFREQ
bool "CPU frequency support for IMX6 boards"
select ADK_KERNEL_CPU_FREQ
diff --git a/target/linux/config/Config.in.dma b/target/linux/config/Config.in.dma
index d92326c36..c3bb8d67b 100644
--- a/target/linux/config/Config.in.dma
+++ b/target/linux/config/Config.in.dma
@@ -73,3 +73,9 @@ config ADK_KERNEL_IMX_SDMA
default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
default n
+config ADK_KERNEL_DMA_SUN6I
+ bool
+ select ADK_KERNEL_DMADEVICES
+ depends on ADK_TARGET_SYSTEM_ORANGE_PI0
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
+ default n
diff --git a/target/linux/config/Config.in.ethernet b/target/linux/config/Config.in.ethernet
index 6a5991111..97c2aee0b 100644
--- a/target/linux/config/Config.in.ethernet
+++ b/target/linux/config/Config.in.ethernet
@@ -438,8 +438,10 @@ config ADK_KERNEL_STMMAC_ETH
select ADK_KERNEL_NET_VENDOR_STMICRO
select ADK_KERNEL_STMMAC_PLATFORM
select ADK_KERNEL_DWMAC_SUNXI
- depends on ADK_TARGET_SYSTEM_BANANA_PRO
+ depends on ADK_TARGET_SYSTEM_BANANA_PRO \
+ || ADK_TARGET_SYSTEM_ORANGE_PI0
default y if ADK_TARGET_SYSTEM_BANANA_PRO
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
default n
config ADK_KERNEL_ETHOC
diff --git a/target/linux/config/Config.in.i2c b/target/linux/config/Config.in.i2c
index f83d5e34c..9fe68f575 100644
--- a/target/linux/config/Config.in.i2c
+++ b/target/linux/config/Config.in.i2c
@@ -47,8 +47,10 @@ config ADK_KERNEL_I2C_SUNXI
select ADK_KERNEL_REGMAP
select ADK_KERNEL_REGMAP_I2C
select ADK_KERNEL_I2C_CHARDEV
- depends on ADK_TARGET_SYSTEM_BANANA_PRO
+ depends on ADK_TARGET_SYSTEM_BANANA_PRO || \
+ ADK_TARGET_SYSTEM_ORANGE_PI0
default y if ADK_TARGET_SYSTEM_BANANA_PRO
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
default n
help
I2C driver for SUNXI boards.
diff --git a/target/linux/config/Config.in.serial b/target/linux/config/Config.in.serial
index 5b7174a80..f82bf3c6e 100644
--- a/target/linux/config/Config.in.serial
+++ b/target/linux/config/Config.in.serial
@@ -4,6 +4,9 @@
menu "Serial devices support"
depends on ADK_TARGET_WITH_SERIAL || ADK_TARGET_QEMU || ADK_TARGET_VBOX || ADK_TARGET_SIM || ADK_TARGET_GENERIC
+config ADK_KERNEL_SERIAL_8250_DMA
+ bool
+
config ADK_KERNEL_SERIAL_8250_DW
bool
@@ -94,6 +97,7 @@ config ADK_KERNEL_SERIAL_8250
select ADK_KERNEL_SERIAL_8250_PNP if ADK_TARGET_SYSTEM_PCENGINES_APU
select ADK_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
select ADK_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_ORANGE_PI0
+ select ADK_KERNEL_SERIAL_8250_DMA if ADK_TARGET_SYSTEM_ORANGE_PI0
select ADK_KERNEL_SERIAL_8250_CONSOLE
select ADK_KERNEL_SERIAL_8250_INGENIC if ADK_TARGET_SYSTEM_IMGTEC_CI20
depends on ADK_TARGET_SYSTEM_XILINX_KINTEX7 \
diff --git a/target/linux/config/Config.in.spi b/target/linux/config/Config.in.spi
index fe77cc921..de7871d0b 100644
--- a/target/linux/config/Config.in.spi
+++ b/target/linux/config/Config.in.spi
@@ -59,6 +59,17 @@ config ADK_KERNEL_SPI_RB4XX
default y if ADK_TARGET_SYSTEM_MIKROTIK_RB4XX
default n
+config ADK_KERNEL_SPI_SUN6I
+ tristate "SPI driver for SunXi"
+ select ADK_KERNEL_SPI
+ select ADK_KERNEL_SPI_MASTER
+ select ADK_KERNEL_SPI_BITBANG
+ select ADK_KERNEL_REGMAP
+ select ADK_KERNEL_REGMAP_SPI
+ depends on ADK_TARGET_SYSTEM_ORANGE_PI0
+ default y if ADK_TARGET_SYSTEM_ORANGE_PI0
+ default n
+
config ADK_KERNEL_SPI_SPIDEV
tristate "SPI userland driver"
select ADK_KERNEL_SPI
diff --git a/target/linux/kernel.config b/target/linux/kernel.config
index 188bc89d1..7be2f40ed 100644
--- a/target/linux/kernel.config
+++ b/target/linux/kernel.config
@@ -27,3 +27,4 @@ CONFIG_EXPERT=y
CONFIG_MULTIUSER=y
CONFIG_VDSO=y
CONFIG_ADVISE_SYSCALLS=y
+CONFIG_POSIX_TIMERS=y
diff --git a/target/linux/patches/4.12.3/regmap-default-on.patch b/target/linux/patches/4.12.3/regmap-default-on.patch
new file mode 100644
index 000000000..f27eb1d94
--- /dev/null
+++ b/target/linux/patches/4.12.3/regmap-default-on.patch
@@ -0,0 +1,17 @@
+diff -Nur linux-4.12.3.orig/drivers/base/regmap/Kconfig linux-4.12.3/drivers/base/regmap/Kconfig
+--- linux-4.12.3.orig/drivers/base/regmap/Kconfig 2017-07-21 06:59:24.000000000 +0200
++++ linux-4.12.3/drivers/base/regmap/Kconfig 2017-07-25 23:02:14.060483161 +0200
+@@ -3,7 +3,7 @@
+ # subsystems should select the appropriate symbols.
+
+ config REGMAP
+- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_AC97 || REGMAP_MMIO || REGMAP_IRQ)
++ default y
+ select LZO_COMPRESS
+ select LZO_DECOMPRESS
+ select IRQ_DOMAIN if REGMAP_IRQ
+@@ -29,3 +29,4 @@
+
+ config REGMAP_IRQ
+ bool
++ default y
diff --git a/target/linux/patches/4.12.3/startup.patch b/target/linux/patches/4.12.3/startup.patch
new file mode 100644
index 000000000..e54ac19a6
--- /dev/null
+++ b/target/linux/patches/4.12.3/startup.patch
@@ -0,0 +1,34 @@
+diff -Nur linux-4.4.6.orig/init/initramfs.c linux-4.4.6/init/initramfs.c
+--- linux-4.4.6.orig/init/initramfs.c 2016-03-16 16:43:17.000000000 +0100
++++ linux-4.4.6/init/initramfs.c 2016-03-27 14:15:43.931044532 +0200
+@@ -653,6 +653,9 @@
+ */
+ load_default_modules();
+ }
++#ifdef CONFIG_DEVTMPFS_MOUNT
++ devtmpfs_mount("dev");
++#endif
+ return 0;
+ }
+ rootfs_initcall(populate_rootfs);
+diff -Nur linux-4.4.6.orig/init/main.c linux-4.4.6/init/main.c
+--- linux-4.4.6.orig/init/main.c 2016-03-16 16:43:17.000000000 +0100
++++ linux-4.4.6/init/main.c 2016-03-27 14:15:43.935044783 +0200
+@@ -1011,6 +1011,8 @@
+ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
+ pr_err("Warning: unable to open an initial console.\n");
+
++ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n");
++
+ (void) sys_dup(0);
+ (void) sys_dup(0);
+ /*
+@@ -1019,7 +1021,7 @@
+ */
+
+ if (!ramdisk_execute_command)
+- ramdisk_execute_command = "/init";
++ ramdisk_execute_command = "/sbin/init";
+
+ if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) {
+ ramdisk_execute_command = NULL;