[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v2 21/22] hw/alpha/dp264: Use the TYPE_SMC37
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] [RFC PATCH v2 21/22] hw/alpha/dp264: Use the TYPE_SMC37C669_SUPERIO |
Date: |
Thu, 8 Mar 2018 23:14:53 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 |
On 03/08/2018 09:39 PM, Philippe Mathieu-Daudé wrote:
> On 03/05/2018 10:19 PM, Philippe Mathieu-Daudé wrote:
>> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
>> ---
>> default-configs/alpha-softmmu.mak | 3 +++
>> hw/alpha/dp264.c | 10 ++++------
>> 2 files changed, 7 insertions(+), 6 deletions(-)
>>
>> diff --git a/default-configs/alpha-softmmu.mak
>> b/default-configs/alpha-softmmu.mak
>> index 3740adc5e9..bbe361f01a 100644
>> --- a/default-configs/alpha-softmmu.mak
>> +++ b/default-configs/alpha-softmmu.mak
>> @@ -7,6 +7,9 @@ CONFIG_SERIAL_ISA=y
>> CONFIG_I82374=y
>> CONFIG_I8254=y
>> CONFIG_I8257=y
>> +CONFIG_PARALLEL=y
>> +CONFIG_PARALLEL_ISA=y
>> +CONFIG_FDC=y
>> CONFIG_PCKBD=y
>> CONFIG_VGA_CIRRUS=y
>> CONFIG_IDE_CORE=y
>> diff --git a/hw/alpha/dp264.c b/hw/alpha/dp264.c
>> index ffad678ea7..80b987f7fb 100644
>> --- a/hw/alpha/dp264.c
>> +++ b/hw/alpha/dp264.c
>> @@ -19,8 +19,7 @@
>> #include "hw/timer/mc146818rtc.h"
>> #include "hw/ide.h"
>> #include "hw/timer/i8254.h"
>> -#include "hw/input/i8042.h"
>> -#include "hw/char/serial.h"
>> +#include "hw/isa/superio.h"
>> #include "hw/dma/i8257.h"
>> #include "qemu/cutils.h"
>>
>> @@ -83,14 +82,10 @@ static void clipper_init(MachineState *machine)
>> mc146818_rtc_init(isa_bus, 1900, rtc_irq);
>>
>> i8254_pit_init(isa_bus, 0x40, 0, NULL);
>> - isa_create_simple(isa_bus, TYPE_I8042);
>>
>> /* VGA setup. Don't bother loading the bios. */
>> pci_vga_init(pci_bus);
>>
>> - /* Serial code setup. */
>> - serial_hds_isa_init(isa_bus, 0, MAX_SERIAL_PORTS);
>> -
>> /* Network setup. e1000 is good enough, failing Tulip support. */
>> for (i = 0; i < nb_nics; i++) {
>> pci_nic_init_nofail(&nd_table[i], pci_bus, "e1000", NULL);
>> @@ -99,6 +94,9 @@ static void clipper_init(MachineState *machine)
>> /* 2 82C37 (dma) */
>> isa_create_simple(isa_bus, "i82374");
>>
>> + /* Super I/O */
>> + isa_create_simple(isa_bus, TYPE_SMC37C669_SUPERIO);
>> +
>> /* IDE disk setup. */
>> {
>> DriveInfo *hd[MAX_IDE_BUS * MAX_IDE_DEVS];
>>
>
> Booting linux with:
>
> qemu-system-alpha -kernel vmlinux-smp -nographic -append 'console=srm
> printk.time=0'
>
> diffing the console before/after (master/series):
>
> platform rtc-alpha: rtc core: registered rtc-alpha as rtc0
> Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
> serial8250: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
> + serial8250: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
> serio: i8042 KBD port at 0x60,0x64 irq 1
> serio: i8042 AUX port at 0x60,0x64 irq 12
> mousedev: PS/2 mouse device common for all mice
> input: AT Translated Set 2 keyboard as
> /devices/platform/i8042/serio0/input/input0
>
> The only diff is the 2nd uart discovered (ttyS1), since the SMC37C669
> provides 2 (everything else is exactly the same - except the RTC time).
>
> So alpha-softmmu behaves correctly.
And the "info qtree" diff:
dev: isabus-bridge, id ""
bus: isa.0
type ISA
+ dev: i8042, id ""
+ gpio-out "a20" 1
+ isa irqs 1,12
+ dev: isa-fdc, id ""
+ iobase = 1008 (0x3f0)
+ irq = 6 (0x6)
+ dma = 2 (0x2)
+ driveA = ""
+ driveB = ""
+ check_media_rate = true
+ fdtypeA = "auto"
+ fdtypeB = "auto"
+ fallback = "288"
+ isa irq 6
+ bus: floppy-bus.0
+ type floppy-bus
+ dev: floppy, id ""
+ unit = 0 (0x0)
+ drive = "floppy0"
+ logical_block_size = 512 (0x200)
+ physical_block_size = 512 (0x200)
+ min_io_size = 0 (0x0)
+ opt_io_size = 0 (0x0)
+ discard_granularity = 4294967295 (0xffffffff)
+ write-cache = "auto"
+ share-rw = false
+ drive-type = "288"
+ dev: isa-serial, id ""
+ index = 1 (0x1)
+ iobase = 760 (0x2f8)
+ irq = 3 (0x3)
+ chardev = "discarding-serial1"
+ wakeup = 0 (0x0)
+ isa irq 3
dev: isa-serial, id ""
index = 0 (0x0)
iobase = 1016 (0x3f8)
@@ -13,9 +47,25 @@
chardev = "serial0"
wakeup = 0 (0x0)
isa irq 4
- dev: i8042, id ""
- gpio-out "a20" 1
- isa irqs 1,12
+ dev: isa-parallel, id ""
+ index = 0 (0x0)
+ iobase = 956 (0x3bc)
+ irq = 7 (0x7)
+ chardev = "parallel0"
+ isa irq 7
+ dev: smc37c669-superio, id ""
+ dev: i8257, id ""
+ base = 192 (0xc0)
+ page-base = 136 (0x88)
+ pageh-base = 1160 (0x488)
+ dshift = 1 (0x1)
+ dev: i8257, id ""
+ base = 0 (0x0)
+ page-base = 128 (0x80)
+ pageh-base = 1152 (0x480)
+ dshift = 0 (0x0)
+ dev: i82374, id ""
+ iobase = 1024 (0x400)
dev: isa-pit, id ""
gpio-in "" 1
gpio-out "" 1
...
and "info mtree":
00000801b0000000-00000801bfffffff (prio 0, i/o): dchip0
00000801f8000000-00000801fbffffff (prio 0, i/o): pci0-iack
00000801fc000000-00000801fdffffff (prio 0, i/o): pci0-io
+ 00000801fc000000-00000801fc000007 (prio 0, i/o): dma-chan
+ 00000801fc000008-00000801fc00000f (prio 0, i/o): dma-cont
00000801fc000020-00000801fc000021 (prio 0, i/o): pic
00000801fc000040-00000801fc000043 (prio 0, i/o): pit
00000801fc000060-00000801fc000060 (prio 0, i/o): i8042-data
00000801fc000064-00000801fc000064 (prio 0, i/o): i8042-cmd
00000801fc000070-00000801fc000071 (prio 0, i/o): rtc
+ 00000801fc000081-00000801fc000083 (prio 0, i/o): dma-page
+ 00000801fc000087-00000801fc000087 (prio 0, i/o): dma-page
+ 00000801fc000089-00000801fc00008b (prio 0, i/o): dma-page
+ 00000801fc00008f-00000801fc00008f (prio 0, i/o): dma-page
00000801fc0000a0-00000801fc0000a1 (prio 0, i/o): pic
+ 00000801fc0000c0-00000801fc0000cf (prio 0, i/o): dma-chan
+ 00000801fc0000d0-00000801fc0000df (prio 0, i/o): dma-cont
+ 00000801fc0002f8-00000801fc0002ff (prio 0, i/o): serial
00000801fc0003b0-00000801fc0003df (prio 0, i/o): cirrus-io
+ 00000801fc0003bc-00000801fc0003c3 (prio 0, i/o): parallel
+ 00000801fc0003f1-00000801fc0003f5 (prio 0, i/o): fdc
+ 00000801fc0003f7-00000801fc0003f7 (prio 0, i/o): fdc
00000801fc0003f8-00000801fc0003ff (prio 0, i/o): serial
+ 00000801fc00040a-00000801fc00040a (prio 0, i/o): i82374
+ 00000801fc000410-00000801fc00043f (prio 0, i/o): i82374
+ 00000801fc000481-00000801fc000483 (prio 0, i/o): dma-pageh
+ 00000801fc000487-00000801fc000489 (prio 0, i/o): dma-pageh
+ 00000801fc000489-00000801fc00048b (prio 0, i/o): dma-pageh
+ 00000801fc00048f-00000801fc000491 (prio 0, i/o): dma-pageh
00000801fc0004d0-00000801fc0004d0 (prio 0, i/o): elcr
00000801fc0004d1-00000801fc0004d1 (prio 0, i/o): elcr
00000801fe000000-00000801feffffff (prio 0, i/o): pci0-conf
...
- [Qemu-devel] [RFC PATCH v2 15/22] hw/isa/superio: Factor out the FDC37M817 Super I/O from mips_malta.c, (continued)
- [Qemu-devel] [RFC PATCH v2 15/22] hw/isa/superio: Factor out the FDC37M817 Super I/O from mips_malta.c, Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 16/22] hw/mips/mips_fulong2e: Factor out vt82c686b_southbridge_init(), Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 18/22] hw/isa/vt82c686: Add the TYPE_VT82C686B_SUPERIO, Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 17/22] hw/isa/vt82c686: Rename vt82c686b_init() -> vt82c686b_isa_init(), Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 19/22] hw/isa/superio: Add the SMC FDC37C669 Super I/O, Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 20/22] hw/alpha/dp264: Add the ISA DMA controller, Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 21/22] hw/alpha/dp264: Use the TYPE_SMC37C669_SUPERIO, Philippe Mathieu-Daudé, 2018/03/05
- [Qemu-devel] [RFC PATCH v2 22/22] hw/i386/pc: Factor out the superio code, Philippe Mathieu-Daudé, 2018/03/05
- Re: [Qemu-devel] [RFC PATCH v2 00/22] remove i386/pc dependency: generic SuperIO, no-reply, 2018/03/06
- Re: [Qemu-devel] [RFC PATCH v2 00/22] remove i386/pc dependency: generic SuperIO, Paolo Bonzini, 2018/03/07