[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] bcm2835_aux: Swap RX and TX interrupt assignments
From: |
Guenter Roeck |
Subject: |
Re: [Qemu-devel] bcm2835_aux: Swap RX and TX interrupt assignments |
Date: |
Sat, 14 Jul 2018 06:53:27 -0700 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
ping ...
On Mon, Jun 18, 2018 at 02:04:06PM -0700, Guenter Roeck wrote:
> RX and TX interrupt bits were reversed, resulting in an endless sequence
> of serial interupts in the emulated system and the following repeated
> error message when booting Linux.
>
> serial8250: too much work for irq61
>
> This results in a boot failure most of the time.
>
> Qemu command line used to reproduce the problem:
>
> qemu-system-aarch64 -M raspi3 -m 1024 \
> -kernel arch/arm64/boot/Image \
> --append "rdinit=/sbin/init console=ttyS1,115200"
> -initrd rootfs.cpio \
> -dtb arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dtb \
> -nographic -monitor null -serial null -serial stdio
>
> This is with arm64:defconfig. The root file system was generated using
> buildroot.
>
> Signed-off-by: Guenter Roeck <address@hidden>
> ---
> hw/char/bcm2835_aux.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/hw/char/bcm2835_aux.c b/hw/char/bcm2835_aux.c
> index 370dc7e..0364596 100644
> --- a/hw/char/bcm2835_aux.c
> +++ b/hw/char/bcm2835_aux.c
> @@ -39,8 +39,8 @@
> #define AUX_MU_BAUD_REG 0x68
>
> /* bits in IER/IIR registers */
> -#define TX_INT 0x1
> -#define RX_INT 0x2
> +#define RX_INT 0x1
> +#define TX_INT 0x2
>
> static void bcm2835_aux_update(BCM2835AuxState *s)
> {
- Re: [Qemu-devel] bcm2835_aux: Swap RX and TX interrupt assignments,
Guenter Roeck <=