public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Andre Przywara <andre.przywara@arm.com>
To: u-boot@lists.denx.de
Subject: [PATCH 0/7] Arm Juno board OF_CONTROL upgrade
Date: Wed, 25 Mar 2020 14:46:55 +0000	[thread overview]
Message-ID: <20200325144702.16288-1-andre.przywara@arm.com> (raw)

Hi,

The Juno port in U-Boot didn't see much love lately, so it has fallen
a bit behind. We already get a build warning for using an old network
driver, but there is more:
- The port is using hardcoded information, even though we have quite
  decent DTs available to find things at runtime.
- There is no support for USB or PCI, which pretty much limits the board
  to load a kernel from flash (yuck!) or TFTP (at least!).
- Probably because of this, newer features like UEFI support don't work
  properly.
- There are minor things like less-than-ideal default load addresses and
  missing reset support.

This series is the first part of fixing this. The main part is to switch
the board port to use OF_CONTROL, so U-Boot will use a DT to configure
itself at runtime. This requires some update to the PL011 driver first
(patch 2/7), and allows us to simply enable USB in the defconfig (patch
6/7). USB requires two "usb reset" calls after the initial "usb start" to
recognise any devices, not sure why this is.
But eventually I am able to load grub from a USB hard drive and do a full
featured Ubuntu UEFI boot from there (with a distro kernel).

Patches 1, 3, and 7 are mere fixes, patch 4/7 does the actual OF_CONTROL
conversion.

I also have some proper DM_PCI compliant driver in an advanced state,
which allows to load from a SATA hard disk. Unfortunately there is no
sky2 network driver in U-Boot, so the Gigabit Ethernet chip connected
to PCI will not work easily.
I will post this once this is cleaned up and tested.

Converting the smc network driver to DM_ETH is on my list as well, but
the code is shared with some U-Boot *application* code, also used by
some PowerPC boards, so that's not really a low hanging fruit.
But it would remove the deprecation warning.

Cheers,
Andre

P.S. In case you want to test this without flashing it, you can
chainload U-Boot from an existing U-Boot installation:
$ mkimage -A arm64 -O u-boot -T standalone -C none -a 0xe0000000 -e 0xe0000000
  -d u-boot.bin -n U-Boot /srv/tftp/u-boot-juno.img
VExpress64# tftpboot 0xe0000000 u-boot-juno.img
VExpress64# bootm 0xe0000000

Andre Przywara (7):
  arm: juno: Fix Juno address variables
  uart: pl011: Add proper DM clock support
  arm: juno: Fix UART clock rate
  arm: juno: Enable OF_CONTROL
  arm: juno: Use PSCI based reset
  arm: juno: enable USB
  arm: vexpress64: Remove unneeded CONFIG_ check

 arch/arm/Kconfig                       | 11 ++++++
 board/armltd/vexpress64/Kconfig        |  7 ++++
 board/armltd/vexpress64/vexpress64.c   | 61 ++++++++++++++++++++++++++++++++--
 configs/vexpress_aemv8a_juno_defconfig |  9 +++--
 drivers/serial/serial_pl01x.c          | 10 +++++-
 include/configs/vexpress_aemv8a.h      | 35 ++++++++++---------
 6 files changed, 108 insertions(+), 25 deletions(-)

-- 
2.14.5

             reply	other threads:[~2020-03-25 14:46 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-25 14:46 Andre Przywara [this message]
2020-03-25 14:46 ` [PATCH 1/7] arm: juno: Fix Juno address variables Andre Przywara
2020-03-26  2:38   ` Tom Rini
2020-03-26 16:14     ` André Przywara
2020-03-26 16:18       ` Tom Rini
2020-03-26 22:29   ` Linus Walleij
2020-03-25 14:46 ` [PATCH 2/7] uart: pl011: Add proper DM clock support Andre Przywara
2020-03-26 16:20   ` Simon Glass
2020-03-26 17:06     ` André Przywara
2020-03-26 21:30       ` Simon Glass
2020-03-26 22:34   ` Linus Walleij
2020-03-25 14:46 ` [PATCH 3/7] arm: juno: Fix UART clock rate Andre Przywara
2020-03-27 21:17   ` Linus Walleij
2020-03-25 14:46 ` [PATCH 4/7] arm: juno: Enable OF_CONTROL Andre Przywara
2020-03-27 21:22   ` Linus Walleij
2020-03-25 14:47 ` [PATCH 5/7] arm: juno: Use PSCI based reset Andre Przywara
2020-03-27 21:23   ` Linus Walleij
2020-03-25 14:47 ` [PATCH 6/7] arm: juno: enable USB Andre Przywara
2020-03-27 21:24   ` Linus Walleij
2020-03-25 14:47 ` [PATCH 7/7] arm: vexpress64: Remove unneeded CONFIG_ check Andre Przywara
2020-03-27 21:26   ` Linus Walleij

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200325144702.16288-1-andre.przywara@arm.com \
    --to=andre.przywara@arm.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox