From nobody Sat May 18 10:57:16 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) client-ip=209.85.128.48; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f48.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1638830738; cv=none; d=zohomail.com; s=zohoarc; b=EDxw+3Lc7nXp7kbL01yh78AsTwTNgBaVR6J1cn0QJo61FKiF7WlpVp3k7QYzRvjqT4yqQHon0yFrXFnrj5Y0Qtqkvm21Ra7zlQflSETSkmQe+XECfMzkCKfJi6pzSr2QMmRbBxHoZYef88LMYYCY8dYutVasvfv2x0HEWo/WLNY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638830738; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=9qz4AKFNIN2qnCPkv3JO022Rqx3rJT8mFAHOQmP3u04=; b=jaApepAhmHp0/tyw9thEucz+FJpXUHVCa+VG7fLNU11JJTVmQlcuwDszD+nfR/LOxYiHuqhGWORCAQyItpoVnBzAqG2rugzKOmhz5CWOvuN1km5flH7/1pyFdcvzIDi3d7aIOrDsyR/g8z+nEKC2eIOKYDsXnmhk7btZVKTDAX8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by mx.zohomail.com with SMTPS id 1638830738961718.8744229635548; Mon, 6 Dec 2021 14:45:38 -0800 (PST) Received: by mail-wm1-f48.google.com with SMTP id p18so9285499wmq.5 for ; Mon, 06 Dec 2021 14:45:38 -0800 (PST) Return-Path: Return-Path: Received: from x1w.. (174.red-83-50-185.dynamicip.rima-tde.net. [83.50.185.174]) by smtp.gmail.com with ESMTPSA id h27sm701340wmc.43.2021.12.06.14.45.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Dec 2021 14:45:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9qz4AKFNIN2qnCPkv3JO022Rqx3rJT8mFAHOQmP3u04=; b=p1cWL3hFehOQAYhaLPxIQCuBf4xjtGAdXzG/paPrM/1B0Pe5CJ5Rq8QXX22cr8UsKL 9iFK0zi1ChhBYkg/Vh1/KUSqwkuCqbV6LNl5ukNVhVBjdFH17E4/ewmaYf/jecnsS/jx 592pvv45RgqH0sn40KHKMo8usPSxgZz3+dUf4CTBm241VQgHJtEDEqSPR/cux4OzySp0 Nj9MA54IIZh+Ncdar9H5IkRZ/iLhuxO1FB4LiAABAb9zaZ9w3A0Mbe/Y1b/zxgHJfkV0 E+M8rgkFVYF8ICIu5Qkmmj/k7W9ISJmBHF5pMWWB2P8pGJLvXxNnLkt1h3AT4WSahJ+1 hQkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=9qz4AKFNIN2qnCPkv3JO022Rqx3rJT8mFAHOQmP3u04=; b=7/rq6x1q8k4vC8FgDgmDofyBF6SZGFtTlIwnLuZtK+c/JUPHfVfg7bbTBLT/EH47+r tS7Gl7ozskyqmRQ0BdHbAxt7R/XRcTuKK3YISg1R83jtGOFxEzB/Gp1dYl/oQQxEtb3p b8apkpdDc8e8jLecfUFn99uQu5Zrcy8HRzau93hX5aa5Xu6/d0+m2J0DSDtVFIkvPYkZ mlH1JtXguityVaYZJ3nwS3b4+wI9NKH9l8vxyxNX9k0RSTwaS2yrtoVjrAy2CNpeR519 wLF4t+2e3ojHTdISKCJH2Y+ta8gNTH/X19s5w2CV1O9SRvyksljKzcBHd97OshMQ/Aj4 X5+A== X-Gm-Message-State: AOAM531TiObWPtbrNZJIa9POUr68y2jCLeacqTLrCX7DqA1hGgtQI/cf glftcUKow3xScGd9IkHWmMI= X-Google-Smtp-Source: ABdhPJzICQSez9xQRsgMHAk/pWa5/itEpY+i58gyQTYtp38aNxiMFhy9qRS/Ht4/buiPQI7m32JYXA== X-Received: by 2002:a05:600c:1988:: with SMTP id t8mr1894767wmq.48.1638830737242; Mon, 06 Dec 2021 14:45:37 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , Jiaxun Yang , BALATON Zoltan , Thomas Huth , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v2 1/4] hw/display: Rename VGA_ISA_MM -> VGA_MMIO Date: Mon, 6 Dec 2021 23:45:25 +0100 Message-Id: <20211206224528.563588-2-f4bug@amsat.org> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211206224528.563588-1-f4bug@amsat.org> References: <20211206224528.563588-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1638830739388100001 There is no ISA bus part in the MMIO VGA device, so rename: * hw/display/vga-isa-mm.c -> hw/display/vga-mmio.c * CONFIG_VGA_ISA_MM -> CONFIG_VGA_MMIO * ISAVGAMMState -> VGAMmioState * isa_vga_mm_init() -> vga_mmio_init() Reviewed-by: BALATON Zoltan Reviewed-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- configs/devices/mips-softmmu/common.mak | 2 +- include/hw/display/vga.h | 5 ++--- hw/display/{vga-isa-mm.c =3D> vga-mmio.c} | 19 +++++++++---------- hw/mips/jazz.c | 2 +- hw/display/Kconfig | 2 +- hw/display/meson.build | 2 +- hw/mips/Kconfig | 2 +- 7 files changed, 16 insertions(+), 18 deletions(-) rename hw/display/{vga-isa-mm.c =3D> vga-mmio.c} (90%) diff --git a/configs/devices/mips-softmmu/common.mak b/configs/devices/mips= -softmmu/common.mak index 752b62b1e63..d2202c839e0 100644 --- a/configs/devices/mips-softmmu/common.mak +++ b/configs/devices/mips-softmmu/common.mak @@ -7,7 +7,7 @@ CONFIG_ISA_BUS=3Dy CONFIG_PCI=3Dy CONFIG_PCI_DEVICES=3Dy CONFIG_VGA_ISA=3Dy -CONFIG_VGA_ISA_MM=3Dy +CONFIG_VGA_MMIO=3Dy CONFIG_VGA_CIRRUS=3Dy CONFIG_VMWARE_VGA=3Dy CONFIG_SERIAL=3Dy diff --git a/include/hw/display/vga.h b/include/hw/display/vga.h index 5f7825e0e36..c16a5c26dae 100644 --- a/include/hw/display/vga.h +++ b/include/hw/display/vga.h @@ -24,8 +24,7 @@ enum vga_retrace_method { =20 extern enum vga_retrace_method vga_retrace_method; =20 -int isa_vga_mm_init(hwaddr vram_base, - hwaddr ctrl_base, int it_shift, - MemoryRegion *address_space); +int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, + int it_shift, MemoryRegion *address_space); =20 #endif diff --git a/hw/display/vga-isa-mm.c b/hw/display/vga-mmio.c similarity index 90% rename from hw/display/vga-isa-mm.c rename to hw/display/vga-mmio.c index 7321b7a06d5..4ffe3afe32d 100644 --- a/hw/display/vga-isa-mm.c +++ b/hw/display/vga-mmio.c @@ -1,5 +1,5 @@ /* - * QEMU ISA MM VGA Emulator. + * QEMU MMIO VGA Emulator. * * Copyright (c) 2003 Fabrice Bellard * @@ -32,15 +32,15 @@ =20 #define VGA_RAM_SIZE (8 * MiB) =20 -typedef struct ISAVGAMMState { +typedef struct VGAMmioState { VGACommonState vga; int it_shift; -} ISAVGAMMState; +} VGAMmioState; =20 /* Memory mapped interface */ static uint64_t vga_mm_read(void *opaque, hwaddr addr, unsigned size) { - ISAVGAMMState *s =3D opaque; + VGAMmioState *s =3D opaque; =20 return vga_ioport_read(&s->vga, addr >> s->it_shift) & MAKE_64BIT_MASK(0, size * 8); @@ -49,7 +49,7 @@ static uint64_t vga_mm_read(void *opaque, hwaddr addr, un= signed size) static void vga_mm_write(void *opaque, hwaddr addr, uint64_t value, unsigned size) { - ISAVGAMMState *s =3D opaque; + VGAMmioState *s =3D opaque; =20 vga_ioport_write(&s->vga, addr >> s->it_shift, value & MAKE_64BIT_MASK(0, size * 8)); @@ -65,7 +65,7 @@ static const MemoryRegionOps vga_mm_ctrl_ops =3D { .endianness =3D DEVICE_NATIVE_ENDIAN, }; =20 -static void vga_mm_init(ISAVGAMMState *s, hwaddr vram_base, +static void vga_mm_init(VGAMmioState *s, hwaddr vram_base, hwaddr ctrl_base, int it_shift, MemoryRegion *address_space) { @@ -91,11 +91,10 @@ static void vga_mm_init(ISAVGAMMState *s, hwaddr vram_b= ase, memory_region_set_coalescing(vga_io_memory); } =20 -int isa_vga_mm_init(hwaddr vram_base, - hwaddr ctrl_base, int it_shift, - MemoryRegion *address_space) +int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, + int it_shift, MemoryRegion *address_space) { - ISAVGAMMState *s; + VGAMmioState *s; =20 s =3D g_malloc0(sizeof(*s)); =20 diff --git a/hw/mips/jazz.c b/hw/mips/jazz.c index f5a26e174d5..8f345afd137 100644 --- a/hw/mips/jazz.c +++ b/hw/mips/jazz.c @@ -274,7 +274,7 @@ static void mips_jazz_init(MachineState *machine, } break; case JAZZ_PICA61: - isa_vga_mm_init(0x40000000, 0x60000000, 0, get_system_memory()); + vga_mmio_init(0x40000000, 0x60000000, 0, get_system_memory()); break; default: break; diff --git a/hw/display/Kconfig b/hw/display/Kconfig index a2306b67d87..a1b159becd7 100644 --- a/hw/display/Kconfig +++ b/hw/display/Kconfig @@ -49,7 +49,7 @@ config VGA_ISA depends on ISA_BUS select VGA =20 -config VGA_ISA_MM +config VGA_MMIO bool select VGA =20 diff --git a/hw/display/meson.build b/hw/display/meson.build index 861c43ff984..adc53dd8b6c 100644 --- a/hw/display/meson.build +++ b/hw/display/meson.build @@ -18,7 +18,7 @@ =20 softmmu_ss.add(when: 'CONFIG_VGA_PCI', if_true: files('vga-pci.c')) softmmu_ss.add(when: 'CONFIG_VGA_ISA', if_true: files('vga-isa.c')) -softmmu_ss.add(when: 'CONFIG_VGA_ISA_MM', if_true: files('vga-isa-mm.c')) +softmmu_ss.add(when: 'CONFIG_VGA_MMIO', if_true: files('vga-mmio.c')) softmmu_ss.add(when: 'CONFIG_VMWARE_VGA', if_true: files('vmware_vga.c')) softmmu_ss.add(when: 'CONFIG_BOCHS_DISPLAY', if_true: files('bochs-display= .c')) =20 diff --git a/hw/mips/Kconfig b/hw/mips/Kconfig index b4c5549ce84..725525358d9 100644 --- a/hw/mips/Kconfig +++ b/hw/mips/Kconfig @@ -16,7 +16,7 @@ config JAZZ select I8254 select I8257 select PCSPK - select VGA_ISA_MM + select VGA_MMIO select G364FB select DP8393X select ESP --=20 2.33.1 From nobody Sat May 18 10:57:16 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) client-ip=209.85.128.46; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f46.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1638830744; cv=none; d=zohomail.com; s=zohoarc; b=QBnZWPTrXyIdB8hRR7s6AhfP/Eib3mpRhcx+xvXwipKpHihyljkjl15Nf5LuDsR24Syp9M3dech8ODeJlw1ZSz/gZmdyugX9coIhHlIvQg61qeun6Tk01GyqQpH3pwYaYg6o64sCxgCa6Wh0WcsrnK0VGuydkY/GP36hzW9b/Kg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638830744; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=S41Bx0PKiSXj39RU/0leVOxf7HhF7IplspLzvzcX9jo=; b=deRRamRWCXSKn15eDt/ZRWKpIbv+NcpouQWjaJh2a2s0iDucf1K0n9AhgPwNXGkMCYVJTb77uJbNNjTDVVBc4h7qYGSyDboIruj/76UpaAUxGv02ybB2jT9OYfaFWrwKqbO5SWwYdHvNH56AXPci6d1sgppvbV8NX/bV5M/f+RE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.46 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) by mx.zohomail.com with SMTPS id 1638830744043463.4329487311579; Mon, 6 Dec 2021 14:45:44 -0800 (PST) Received: by mail-wm1-f46.google.com with SMTP id g191-20020a1c9dc8000000b0032fbf912885so903580wme.4 for ; Mon, 06 Dec 2021 14:45:43 -0800 (PST) Return-Path: Return-Path: Received: from x1w.. (174.red-83-50-185.dynamicip.rima-tde.net. [83.50.185.174]) by smtp.gmail.com with ESMTPSA id l8sm750832wmc.40.2021.12.06.14.45.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Dec 2021 14:45:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=S41Bx0PKiSXj39RU/0leVOxf7HhF7IplspLzvzcX9jo=; b=bfTiKK0ie48Zzhd/6+NWdFwhQtmXBzuzMaDCJJ6m+JpgkEWfHExFDwj99BxfnU7jmB qrT/blDWe8PZGnM34w4Fjyo8FM633YUtaviCddZdO7s9ZeClBLgNOXjZsjxs8Jg/5atu FCPu49KGtPAYc28khvS3O1YgJJXIpQKRTX/yBItjntaORnPQtMUgJaZN9K4000m3I89+ TY2u1+o3Y7TdHDdOxvWcyxD+ezM5dscAuJjz8/KbHcZYp9JX2pYnfTAYgGiS6rn+e5P4 2xubWPn0h07A6zigNYW91OV6+eVqTNITXsKkkNhlFppEHBjg9hfj12QQYen2wJZEQN8/ v+GA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=S41Bx0PKiSXj39RU/0leVOxf7HhF7IplspLzvzcX9jo=; b=TMrSvIDhRCZGAAEotV6MpOM0b8u8vl11xkNGWMZMyPq2pc5vmeakY2lGhiPwN+YE3B nNUo8IAJg3+e4vnTQsld/FW8AsROgyF4lTAOoE0ajXEpq4CnDQeT9+8krCkEUHRkcdmE b2eHx9qq2YM0Af59jTRC7qYbWDvr3LoMHq+K6QJ+z60Grh+uwsEvMXP0SZIU0JosY+b1 Y27lW3F1KQTUoEPtN3VuOcO7zKtRDIvJ8nPUjSTcMk8/7fkt5PqaBEL6upRFTzTGDPje 5PKR8fyqBASweIoSdcH+Jv1RpQ6iODFoWB1ZbLp17ziv+0tzROH4O5QZg6skmcIK7NUb svQQ== X-Gm-Message-State: AOAM533+z+T8F1NYrN91yJh/CifEe3U0UbKkvwNiG4zYwugQjzG24ruN +3L8q/eqihuPTQ8rKOt6DbM= X-Google-Smtp-Source: ABdhPJzQXbtPT/sONIhv8YJt57FFC1QYctFVBdWaja3Z7Mqlagr2qvi+ivONXVQYeARXsYFZwkq5aw== X-Received: by 2002:a7b:c848:: with SMTP id c8mr1442471wml.105.1638830742381; Mon, 06 Dec 2021 14:45:42 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , Jiaxun Yang , BALATON Zoltan , Thomas Huth , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v2 2/4] hw/display/vga-mmio: Inline vga_mm_init() Date: Mon, 6 Dec 2021 23:45:26 +0100 Message-Id: <20211206224528.563588-3-f4bug@amsat.org> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211206224528.563588-1-f4bug@amsat.org> References: <20211206224528.563588-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1638830746198100001 Inline vga_mm_init() in vga_mmio_init() to simplify the next patch review. Kind of. Reviewed-by: BALATON Zoltan Reviewed-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/display/vga-mmio.c | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/hw/display/vga-mmio.c b/hw/display/vga-mmio.c index 4ffe3afe32d..5671fdb920f 100644 --- a/hw/display/vga-mmio.c +++ b/hw/display/vga-mmio.c @@ -65,12 +65,18 @@ static const MemoryRegionOps vga_mm_ctrl_ops =3D { .endianness =3D DEVICE_NATIVE_ENDIAN, }; =20 -static void vga_mm_init(VGAMmioState *s, hwaddr vram_base, - hwaddr ctrl_base, int it_shift, - MemoryRegion *address_space) +int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, + int it_shift, MemoryRegion *address_space) { + VGAMmioState *s; MemoryRegion *s_ioport_ctrl, *vga_io_memory; =20 + s =3D g_malloc0(sizeof(*s)); + + s->vga.vram_size_mb =3D VGA_RAM_SIZE / MiB; + s->vga.global_vmstate =3D true; + vga_common_init(&s->vga, NULL); + s->it_shift =3D it_shift; s_ioport_ctrl =3D g_malloc(sizeof(*s_ioport_ctrl)); memory_region_init_io(s_ioport_ctrl, NULL, &vga_mm_ctrl_ops, s, @@ -89,19 +95,6 @@ static void vga_mm_init(VGAMmioState *s, hwaddr vram_bas= e, memory_region_add_subregion(address_space, vram_base + 0x000a0000, vga_io_memory); memory_region_set_coalescing(vga_io_memory); -} - -int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, - int it_shift, MemoryRegion *address_space) -{ - VGAMmioState *s; - - s =3D g_malloc0(sizeof(*s)); - - s->vga.vram_size_mb =3D VGA_RAM_SIZE / MiB; - s->vga.global_vmstate =3D true; - vga_common_init(&s->vga, NULL); - vga_mm_init(s, vram_base, ctrl_base, it_shift, address_space); =20 s->vga.con =3D graphic_console_init(NULL, 0, s->vga.hw_ops, s); =20 --=20 2.33.1 From nobody Sat May 18 10:57:16 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) client-ip=209.85.128.53; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f53.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1638830749; cv=none; d=zohomail.com; s=zohoarc; b=Y3THuGJPh2So/7E2L2nXcgfHSfBpDxoP8bbpN27EYqyTTiaPTX4wmDMTzjOdu8ufQpmj01qFk0048bJtnvYzir+tOZi0LZSSYW+aN5WTkk82Dhj7vRbbzv6LOGgVMyEIcWV6/tNVu/YS6L7jxn+uGJDImt1Dz/mj8RbNddCo1ns= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638830749; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=5k3RRBPujACcqHFQADio8BD2t3DHIvuu1P9AHplVN/s=; b=D/5XWmoitIANCE6m0Cd8UQ6lc2Sq2/EKM98dGad1eXTua88GqiQ/jqX/zkADU18tV3qUrdq7q1wJZucGjcDVvMpN538sXipkMErAnWBM6nYR96I3QW8jqehZ2MhaqlrSMB13kNFaRwCBP1tAkdivV8mKmzrzXH4/WZMm4GJ2td0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) by mx.zohomail.com with SMTPS id 1638830749493751.4703660173369; Mon, 6 Dec 2021 14:45:49 -0800 (PST) Received: by mail-wm1-f53.google.com with SMTP id j140-20020a1c2392000000b003399ae48f58so349624wmj.5 for ; Mon, 06 Dec 2021 14:45:48 -0800 (PST) Return-Path: Return-Path: Received: from x1w.. (174.red-83-50-185.dynamicip.rima-tde.net. [83.50.185.174]) by smtp.gmail.com with ESMTPSA id p8sm12354815wrx.25.2021.12.06.14.45.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Dec 2021 14:45:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5k3RRBPujACcqHFQADio8BD2t3DHIvuu1P9AHplVN/s=; b=mfggu546xl6qhBmw0oXMBv8YEsZnScAURco5xYlJjpBZnBEQLXvuVBnFQWPW01X821 MNiQuYg6FnlFNtRVUo+A0bbEG6GSlGUqN3KxG65vRho/8qt2K66FrJGPIRExfB/Dmo5I IGpLI0Lahd5Ku89iWwOselZVqYcvWb7vJA5RpbStKAznwMzkz8ytXnDikBxZH1p2B67E Uf3JhFrQ8v4DLQ/rsbGPF6TLjcgra4HmliKXXlarTGZWfcVIvFQAkT6Lm5SAHwlblYus b366KTHavyVWVmPPR0sj0J3kRptfWNDizneGGGZdPWbGJnlf5OchNzJ8xU+f5SkFlh7+ dqjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=5k3RRBPujACcqHFQADio8BD2t3DHIvuu1P9AHplVN/s=; b=S4M1+y6jhw+q5P6mfTkWn9E2bR8UnEKDfuGaOwDKjdpgz5y+LOE9b/BF6OH8FHUj39 wp2G6agOxvGTT6FDlu7X2KjrSL8ZCsCikJOh2XCueX3RlysTK2yuC3fy/gMDy8+Paajp s17Onpog41B5C3vDfif3Sr1L1uYGh0TyIenN4v7V5XUu7d/JWJIXtwyt7jZYIkbJByxf I/LsJmS8oawFGi2CyU8GQ/b4xUUgkvfFgeJAGbXHPDHAy/QH2JPoJ+E2UhhtPZ53nicF DYbarkXNdv/Y83lfcWglPHj0D02Vbzjyh2HW4zATJQDQzckJA4E2aEKDwuQpkNkPYSas XZGw== X-Gm-Message-State: AOAM530KozdjLR1UxVWwetNB4tw47b8LcibJ+P6pHdUwZ5+cqkuYtU3u 42HnLcZv9k6/+CMXmMfKTA0= X-Google-Smtp-Source: ABdhPJxHOVfmKJvWweqDO+0v8U4ih3M5o5Hf1yKJjDznOjX28bzeka3h1FsFulnQJUmkonEkf/2cPQ== X-Received: by 2002:a1c:4d8:: with SMTP id 207mr1880664wme.23.1638830747764; Mon, 06 Dec 2021 14:45:47 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , Jiaxun Yang , BALATON Zoltan , Thomas Huth , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v2 3/4] hw/display/vga-mmio: QOM'ify vga_mmio_init() as TYPE_VGA_MMIO Date: Mon, 6 Dec 2021 23:45:27 +0100 Message-Id: <20211206224528.563588-4-f4bug@amsat.org> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211206224528.563588-1-f4bug@amsat.org> References: <20211206224528.563588-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1638830750966100001 Introduce TYPE_VGA_MMIO, a sysbus device. While there is no change in the vga_mmio_init() interface, this is a migration compatibility break of the MIPS Acer Pica 61 Jazz machine (pica61). Suggested-by: Thomas Huth Reviewed-by: BALATON Zoltan Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Thomas Huth --- include/hw/display/vga.h | 2 + hw/display/vga-mmio.c | 132 +++++++++++++++++++++++++++------------ 2 files changed, 94 insertions(+), 40 deletions(-) diff --git a/include/hw/display/vga.h b/include/hw/display/vga.h index c16a5c26dae..98b2e560f9b 100644 --- a/include/hw/display/vga.h +++ b/include/hw/display/vga.h @@ -24,6 +24,8 @@ enum vga_retrace_method { =20 extern enum vga_retrace_method vga_retrace_method; =20 +#define TYPE_VGA_MMIO "vga-mmio" + int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, int it_shift, MemoryRegion *address_space); =20 diff --git a/hw/display/vga-mmio.c b/hw/display/vga-mmio.c index 5671fdb920f..10bde32af5c 100644 --- a/hw/display/vga-mmio.c +++ b/hw/display/vga-mmio.c @@ -23,21 +23,34 @@ */ =20 #include "qemu/osdep.h" -#include "qemu/bitops.h" -#include "qemu/units.h" -#include "migration/vmstate.h" +#include "qapi/error.h" #include "hw/display/vga.h" +#include "hw/sysbus.h" +#include "hw/display/vga.h" +#include "hw/qdev-properties.h" #include "vga_int.h" -#include "ui/pixel_ops.h" =20 -#define VGA_RAM_SIZE (8 * MiB) +/* + * QEMU interface: + * + sysbus MMIO region 0: VGA I/O registers + * + sysbus MMIO region 1: VGA MMIO registers + * + sysbus MMIO region 2: VGA memory + */ =20 -typedef struct VGAMmioState { +OBJECT_DECLARE_SIMPLE_TYPE(VGAMmioState, VGA_MMIO) + +struct VGAMmioState { + /*< private >*/ + SysBusDevice parent_obj; + + /*< public >*/ VGACommonState vga; - int it_shift; -} VGAMmioState; + MemoryRegion iomem; + MemoryRegion lowmem; + + uint8_t it_shift; +}; =20 -/* Memory mapped interface */ static uint64_t vga_mm_read(void *opaque, hwaddr addr, unsigned size) { VGAMmioState *s =3D opaque; @@ -65,42 +78,81 @@ static const MemoryRegionOps vga_mm_ctrl_ops =3D { .endianness =3D DEVICE_NATIVE_ENDIAN, }; =20 +static void vga_mmio_reset(DeviceState *dev) +{ + VGAMmioState *s =3D VGA_MMIO(dev); + + vga_common_reset(&s->vga); +} + int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, int it_shift, MemoryRegion *address_space) { - VGAMmioState *s; - MemoryRegion *s_ioport_ctrl, *vga_io_memory; + DeviceState *dev; + SysBusDevice *s; =20 - s =3D g_malloc0(sizeof(*s)); + dev =3D qdev_new(TYPE_VGA_MMIO); + qdev_prop_set_uint8(dev, "it_shift", it_shift); + s =3D SYS_BUS_DEVICE(dev); + sysbus_realize_and_unref(s, &error_fatal); =20 - s->vga.vram_size_mb =3D VGA_RAM_SIZE / MiB; - s->vga.global_vmstate =3D true; - vga_common_init(&s->vga, NULL); - - s->it_shift =3D it_shift; - s_ioport_ctrl =3D g_malloc(sizeof(*s_ioport_ctrl)); - memory_region_init_io(s_ioport_ctrl, NULL, &vga_mm_ctrl_ops, s, - "vga-mm-ctrl", 0x100000); - memory_region_set_flush_coalesced(s_ioport_ctrl); - - vga_io_memory =3D g_malloc(sizeof(*vga_io_memory)); - /* XXX: endianness? */ - memory_region_init_io(vga_io_memory, NULL, &vga_mem_ops, &s->vga, - "vga-mem", 0x20000); - - vmstate_register(NULL, 0, &vmstate_vga_common, s); - - memory_region_add_subregion(address_space, ctrl_base, s_ioport_ctrl); - s->vga.bank_offset =3D 0; - memory_region_add_subregion(address_space, - vram_base + 0x000a0000, vga_io_memory); - memory_region_set_coalescing(vga_io_memory); - - s->vga.con =3D graphic_console_init(NULL, 0, s->vga.hw_ops, s); - - memory_region_add_subregion(address_space, - VBE_DISPI_LFB_PHYSICAL_ADDRESS, - &s->vga.vram); + sysbus_mmio_map(s, 0, ctrl_base); + sysbus_mmio_map(s, 1, vram_base + 0x000a0000); + sysbus_mmio_map(s, 2, VBE_DISPI_LFB_PHYSICAL_ADDRESS); =20 return 0; } + +static void vga_mmio_realizefn(DeviceState *dev, Error **errp) +{ + VGAMmioState *s =3D VGA_MMIO(dev); + SysBusDevice *sbd =3D SYS_BUS_DEVICE(dev); + + memory_region_init_io(&s->iomem, OBJECT(dev), &vga_mm_ctrl_ops, s, + "vga-mmio", 0x100000); + memory_region_set_flush_coalesced(&s->iomem); + sysbus_init_mmio(sbd, &s->iomem); + + /* XXX: endianness? */ + memory_region_init_io(&s->lowmem, OBJECT(dev), &vga_mem_ops, &s->vga, + "vga-lowmem", 0x20000); + memory_region_set_coalescing(&s->lowmem); + sysbus_init_mmio(sbd, &s->lowmem); + + s->vga.bank_offset =3D 0; + s->vga.global_vmstate =3D true; + vga_common_init(&s->vga, OBJECT(dev)); + sysbus_init_mmio(sbd, &s->vga.vram); + s->vga.con =3D graphic_console_init(dev, 0, s->vga.hw_ops, &s->vga); +} + +static Property vga_mmio_properties[] =3D { + DEFINE_PROP_UINT8("it_shift", VGAMmioState, it_shift, 0), + DEFINE_PROP_UINT32("vgamem_mb", VGAMmioState, vga.vram_size_mb, 8), + DEFINE_PROP_END_OF_LIST(), +}; + +static void vga_mmio_class_initfn(ObjectClass *klass, void *data) +{ + DeviceClass *dc =3D DEVICE_CLASS(klass); + + dc->realize =3D vga_mmio_realizefn; + dc->reset =3D vga_mmio_reset; + dc->vmsd =3D &vmstate_vga_common; + device_class_set_props(dc, vga_mmio_properties); + set_bit(DEVICE_CATEGORY_DISPLAY, dc->categories); +} + +static const TypeInfo vga_mmio_info =3D { + .name =3D TYPE_VGA_MMIO, + .parent =3D TYPE_SYS_BUS_DEVICE, + .instance_size =3D sizeof(VGAMmioState), + .class_init =3D vga_mmio_class_initfn, +}; + +static void vga_mmio_register_types(void) +{ + type_register_static(&vga_mmio_info); +} + +type_init(vga_mmio_register_types) --=20 2.33.1 From nobody Sat May 18 10:57:16 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) client-ip=209.85.221.47; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f47.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1638830754; cv=none; d=zohomail.com; s=zohoarc; b=WsuerUN8zpU5Rg1r/EGBBuyBq7U1sY7RbXMUxO/de/R86DPdFi0q7A5OCo+rJqE4L3mGm1HxSI96jqGunJYbmvW5yCzR9ele6jVOzdu8CmWfP6qdwETJ9KmZgXdOZw2kuLoDKcGRhQOnRCcIseqrpH3ebUGg6S8WXB3Dh0wCYH0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638830754; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=w+yRQYeZ7bbAuc5HEXn4edg23VKEzwxJXX8ulRzRrI8=; b=QWrTDy1oZoAnozcIHgknh7EFLzL+SaXo1f2a90sepkVUCt8qepvQQHcDSnHPsbIy+tG5PA2qSYXk7/ooKayxsRVsuqx/9blNv9PonbWLbAu9VoUpSUkMBM8QF9yE8S+3kEbCcuim2OO6Lo5XSmBuzCRpsCD7sYv+nUWwuXGjZnE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by mx.zohomail.com with SMTPS id 163883075419617.942463297510244; Mon, 6 Dec 2021 14:45:54 -0800 (PST) Received: by mail-wr1-f47.google.com with SMTP id t18so1580120wrg.11 for ; Mon, 06 Dec 2021 14:45:53 -0800 (PST) Return-Path: Return-Path: Received: from x1w.. (174.red-83-50-185.dynamicip.rima-tde.net. [83.50.185.174]) by smtp.gmail.com with ESMTPSA id m7sm637366wml.38.2021.12.06.14.45.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Dec 2021 14:45:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=w+yRQYeZ7bbAuc5HEXn4edg23VKEzwxJXX8ulRzRrI8=; b=fsBZVGR1SaDSWX2D9gGKqMipKf3QYwglqMie1g6y8NUwYJWFCno9B1qNYV6u9NtbsG /Gtnn3ZHR1y4ueyTH9nGO/W9lj+wE2/2BypnT99quvAJSr2pFCVHfajSbMjRUaNe+T8L +B0HQ8eCafvn+AD9A/C09BnEHu0uDBOXSEhWK9jz9i8jDqj/1l5yq91QzQm/vrdRNL7F pzLEJQt47OET4/HP3dYF7FlHtFSnAu4Bk0ktfNnpq6A4msiDRxwBb902Th5fmVjpqDwP Tar1jc9ta+TRoVDhoHqSUmabWsQeGWQoPRRirsXBnOnUXj5Il556570TnoTSNhyLc+D7 qt+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=w+yRQYeZ7bbAuc5HEXn4edg23VKEzwxJXX8ulRzRrI8=; b=L9ULFcXb/LOvq4JN/8M3VQhT0xVeYf8oHAfWWPxwzfq4H8WGJ5KaX+iceoJzVSKKhg biROdYJaLX68JNVECPU6dgzfx3Dkh+7WlNULoDw8wKWv5ftxfrzrBZAp+XyHkagM/Uw7 mVH5xPb/zDz0YW3OWdqPTEEkeBX5NiJtfBwn2BUi8b8YlnJEwaCpy5vnw0zzb6nZbKrQ msYJo+LzoTQYL77aBnknDsyIlTJa3AcNvgj9DMyiPoktDGsbepaaTUWKy5rp+TxFAx9A kMZqscQh00WfZJVN9JLQ2TJu6x0lp7XSEWyN7/vzCcIMNp9LQ6xi869k4UY2QlDq5mPT 4H1Q== X-Gm-Message-State: AOAM53113d34L6IBkTIx/GRCWKQvRfeQ2ajKDF7kJLPIAgl3dPoAIRAR pXjdZA58Ov9cVRUqV9Vy5k0= X-Google-Smtp-Source: ABdhPJxfn0iFulNSafMMU5r1zMheG3Sd/IjVsfwSDKvghqfpu3UonxrFSpd+NL8S7jR4lTXHzvleIQ== X-Received: by 2002:a5d:54cf:: with SMTP id x15mr48411043wrv.30.1638830752552; Mon, 06 Dec 2021 14:45:52 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , Jiaxun Yang , BALATON Zoltan , Thomas Huth , =?UTF-8?q?Herv=C3=A9=20Poussineau?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v2 4/4] hw/mips/jazz: Inline vga_mmio_init() and remove it Date: Mon, 6 Dec 2021 23:45:28 +0100 Message-Id: <20211206224528.563588-5-f4bug@amsat.org> X-Mailer: git-send-email 2.33.1 In-Reply-To: <20211206224528.563588-1-f4bug@amsat.org> References: <20211206224528.563588-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1638830755016100001 vga_mmio_init() is used only one time and not very helpful, inline and remove it. Reviewed-by: BALATON Zoltan Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Thomas Huth --- include/hw/display/vga.h | 5 ----- hw/display/vga-mmio.c | 19 ------------------- hw/mips/jazz.c | 9 ++++++++- 3 files changed, 8 insertions(+), 25 deletions(-) diff --git a/include/hw/display/vga.h b/include/hw/display/vga.h index 98b2e560f9b..a79aa2909b2 100644 --- a/include/hw/display/vga.h +++ b/include/hw/display/vga.h @@ -9,8 +9,6 @@ #ifndef QEMU_HW_DISPLAY_VGA_H #define QEMU_HW_DISPLAY_VGA_H =20 -#include "exec/hwaddr.h" - /* * modules can reference this symbol to avoid being loaded * into system emulators without vga support @@ -26,7 +24,4 @@ extern enum vga_retrace_method vga_retrace_method; =20 #define TYPE_VGA_MMIO "vga-mmio" =20 -int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, - int it_shift, MemoryRegion *address_space); - #endif diff --git a/hw/display/vga-mmio.c b/hw/display/vga-mmio.c index 10bde32af5c..49693680813 100644 --- a/hw/display/vga-mmio.c +++ b/hw/display/vga-mmio.c @@ -24,7 +24,6 @@ =20 #include "qemu/osdep.h" #include "qapi/error.h" -#include "hw/display/vga.h" #include "hw/sysbus.h" #include "hw/display/vga.h" #include "hw/qdev-properties.h" @@ -85,24 +84,6 @@ static void vga_mmio_reset(DeviceState *dev) vga_common_reset(&s->vga); } =20 -int vga_mmio_init(hwaddr vram_base, hwaddr ctrl_base, - int it_shift, MemoryRegion *address_space) -{ - DeviceState *dev; - SysBusDevice *s; - - dev =3D qdev_new(TYPE_VGA_MMIO); - qdev_prop_set_uint8(dev, "it_shift", it_shift); - s =3D SYS_BUS_DEVICE(dev); - sysbus_realize_and_unref(s, &error_fatal); - - sysbus_mmio_map(s, 0, ctrl_base); - sysbus_mmio_map(s, 1, vram_base + 0x000a0000); - sysbus_mmio_map(s, 2, VBE_DISPI_LFB_PHYSICAL_ADDRESS); - - return 0; -} - static void vga_mmio_realizefn(DeviceState *dev, Error **errp) { VGAMmioState *s =3D VGA_MMIO(dev); diff --git a/hw/mips/jazz.c b/hw/mips/jazz.c index 8f345afd137..44f0d48bfd7 100644 --- a/hw/mips/jazz.c +++ b/hw/mips/jazz.c @@ -43,6 +43,7 @@ #include "hw/rtc/mc146818rtc.h" #include "hw/timer/i8254.h" #include "hw/display/vga.h" +#include "hw/display/bochs-vbe.h" #include "hw/audio/pcspk.h" #include "hw/input/i8042.h" #include "hw/sysbus.h" @@ -274,7 +275,13 @@ static void mips_jazz_init(MachineState *machine, } break; case JAZZ_PICA61: - vga_mmio_init(0x40000000, 0x60000000, 0, get_system_memory()); + dev =3D qdev_new(TYPE_VGA_MMIO); + qdev_prop_set_uint8(dev, "it_shift", 0); + sysbus =3D SYS_BUS_DEVICE(dev); + sysbus_realize_and_unref(sysbus, &error_fatal); + sysbus_mmio_map(sysbus, 0, 0x60000000); + sysbus_mmio_map(sysbus, 1, 0x400a0000); + sysbus_mmio_map(sysbus, 2, VBE_DISPI_LFB_PHYSICAL_ADDRESS); break; default: break; --=20 2.33.1