From 0fcb7acf6748d2ee0b7abfd75e074840be6b7e0e Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Mon, 25 May 2015 22:36:26 +0800 Subject: x86: qemu: Enable legacy IDE I/O ports decode QEMU always decode legacy IDE I/O ports on PIIX chipset. However Linux ata_piix driver does sanity check to see whether legacy ports decode is turned on. To make Linux ata_piix driver happy, turn on the decode via IDE_TIMING register. Signed-off-by: Bin Meng Acked-by: Simon Glass --- arch/x86/include/asm/arch-qemu/device.h | 19 +++++++++++++++++++ arch/x86/include/asm/arch-qemu/qemu.h | 5 +++++ 2 files changed, 24 insertions(+) create mode 100644 arch/x86/include/asm/arch-qemu/device.h (limited to 'arch/x86/include') diff --git a/arch/x86/include/asm/arch-qemu/device.h b/arch/x86/include/asm/arch-qemu/device.h new file mode 100644 index 0000000..2a8d460 --- /dev/null +++ b/arch/x86/include/asm/arch-qemu/device.h @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2015, Bin Meng + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _QEMU_DEVICE_H_ +#define _QEMU_DEVICE_H_ + +#include + +#define QEMU_I440FX PCI_BDF(0, 0, 0) +#define PIIX_ISA PCI_BDF(0, 1, 0) +#define PIIX_IDE PCI_BDF(0, 1, 1) +#define PIIX_USB PCI_BDF(0, 1, 2) + +#define QEMU_Q35 PCI_BDF(0, 0, 0) + +#endif /* _QEMU_DEVICE_H_ */ diff --git a/arch/x86/include/asm/arch-qemu/qemu.h b/arch/x86/include/asm/arch-qemu/qemu.h index 7a9901d..5cbffff 100644 --- a/arch/x86/include/asm/arch-qemu/qemu.h +++ b/arch/x86/include/asm/arch-qemu/qemu.h @@ -13,6 +13,11 @@ #define PAM_NUM 7 #define PAM_RW 0x33 +/* IDE Timing Register */ +#define IDE0_TIM 0x40 +#define IDE1_TIM 0x42 +#define IDE_DECODE_EN 0x8000 + /* I/O Ports */ #define CMOS_ADDR_PORT 0x70 #define CMOS_DATA_PORT 0x71 -- cgit v1.1