All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v5 00/19] arm: rpi: Enable USB, Ethernet, MMC, Video driver model on Raspberry Pi
@ 2017-04-01 18:05 Simon Glass
  2017-04-01 18:05 ` [U-Boot] [PATCH v5 01/19] net: smsc95xx: Correct free_pkt() implementation Simon Glass
                   ` (19 more replies)
  0 siblings, 20 replies; 35+ messages in thread
From: Simon Glass @ 2017-04-01 18:05 UTC (permalink / raw)
  To: u-boot

Raspberry Pi uses a DWC2 USB controller and a SMSC USB Ethernet adaptor.
Driver model support for these is available.

This series does the following:
- Enable CONFIG_DM_ETH and CONFIG_DM_USB on Raspberry Pi
- Convert the MMC driver to driver model
- Convert the video driver to driver model
- Fixes a driver model video bug which accessed beyond the frame buffer
- Fixes start-up of MMC with driver model (e.g. at present it does not
    support env_fat)
- Clean up a few loose ends

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      [ + ]    |   |-- serial at 7e215040
 mmc         [ + ]    |   |-- sdhci at 7e300000
 blk         [ + ]    |   |   `-- sdhci at 7e300000.blk
 video       [ + ]    |   |-- hdmi at 7e902000
 vidconsole0 [ + ]    |   |   `-- hdmi at 7e902000.vidconsole0
 usb         [ + ]    |   `-- usb at 7e980000
 usb_hub     [ + ]    |       `-- usb_hub
 usb_hub     [ + ]    |           `-- usb_hub
 eth         [ + ]    |               `-- smsc95xx_eth
 simple_bus  [   ]    `-- clocks

With version 4 a problem was discovered where tftpboot does not correctly
read a file on rpi_2 and rpi_3. The cause is unknown but for now this
series includes a work-around in the dwc2 driver. See here for details:

https://lists.denx.de/pipermail/u-boot/2017-April/285451.html

Changes in v5:
- Add new patch for dwc2 to se separate input and output buffers
- Add new patch for smsc95xx to correct free_pkt() implementation
- Rebase to master

Changes in v4:
- Add patches to convert video and MMC to driver model also
- Rebase to master

Changes in v3:
- Drop applied patches from series
- Drop patch to introduce usbethaddr for driver model

Simon Glass (19):
  net: smsc95xx: Correct free_pkt() implementation
  usb: dwc2: Use separate input and output buffers
  dm: mmc: Set up the MMC device when controller is probed
  dm: video: Correct line clearing code
  string: Use memcpy() within memmove() when we can
  arm: rpi: Drop the GPIO device addresses
  arm: rpi: Drop CONFIG_CONS_INDEX
  dm: arm: rpi: Move to driver model for USB
  dm: arm: rpi: Use driver model for Ethernet
  arm: rpi: Add a file to handle messages
  arm: rpi: Add a function to obtain the MMC clock
  dm: mmc: rpi: Convert Raspberry Pi to driver model for MMC
  dm: arm: rpi: Drop CONFIG_OF_EMBED
  video: arm: rpi: Move the video query out of the driver
  video: arm: rpi: Move the video settings out of the driver
  dm: video: Refactor lcd_simplefb to prepare for driver model
  dm: video: Add driver-model support to lcd_simplefb
  dm: video: arm: rpi: Convert to use driver model for video
  arm: rpi: Add a TODO to move all messages into the msg handler

 arch/arm/mach-bcm283x/Makefile            |   2 +-
 arch/arm/mach-bcm283x/include/mach/gpio.h |   5 -
 arch/arm/mach-bcm283x/include/mach/msg.h  |  51 ++++++++++
 arch/arm/mach-bcm283x/msg.c               | 154 ++++++++++++++++++++++++++++++
 board/raspberrypi/rpi/rpi.c               |  56 +----------
 common/lcd_simplefb.c                     |  47 +++++++--
 configs/rpi_2_defconfig                   |   6 +-
 configs/rpi_3_32b_defconfig               |   6 +-
 configs/rpi_3_defconfig                   |   6 +-
 configs/rpi_defconfig                     |   6 +-
 drivers/mmc/bcm2835_sdhci.c               |  81 ++++++++++++----
 drivers/mmc/mmc-uclass.c                  |  12 +++
 drivers/usb/eth/smsc95xx.c                |   4 +-
 drivers/usb/host/dwc2.c                   |  27 ++++--
 drivers/video/bcm2835.c                   | 140 +++++++--------------------
 drivers/video/console_normal.c            |   3 +-
 include/configs/rpi.h                     |  17 +---
 lib/string.c                              |  11 +--
 18 files changed, 404 insertions(+), 230 deletions(-)
 create mode 100644 arch/arm/mach-bcm283x/include/mach/msg.h
 create mode 100644 arch/arm/mach-bcm283x/msg.c

-- 
2.12.2.564.g063fe858b8-goog

^ permalink raw reply	[flat|nested] 35+ messages in thread

end of thread, other threads:[~2017-04-03 20:10 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-01 18:05 [U-Boot] [PATCH v5 00/19] arm: rpi: Enable USB, Ethernet, MMC, Video driver model on Raspberry Pi Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 01/19] net: smsc95xx: Correct free_pkt() implementation Simon Glass
2017-04-02 17:46   ` Joe Hershberger
2017-04-01 18:05 ` [U-Boot] [PATCH v5 02/19] usb: dwc2: Use separate input and output buffers Simon Glass
2017-04-01 20:15   ` Marek Vasut
2017-04-01 23:40     ` Simon Glass
2017-04-02  3:01       ` Marek Vasut
2017-04-02 13:10         ` Stefan Bruens
2017-04-02 15:43           ` Simon Glass
2017-04-02 21:34             ` Stefan Bruens
2017-04-02 23:23               ` Simon Glass
2017-04-03 14:26                 ` Brüns, Stefan
2017-04-03 15:38                   ` Simon Glass
2017-04-03 18:18                     ` Brüns, Stefan
2017-04-03 18:24                       ` Brüns, Stefan
2017-04-03 20:10                         ` Simon Glass
2017-04-03 20:10                       ` Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 03/19] dm: mmc: Set up the MMC device when controller is probed Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 04/19] dm: video: Correct line clearing code Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 05/19] string: Use memcpy() within memmove() when we can Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 06/19] arm: rpi: Drop the GPIO device addresses Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 07/19] arm: rpi: Drop CONFIG_CONS_INDEX Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 08/19] dm: arm: rpi: Move to driver model for USB Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 09/19] dm: arm: rpi: Use driver model for Ethernet Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 10/19] arm: rpi: Add a file to handle messages Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 11/19] arm: rpi: Add a function to obtain the MMC clock Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 12/19] dm: mmc: rpi: Convert Raspberry Pi to driver model for MMC Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 13/19] dm: arm: rpi: Drop CONFIG_OF_EMBED Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 14/19] video: arm: rpi: Move the video query out of the driver Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 15/19] video: arm: rpi: Move the video settings " Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 16/19] dm: video: Refactor lcd_simplefb to prepare for driver model Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 17/19] dm: video: Add driver-model support to lcd_simplefb Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 18/19] dm: video: arm: rpi: Convert to use driver model for video Simon Glass
2017-04-01 18:05 ` [U-Boot] [PATCH v5 19/19] arm: rpi: Add a TODO to move all messages into the msg handler Simon Glass
2017-04-01 19:05 ` [U-Boot] [PATCH v5 00/19] arm: rpi: Enable USB, Ethernet, MMC, Video driver model on Raspberry Pi Stefan Bruens

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.