On Wed, Jun 8, 2016 at 10:59 AM, Alistair Francis
<alistair.fran...@xilinx.com> wrote:
> Update the QEMU Cadence UART reset values to enable a direct Linux boot
> without u-boot.

Hi Alistair,

Could you expand a bit on this, I don't see any issues where direct
booting is broken with the cadence uart for zynq or zynqmp. I did
notice however that the earlycon for the cadence uart driver (in the
kernel) does not set txen, which is possibly the cause for the delayed
console output.

Also I do see that there is a regression for xlnx-ep108 with qemu
2.6.0 where bringing up the additional cpus causes a RAM/ROM exec
error (see below). If i remove cpu@1,2,3 from the dt it boots fine
(ep108 kernel dt).

qemu: fatal: Trying to execute code outside RAM or ROM at 0xffffffc000082000

PC=ffffffc000082000  SP=0000000000000000
X00=0000000034d5d91d X01=0000000000001122 X02=0000000000000000
X03=0000000000000000
X04=0000000000000000 X05=ffffffc000084000 X06=0000000034d5d91d
X07=0000000000000000
X08=0000000000000000 X09=0000000000000000 X10=00000032b5193519
X11=0000000000000000
X12=0000000000000000 X13=0000000000000000 X14=0000000000000000
X15=0000000000000000
X16=0000000000000000 X17=0000000000000000 X18=0000000000000000
X19=0000000000000000
X20=0000000000000e11 X21=ffffffc000ae8688 X22=0000000000000000
X23=0000000000000000
X24=0000000000000000 X25=0000000000b43000 X26=0000000000b46000
X27=ffffffc000082000
X28=0000000000000000 X29=0000000000000000 X30=0000000000081fec
PSTATE=600003cd -ZC- EL3h

---
ffffffc000082000 <__secondary_switched>:
ffffffc000082000: f94002a0 ldr x0, [x21]
ffffffc000082004: 9100001f mov sp, x0
ffffffc000082008: d280001d mov x29, #0x0                   // #0
ffffffc00008200c: 14002d0b b ffffffc00008d438 <secondary_start_kernel>

Regards,
Nathan

>
> Signed-off-by: Alistair Francis <alistair.fran...@xilinx.com>
> ---
> In future versions of QEMU we can hopefully change the reset values from
> the command line, but at the moment this is the best we can do.
>
>  .../d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch | 31 
> ++++++++++++++++++++++
>  recipes-zynqmp/qemu/qemu_2.5%.bbappend             |  1 +
>  2 files changed, 32 insertions(+)
>  create mode 100644 
> recipes-zynqmp/qemu/files/d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch
>
> diff --git 
> a/recipes-zynqmp/qemu/files/d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch 
> b/recipes-zynqmp/qemu/files/d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch
> new file mode 100644
> index 0000000..930fcfc
> --- /dev/null
> +++ b/recipes-zynqmp/qemu/files/d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch
> @@ -0,0 +1,31 @@
> +From d3d0ed0cc451232fd5037d41d8e73de469c83cf6 Mon Sep 17 00:00:00 2001
> +From: Alistair Francis <alistair.fran...@xilinx.com>
> +Date: Tue, 7 Jun 2016 17:14:27 -0700
> +Subject: [PATCH] cadence_uart: Enable transmitter by default
> +
> +On hardware Linux relies on u-boot to enable the transmitter for the
> +Cadence UART device. To allow direct Linux boots on QEMU change the
> +default reset values to enable the transmitter by default.
> +
> +Signed-off-by: Alistair Francis <alistair.fran...@xilinx.com>
> +Upstream-Status: Not Applicable
> +---
> + hw/char/cadence_uart.c | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/hw/char/cadence_uart.c b/hw/char/cadence_uart.c
> +index 9d379e5..c72ceb7 100644
> +--- a/hw/char/cadence_uart.c
> ++++ b/hw/char/cadence_uart.c
> +@@ -440,7 +440,7 @@ static void cadence_uart_reset(DeviceState *dev)
> + {
> +     CadenceUARTState *s = CADENCE_UART(dev);
> +
> +-    s->r[R_CR] = 0x00000128;
> ++    s->r[R_CR] = 0x00000118;
> +     s->r[R_IMR] = 0;
> +     s->r[R_CISR] = 0;
> +     s->r[R_RTRIG] = 0x00000020;
> +--
> +2.7.4
> +
> diff --git a/recipes-zynqmp/qemu/qemu_2.5%.bbappend 
> b/recipes-zynqmp/qemu/qemu_2.5%.bbappend
> index 6f7cb50..73ed23d 100644
> --- a/recipes-zynqmp/qemu/qemu_2.5%.bbappend
> +++ b/recipes-zynqmp/qemu/qemu_2.5%.bbappend
> @@ -5,5 +5,6 @@ SRC_URI += " \
>                 file://4054bfa9e7986c9b7d2bf70f9e10af9647e376fc.patch \
>                 file://8a83ffc2dafad3499b87a736b17ab1b203fdb00b.patch \
>                 file://978364f12adebb4b8d90fdeb71242cb3c1405740.patch \
> +               file://d3d0ed0cc451232fd5037d41d8e73de469c83cf6.patch \
>                 "
>
> --
> 2.7.4
>
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx
-- 
_______________________________________________
meta-xilinx mailing list
meta-xilinx@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-xilinx

Reply via email to