mirror of
https://github.com/armbian/build.git
synced 2026-01-06 09:58:46 -08:00
Changing U-boot to mainline, adding patches for dev (4.14.y). It boots but virtually nothing works except network ... moving Udoo Neo under deprecated. Only one sample exists and little to no users around.
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
# Freescale iMx dual/quad core Wifi
|
||||
BOARD_NAME="Udoo"
|
||||
BOARDFAMILY="udoo"
|
||||
BOOTCONFIG="udoo_qdl_config"
|
||||
MODULES="bonding"
|
||||
BOOTCONFIG="udoo_defconfig"
|
||||
MODULES=""
|
||||
MODULES_NEXT=""
|
||||
#
|
||||
KERNEL_TARGET="default,next,dev"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,9 @@ UBOOT_USE_GCC='> 5.0'
|
||||
|
||||
case $BOARD in
|
||||
udoo)
|
||||
BOOTBRANCH='branch:2015.10.fslc-qdl'
|
||||
BOOTSOURCE=$MAINLINE_UBOOT_SOURCE
|
||||
BOOTDIR=$MAINLINE_UBOOT_DIR
|
||||
BOOTBRANCH='tag:v2017.11'
|
||||
SERIALCON=ttymxc1
|
||||
;;
|
||||
|
||||
@@ -31,13 +33,12 @@ case $BRANCH in
|
||||
KERNELSOURCE='https://github.com/patrykk/linux-udoo'
|
||||
KERNELBRANCH='branch:4.4-5.0.11.p7.3'
|
||||
KERNELDIR='linux-udoo-next'
|
||||
|
||||
KERNEL_USE_GCC='> 6.0'
|
||||
;;
|
||||
|
||||
dev)
|
||||
KERNELSOURCE=$MAINLINE_KERNEL_SOURCE
|
||||
KERNELBRANCH='branch:master'
|
||||
KERNELBRANCH='branch:linux-4.14.y'
|
||||
KERNELDIR=$MAINLINE_KERNEL_DIR
|
||||
|
||||
KERNEL_USE_GCC='> 7.0'
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
From 07330d520c6009c86e650a58a0ca5e76fcb0b49d Mon Sep 17 00:00:00 2001
|
||||
From: Peter Chen <peter.chen@nxp.com>
|
||||
Date: Thu, 18 May 2017 08:48:57 +0800
|
||||
Subject: [PATCH 1/7] binding-doc: power: pwrseq-generic: add binding doc for
|
||||
generic power sequence library
|
||||
|
||||
Add binding doc for generic power sequence library.
|
||||
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
|
||||
Acked-by: Rob Herring <robh@kernel.org>
|
||||
---
|
||||
.../bindings/power/pwrseq/pwrseq-generic.txt | 48 ++++++++++++++++++++++
|
||||
1 file changed, 48 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/power/pwrseq/pwrseq-generic.txt
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/power/pwrseq/pwrseq-generic.txt b/Documentation/devicetree/bindings/power/pwrseq/pwrseq-generic.txt
|
||||
new file mode 100644
|
||||
index 000000000000..ebf0d477b688
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/power/pwrseq/pwrseq-generic.txt
|
||||
@@ -0,0 +1,48 @@
|
||||
+The generic power sequence library
|
||||
+
|
||||
+Some hard-wired devices (eg USB/MMC) need to do power sequence before
|
||||
+the device can be enumerated on the bus, the typical power sequence
|
||||
+like: enable USB PHY clock, toggle reset pin, etc. But current
|
||||
+Linux device driver lacks of such code to do it, it may cause some
|
||||
+hard-wired devices works abnormal or can't be recognized by
|
||||
+controller at all. The power sequence will be done before this device
|
||||
+can be found at the bus.
|
||||
+
|
||||
+The power sequence properties is under the device node.
|
||||
+
|
||||
+Optional properties:
|
||||
+- clocks: the input clocks for device.
|
||||
+- reset-gpios: Should specify the GPIO for reset.
|
||||
+- reset-duration-us: the duration in microsecond for assert reset signal.
|
||||
+
|
||||
+Below is the example of USB power sequence properties on USB device
|
||||
+nodes which have two level USB hubs.
|
||||
+
|
||||
+&usbotg1 {
|
||||
+ vbus-supply = <®_usb_otg1_vbus>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pinctrl_usb_otg1_id>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ genesys: hub@1 {
|
||||
+ compatible = "usb5e3,608";
|
||||
+ reg = <1>;
|
||||
+
|
||||
+ clocks = <&clks IMX6SX_CLK_CKO>;
|
||||
+ reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>; /* hub reset pin */
|
||||
+ reset-duration-us = <10>;
|
||||
+
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ asix: ethernet@1 {
|
||||
+ compatible = "usbb95,1708";
|
||||
+ reg = <1>;
|
||||
+
|
||||
+ clocks = <&clks IMX6SX_CLK_IPG>;
|
||||
+ reset-gpios = <&gpio4 6 GPIO_ACTIVE_LOW>; /* ethernet_rst */
|
||||
+ reset-duration-us = <15>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.11.0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,45 @@
|
||||
From 69de844947fcdd25099ffb0f780ba4e47bdca1f9 Mon Sep 17 00:00:00 2001
|
||||
From: Steve Arnold <nerdboy@gentoo.org>
|
||||
Date: Sun, 10 Dec 2017 12:31:10 -0800
|
||||
Subject: [PATCH] ARM: DTS: imx6qdl: udoo: enable uart4 serial interface for
|
||||
sam3x
|
||||
|
||||
Signed-off-by: Steve Arnold <nerdboy@gentoo.org>
|
||||
---
|
||||
arch/arm/boot/dts/imx6qdl-udoo.dtsi | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
index c96c91d83678..e28f90005130 100644
|
||||
--- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
+++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
@@ -186,6 +186,13 @@
|
||||
>;
|
||||
};
|
||||
|
||||
+ pinctrl_uart4: uart4grp {
|
||||
+ fsl,pins = <
|
||||
+ MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
|
||||
+ MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
|
||||
+ >;
|
||||
+ };
|
||||
+
|
||||
pinctrl_usbh: usbhgrp {
|
||||
fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000
|
||||
@@ -256,6 +263,12 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&uart4 { /* sam3x port */
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pinctrl_uart4>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&usbh1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh>;
|
||||
--
|
||||
2.15.0
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
From 181913eae18c7edb10f3337eab6800fad9c2ac3c Mon Sep 17 00:00:00 2001
|
||||
From: Peter Chen <peter.chen@nxp.com>
|
||||
Date: Thu, 18 May 2017 08:48:59 +0800
|
||||
Subject: [PATCH 3/7] binding-doc: usb: usb-device: add optional properties for
|
||||
power sequence
|
||||
|
||||
Add optional properties for power sequence.
|
||||
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
Acked-by: Rob Herring <robh@kernel.org>
|
||||
---
|
||||
Documentation/devicetree/bindings/usb/usb-device.txt | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/usb/usb-device.txt b/Documentation/devicetree/bindings/usb/usb-device.txt
|
||||
index 1c35e7b665e1..3661dd261a39 100644
|
||||
--- a/Documentation/devicetree/bindings/usb/usb-device.txt
|
||||
+++ b/Documentation/devicetree/bindings/usb/usb-device.txt
|
||||
@@ -13,6 +13,10 @@ Required properties:
|
||||
- reg: the port number which this device is connecting to, the range
|
||||
is 1-31.
|
||||
|
||||
+Optional properties:
|
||||
+power sequence properties, see
|
||||
+Documentation/devicetree/bindings/power/pwrseq/pwrseq-generic.txt for detail
|
||||
+
|
||||
Example:
|
||||
|
||||
&usb1 {
|
||||
@@ -21,8 +25,12 @@ Example:
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
- hub: genesys@1 {
|
||||
+ genesys: hub@1 {
|
||||
compatible = "usb5e3,608";
|
||||
reg = <1>;
|
||||
+
|
||||
+ clocks = <&clks IMX6SX_CLK_CKO>;
|
||||
+ reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>; /* hub reset pin */
|
||||
+ reset-duration-us = <10>;
|
||||
};
|
||||
}
|
||||
--
|
||||
2.11.0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,161 @@
|
||||
From 4cd5f10e91fcb8e5cfb502cf488e1fbe8d46b6be Mon Sep 17 00:00:00 2001
|
||||
From: Peter Chen <peter.chen@nxp.com>
|
||||
Date: Thu, 18 May 2017 08:49:00 +0800
|
||||
Subject: [PATCH 4/7] usb: core: add power sequence handling for USB devices
|
||||
|
||||
Some hard-wired USB devices need to do power sequence to let the
|
||||
device work normally, the typical power sequence like: enable USB
|
||||
PHY clock, toggle reset pin, etc. But current Linux USB driver
|
||||
lacks of such code to do it, it may cause some hard-wired USB devices
|
||||
works abnormal or can't be recognized by controller at all.
|
||||
|
||||
In this patch, it calls power sequence library APIs to finish
|
||||
the power sequence events. It will do power on sequence at hub's
|
||||
probe for all devices under this hub (includes root hub).
|
||||
At hub_disconnect, it will do power off sequence which is at powered
|
||||
on list.
|
||||
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
Tested-by Joshua Clayton <stillcompiling@gmail.com>
|
||||
Tested-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
|
||||
Reviewed-by: Vaibhav Hiremath <hvaibhav.linux@gmail.com>
|
||||
---
|
||||
drivers/usb/Kconfig | 1 +
|
||||
drivers/usb/core/hub.c | 49 +++++++++++++++++++++++++++++++++++++++++++++----
|
||||
drivers/usb/core/hub.h | 1 +
|
||||
3 files changed, 47 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
|
||||
index 939a63bca82f..b6f626e6fc2b 100644
|
||||
--- a/drivers/usb/Kconfig
|
||||
+++ b/drivers/usb/Kconfig
|
||||
@@ -39,6 +39,7 @@ config USB
|
||||
tristate "Support for Host-side USB"
|
||||
depends on USB_ARCH_HAS_HCD
|
||||
select USB_COMMON
|
||||
+ select POWER_SEQUENCE
|
||||
select NLS # for UTF-8 strings
|
||||
---help---
|
||||
Universal Serial Bus (USB) is a specification for a serial bus
|
||||
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
|
||||
index 9dca59ef18b3..7a672962b598 100644
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/random.h>
|
||||
#include <linux/pm_qos.h>
|
||||
+#include <linux/power/pwrseq.h>
|
||||
|
||||
#include <linux/uaccess.h>
|
||||
#include <asm/byteorder.h>
|
||||
@@ -1619,6 +1620,7 @@ static void hub_disconnect(struct usb_interface *intf)
|
||||
hub->error = 0;
|
||||
hub_quiesce(hub, HUB_DISCONNECT);
|
||||
|
||||
+ of_pwrseq_off_list(&hub->pwrseq_on_list);
|
||||
mutex_lock(&usb_port_peer_mutex);
|
||||
|
||||
/* Avoid races with recursively_mark_NOTATTACHED() */
|
||||
@@ -1682,11 +1682,41 @@ static bool hub_descriptor_is_sane(struct usb_host_interface *desc)
|
||||
return true;
|
||||
}
|
||||
|
||||
+#ifdef CONFIG_OF
|
||||
+static int hub_of_pwrseq_on(struct usb_hub *hub)
|
||||
+{
|
||||
+ struct device *parent;
|
||||
+ struct usb_device *hdev = hub->hdev;
|
||||
+ struct device_node *np;
|
||||
+ int ret;
|
||||
+
|
||||
+ if (hdev->parent)
|
||||
+ parent = &hdev->dev;
|
||||
+ else
|
||||
+ parent = bus_to_hcd(hdev->bus)->self.sysdev;
|
||||
+
|
||||
+ for_each_child_of_node(parent->of_node, np) {
|
||||
+ ret = of_pwrseq_on_list(np, &hub->pwrseq_on_list);
|
||||
+ /* Maybe no power sequence library is chosen */
|
||||
+ if (ret && ret != -ENOENT)
|
||||
+ return ret;
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+#else
|
||||
+static int hub_of_pwrseq_on(struct usb_hub *hub)
|
||||
+{
|
||||
+ return 0;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
static int hub_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
||||
{
|
||||
struct usb_host_interface *desc;
|
||||
struct usb_device *hdev;
|
||||
struct usb_hub *hub;
|
||||
+ int ret = -ENODEV;
|
||||
|
||||
desc = intf->cur_altsetting;
|
||||
hdev = interface_to_usbdev(intf);
|
||||
@@ -1756,6 +1788,7 @@ static int hub_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
||||
INIT_DELAYED_WORK(&hub->leds, led_work);
|
||||
INIT_DELAYED_WORK(&hub->init_work, NULL);
|
||||
INIT_WORK(&hub->events, hub_event);
|
||||
+ INIT_LIST_HEAD(&hub->pwrseq_on_list);
|
||||
usb_get_intf(intf);
|
||||
usb_get_dev(hdev);
|
||||
|
||||
@@ -1792,10 +1822,13 @@ static int hub_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
||||
hub->quirk_check_port_auto_suspend = 1;
|
||||
|
||||
if (hub_configure(hub, &desc->endpoint[0].desc) >= 0)
|
||||
- return 0;
|
||||
+ ret = hub_of_pwrseq_on(hub);
|
||||
+ if (!ret){
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
hub_disconnect(intf);
|
||||
- return -ENODEV;
|
||||
+ return ret;
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -3593,14 +3629,19 @@ static int hub_suspend(struct usb_interface *intf, pm_message_t msg)
|
||||
|
||||
/* stop hub_wq and related activity */
|
||||
hub_quiesce(hub, HUB_SUSPEND);
|
||||
- return 0;
|
||||
+ return pwrseq_suspend_list(&hub->pwrseq_on_list);
|
||||
}
|
||||
|
||||
static int hub_resume(struct usb_interface *intf)
|
||||
{
|
||||
struct usb_hub *hub = usb_get_intfdata(intf);
|
||||
+ int ret;
|
||||
|
||||
dev_dbg(&intf->dev, "%s\n", __func__);
|
||||
+ ret = pwrseq_resume_list(&hub->pwrseq_on_list);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
hub_activate(hub, HUB_RESUME);
|
||||
return 0;
|
||||
}
|
||||
diff --git a/drivers/usb/core/hub.h b/drivers/usb/core/hub.h
|
||||
index 34c1a7e22aae..cd86f91e0342 100644
|
||||
--- a/drivers/usb/core/hub.h
|
||||
+++ b/drivers/usb/core/hub.h
|
||||
@@ -78,6 +78,7 @@ struct usb_hub {
|
||||
struct delayed_work init_work;
|
||||
struct work_struct events;
|
||||
struct usb_port **ports;
|
||||
+ struct list_head pwrseq_on_list; /* powered pwrseq node list */
|
||||
};
|
||||
|
||||
/**
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
From d28841c18bbb0384e36ccfdb4df9e10b2c6789ff Mon Sep 17 00:00:00 2001
|
||||
From: Joshua Clayton <stillcompiling@gmail.com>
|
||||
Date: Thu, 18 May 2017 08:49:01 +0800
|
||||
Subject: [PATCH 5/7] ARM: dts: imx6qdl: Enable usb node children with <reg>
|
||||
|
||||
Give usb nodes #address and #size attributes, so that a child node
|
||||
representing a permanently connected device such as an onboard hub may
|
||||
be addressed with a <reg> attribute
|
||||
|
||||
Signed-off-by: Joshua Clayton <stillcompiling@gmail.com>
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
---
|
||||
arch/arm/boot/dts/imx6qdl.dtsi | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
|
||||
index e426faa9c243..8c064cb4e6aa 100644
|
||||
--- a/arch/arm/boot/dts/imx6qdl.dtsi
|
||||
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
|
||||
@@ -945,6 +945,8 @@
|
||||
|
||||
usbh1: usb@02184200 {
|
||||
compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
reg = <0x02184200 0x200>;
|
||||
interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_USBOH3>;
|
||||
@@ -959,6 +961,8 @@
|
||||
|
||||
usbh2: usb@02184400 {
|
||||
compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
reg = <0x02184400 0x200>;
|
||||
interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_USBOH3>;
|
||||
@@ -972,6 +976,8 @@
|
||||
|
||||
usbh3: usb@02184600 {
|
||||
compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
reg = <0x02184600 0x200>;
|
||||
interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6QDL_CLK_USBOH3>;
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
From b089b85cd5ef6359e13c5dd90b95f39638477e39 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Chen <peter.chen@nxp.com>
|
||||
Date: Thu, 18 May 2017 08:49:02 +0800
|
||||
Subject: [PATCH 6/7] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property
|
||||
|
||||
The current dts describes USB HUB's property at USB controller's
|
||||
entry, it is improper. The USB HUB should be the child node
|
||||
under USB controller, and power sequence properties are under
|
||||
it. Besides, using gpio pinctrl setting for USB2415's reset pin.
|
||||
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
Signed-off-by: Joshua Clayton <stillcompiling@gmail.com>
|
||||
Tested-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
|
||||
---
|
||||
arch/arm/boot/dts/imx6qdl-udoo.dtsi | 26 ++++++++++++--------------
|
||||
1 file changed, 12 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
index c96c91d83678..a173de20ee73 100644
|
||||
--- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
+++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
|
||||
@@ -9,6 +9,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
+#include <dt-bindings/gpio/gpio.h>
|
||||
+
|
||||
/ {
|
||||
aliases {
|
||||
backlight = &backlight;
|
||||
@@ -58,17 +60,6 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
- reg_usb_h1_vbus: regulator@0 {
|
||||
- compatible = "regulator-fixed";
|
||||
- reg = <0>;
|
||||
- regulator-name = "usb_h1_vbus";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- enable-active-high;
|
||||
- startup-delay-us = <2>; /* USB2415 requires a POR of 1 us minimum */
|
||||
- gpio = <&gpio7 12 0>;
|
||||
- };
|
||||
-
|
||||
reg_panel: regulator@1 {
|
||||
compatible = "regulator-fixed";
|
||||
reg = <1>;
|
||||
@@ -188,7 +179,7 @@
|
||||
|
||||
pinctrl_usbh: usbhgrp {
|
||||
fsl,pins = <
|
||||
- MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000
|
||||
+ MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0
|
||||
MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0
|
||||
>;
|
||||
};
|
||||
@@ -259,9 +250,16 @@
|
||||
&usbh1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh>;
|
||||
- vbus-supply = <®_usb_h1_vbus>;
|
||||
- clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
status = "okay";
|
||||
+
|
||||
+ usb2415: hub@1 {
|
||||
+ compatible = "usb424,2514";
|
||||
+ reg = <1>;
|
||||
+
|
||||
+ clocks = <&clks IMX6QDL_CLK_CKO>;
|
||||
+ reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
|
||||
+ reset-duration-us = <3000>;
|
||||
+ };
|
||||
};
|
||||
|
||||
&usdhc3 {
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
From 5a4337a51d034235276947faee68c6e01a09daff Mon Sep 17 00:00:00 2001
|
||||
From: Joshua Clayton <stillcompiling@gmail.com>
|
||||
Date: Thu, 18 May 2017 08:49:03 +0800
|
||||
Subject: [PATCH 7/7] ARM: dts: imx6q-evi: Fix onboard hub reset line
|
||||
|
||||
Previously the onboard hub was made to work by treating its
|
||||
reset gpio as a regulator enable.
|
||||
Get rid of that kludge now that pwseq has added reset gpio support
|
||||
Move pin muxing the hub reset pin into the usbh1 group
|
||||
|
||||
Signed-off-by: Joshua Clayton <stillcompiling@gmail.com>
|
||||
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
---
|
||||
arch/arm/boot/dts/imx6q-evi.dts | 25 +++++++------------------
|
||||
1 file changed, 7 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/imx6q-evi.dts b/arch/arm/boot/dts/imx6q-evi.dts
|
||||
index fd2220aa49e2..24fe093a66db 100644
|
||||
--- a/arch/arm/boot/dts/imx6q-evi.dts
|
||||
+++ b/arch/arm/boot/dts/imx6q-evi.dts
|
||||
@@ -54,18 +54,6 @@
|
||||
reg = <0x10000000 0x40000000>;
|
||||
};
|
||||
|
||||
- reg_usbh1_vbus: regulator-usbhubreset {
|
||||
- compatible = "regulator-fixed";
|
||||
- regulator-name = "usbh1_vbus";
|
||||
- regulator-min-microvolt = <5000000>;
|
||||
- regulator-max-microvolt = <5000000>;
|
||||
- enable-active-high;
|
||||
- startup-delay-us = <2>;
|
||||
- pinctrl-names = "default";
|
||||
- pinctrl-0 = <&pinctrl_usbh1_hubreset>;
|
||||
- gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
|
||||
- };
|
||||
-
|
||||
reg_usb_otg_vbus: regulator-usbotgvbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "usb_otg_vbus";
|
||||
@@ -204,12 +192,18 @@
|
||||
};
|
||||
|
||||
&usbh1 {
|
||||
- vbus-supply = <®_usbh1_vbus>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usbh1>;
|
||||
dr_mode = "host";
|
||||
disable-over-current;
|
||||
status = "okay";
|
||||
+
|
||||
+ usb2415host: hub@1 {
|
||||
+ compatible = "usb424,2513";
|
||||
+ reg = <1>;
|
||||
+ reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
|
||||
+ reset-duration-us = <3000>;
|
||||
+ };
|
||||
};
|
||||
|
||||
&usbotg {
|
||||
@@ -465,11 +459,6 @@
|
||||
MX6QDL_PAD_GPIO_3__USB_H1_OC 0x1b0b0
|
||||
/* usbh1_b OC */
|
||||
MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0
|
||||
- >;
|
||||
- };
|
||||
-
|
||||
- pinctrl_usbh1_hubreset: usbh1hubresetgrp {
|
||||
- fsl,pins = <
|
||||
MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0
|
||||
>;
|
||||
};
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
diff --git a/arch/arm64/mm/dma-mapping.c b/arch/arm64/mm/dma-mapping.c
|
||||
index 3216e09..21bce28
|
||||
--- a/arch/arm64/mm/dma-mapping.c
|
||||
+++ b/arch/arm64/mm/dma-mapping.c
|
||||
@@ -44,7 +44,7 @@ static pgprot_t __get_dma_pgprot(unsigned long attrs, pgprot_t prot,
|
||||
|
||||
static struct gen_pool *atomic_pool;
|
||||
|
||||
-#define DEFAULT_DMA_COHERENT_POOL_SIZE SZ_256K
|
||||
+#define DEFAULT_DMA_COHERENT_POOL_SIZE SZ_2M
|
||||
static size_t atomic_pool_size __initdata = DEFAULT_DMA_COHERENT_POOL_SIZE;
|
||||
|
||||
static int __init early_coherent_pool(char *p)
|
||||
15
patch/u-boot/u-boot-udoo/board_udoo/udoo-adjust-env.patch
Normal file
15
patch/u-boot/u-boot-udoo/board_udoo/udoo-adjust-env.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
diff --git a/include/configs/udoo.h b/include/configs/udoo.h
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
index bcce41d..2296f89
|
||||
--- a/include/configs/udoo.h
|
||||
+++ b/include/configs/udoo.h
|
||||
@@ -81,7 +81,7 @@
|
||||
"mmcargs=setenv bootargs console=${console},${baudrate} " \
|
||||
"root=${mmcroot}\0" \
|
||||
"loadbootscript=" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
|
||||
+ "load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script}; || load mmc ${mmcdev}:${mmcpart} ${loadaddr} /boot/${script};\0" \
|
||||
"bootscript=echo Running bootscript from mmc ...; " \
|
||||
"source\0" \
|
||||
"loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
|
||||
@@ -1,28 +0,0 @@
|
||||
diff --git a/include/configs/udoo_qdl.h b/include/configs/udoo_qdl.h
|
||||
--- a/include/configs/udoo_qdl.h
|
||||
+++ b/include/configs/udoo_qdl.h
|
||||
@@ -86,7 +86,11 @@
|
||||
#define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
- "script=uEnv.txt\0" \
|
||||
+ "script=boot.scr\0" \
|
||||
+ "boot_prefixes=/ /boot/\0" \
|
||||
+ "boot_a_script=ext2load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${prefix}${script} || fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${prefix}${script} \0" \
|
||||
+ "scan_dev_for_boot=echo Scanning mmc ; for prefix in ${boot_prefixes}; do run scan_dev_for_scripts; done\0" \
|
||||
+ "scan_dev_for_scripts=if test -e ${mmcdev}:${mmcpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; else echo Checking here ${prefix} ... not found; fi;\0" \
|
||||
"image=zImage\0" \
|
||||
"console=ttymxc1\0" \
|
||||
"splashpos=m,m\0" \
|
||||
@@ -116,9 +120,9 @@
|
||||
"mmcargs=setenv bootargs console=${console},${baudrate} ${video} ${memory} " \
|
||||
"root=${mmcroot}\0" \
|
||||
"loadbootscript=" \
|
||||
- "fatload " UBOOT_DEVICE " ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
|
||||
+ "run scan_dev_for_boot;\0" \
|
||||
"bootscript=echo Running bootscript from mmc ...; " \
|
||||
- "env import -t ${loadaddr} ${filesize};\0" \
|
||||
+ "source\0" \
|
||||
"loadimage=fatload " UBOOT_DEVICE " ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
|
||||
"loadfdt=fatload " UBOOT_DEVICE " ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
|
||||
"mmcboot=echo Booting from mmc ...; " \
|
||||
Reference in New Issue
Block a user