From f577cb25c09daad670755b9b46622258cf999421 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 18 Jan 2016 11:40:19 +0000 Subject: lantiq: Add support for linux 4.4 The following patches were dropped because they are already applied upstream: - 0038-MIPS-lantiq-fpi-on-ar9.patch - 0039-MIPS-lantiq-initialize-usb-on-boot.patch - 0042-USB-DWC2-big-endian-support.patch - 0043-gpio-stp-xway-fix-phy-mask.patch All other patches were simply refreshed, except the following: - 0001-MIPS-lantiq-add-pcie-driver.patch Changes to arch/mips/lantiq/xway/sysctrl.c (these changes disabled some PMU gates for the vrx200 / VR9 SoCs) were removed since the upstream kernel disables unused PMU gates automatically (since 95135bfa7ead1becc2879230f72583dde2b71a0c "MIPS: Lantiq: Deactivate most of the devices by default"). - 0025-NET-MIPS-lantiq-adds-xrx200-net.patch Since OpenWrt commit 55ba20afcc2fe785146316e5be2c2473cb329885 drivers should use of_get_mac_address(). of_get_mac_address_mtd is not available for drivers anymore since it's called automatically within of_get_mac_address(). - 0028-NET-lantiq-various-etop-fixes.patch Same changes as in 0025-NET-MIPS-lantiq-adds-xrx200-net.patch While refreshing the kernel configuration SPI support had to be moved to config-4.4 because otherwise M25P80 was disabled. Signed-off-by: Martin Blumenstingl SVN-Revision: 48307 --- .../0040-USB-DWC2-enable-usb-power-gpio.patch | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 target/linux/lantiq/patches-4.4/0040-USB-DWC2-enable-usb-power-gpio.patch (limited to 'target/linux/lantiq/patches-4.4/0040-USB-DWC2-enable-usb-power-gpio.patch') diff --git a/target/linux/lantiq/patches-4.4/0040-USB-DWC2-enable-usb-power-gpio.patch b/target/linux/lantiq/patches-4.4/0040-USB-DWC2-enable-usb-power-gpio.patch new file mode 100644 index 0000000000..5f26784621 --- /dev/null +++ b/target/linux/lantiq/patches-4.4/0040-USB-DWC2-enable-usb-power-gpio.patch @@ -0,0 +1,35 @@ +--- a/drivers/usb/dwc2/platform.c ++++ b/drivers/usb/dwc2/platform.c +@@ -42,6 +42,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -336,6 +337,7 @@ static int dwc2_driver_probe(struct plat + struct resource *res; + int retval; + int irq; ++ int gpio_count; + + match = of_match_device(dwc2_of_match_table, &dev->dev); + if (match && match->data) { +@@ -352,6 +354,16 @@ static int dwc2_driver_probe(struct plat + defparams.dma_desc_enable = 0; + } + ++ gpio_count = of_gpio_count(dev->dev.of_node); ++ while (gpio_count > 0) { ++ enum of_gpio_flags flags; ++ int gpio = of_get_gpio_flags(dev->dev.of_node, --gpio_count, &flags); ++ if (gpio_request(gpio, "usb")) ++ continue; ++ dev_info(&dev->dev, "requested GPIO %d\n", gpio); ++ gpio_direction_output(gpio, (flags & OF_GPIO_ACTIVE_LOW) ? (0) : (1)); ++ } ++ + hsotg = devm_kzalloc(&dev->dev, sizeof(*hsotg), GFP_KERNEL); + if (!hsotg) + return -ENOMEM; -- cgit v1.2.3