From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Tue, 7 Jul 2015 20:53:32 -0600 Subject: [U-Boot] [PATCH 00/20] arm: rpi: Enable USB and Ethernet driver model Raspberry Pi Message-ID: <1436324032-17931-1-git-send-email-sjg@chromium.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Raspberry Pi uses a DWC2 USB controller and a SMSC USB Ethernet adaptor. Neither of these currently support driver model. This series does the following: - Move Raspberry Pi to use device tree control (u-boot-dtb.bin instead of u-boot.bin) - Remove GPIO platform data (now uses device tree) - Remove serial platform data (now uses device tree) - Add 'ranges' support to simple-bus - Convert the DWC2 USB driver to support driver model - Convert the SMSC95XX USB Ethernet driver to support driver model - Enable CONFIG_DM_ETH and CONFIG_DM_USB on Raspberry Pi With Ethernet active the device list looks something like this: U-Boot> dm tree Class Probed Name ---------------------------------------- root [ + ] root_driver simple_bus [ + ] |-- soc gpio [ ] | |-- gpio at 7e200000 serial [ + ] | |-- uart at 7e201000 usb [ + ] | `-- usb at 7e980000 usb_hub [ + ] | `-- usb_hub usb_hub [ + ] | `-- usb_hub eth [ + ] | `-- smsc95xx_eth simple_bus [ ] `-- clocks Raspberry Pi 2 is not converted as I do not have one to test at present. Simon Glass (20): dm: net: Support usbethaddr environment variable dm: usb: Allow USB Ethernet whenever CONFIG_DM_ETH is not defined dm: usb: Add an errno.h header to usb_ether.c dm: usb: Prepare dwc2 driver for driver-model conversion dm: usb: Add driver-model support to dwc2 net: smsc95xx: Sort the include files net: smsc95xx: Rename AX_RX_URB_SIZE to RX_URB_SIZE net: smsc95xx: Correct the error numbers net: smsc95xx: Prepare for conversion to driver model net: smsc95xx: Add driver-model support dm: serial: Update binding for PL01x serial UART dm: Support address translation for simple-bus arm: rpi: Define CONFIG_TFTP_TSIZE to show tftp size info arm: rpi: Bring in kernel device tree files arm: rpi: Device tree modifications for U-Boot arm: rpi: Enable device tree control for Rasberry Pi arm: rpi: Drop the UART console platform data arm: rpi: Drop the GPIO platform data arm: rpi: Move to driver model for USB arm: rpi: Use driver model for Ethernet arch/arm/dts/Makefile | 2 + arch/arm/dts/bcm2835-rpi-b.dts | 23 ++ arch/arm/dts/bcm2835-rpi.dtsi | 51 ++++ arch/arm/dts/bcm2835.dtsi | 194 ++++++++++++ arch/arm/dts/stv0991.dts | 2 +- arch/arm/mach-bcm283x/include/mach/gpio.h | 2 - board/raspberrypi/rpi/rpi.c | 24 -- common/cmd_usb.c | 7 +- configs/rpi_defconfig | 5 + doc/device-tree-bindings/serial/pl011.txt | 53 ++++ doc/device-tree-bindings/serial/pl01x.txt | 7 - drivers/core/device.c | 17 +- drivers/core/simple-bus.c | 30 ++ drivers/gpio/bcm2835_gpio.c | 20 ++ drivers/serial/serial_pl01x.c | 6 +- drivers/usb/eth/smsc95xx.c | 469 ++++++++++++++++++++---------- drivers/usb/eth/usb_ether.c | 1 + drivers/usb/host/dwc2.c | 247 ++++++++++++---- include/configs/rpi-common.h | 3 +- include/dm/device-internal.h | 12 + include/dt-bindings/pinctrl/bcm2835.h | 27 ++ net/eth.c | 7 +- 22 files changed, 966 insertions(+), 243 deletions(-) create mode 100644 arch/arm/dts/bcm2835-rpi-b.dts create mode 100644 arch/arm/dts/bcm2835-rpi.dtsi create mode 100644 arch/arm/dts/bcm2835.dtsi create mode 100644 doc/device-tree-bindings/serial/pl011.txt delete mode 100644 doc/device-tree-bindings/serial/pl01x.txt create mode 100644 include/dt-bindings/pinctrl/bcm2835.h -- 2.4.3.573.g4eafbef