From patchwork Thu Sep 1 11:41:14 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bernhard Beschow X-Patchwork-Id: 12962382 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CC1B5ECAAD3 for ; Thu, 1 Sep 2022 12:11:15 +0000 (UTC) Received: from localhost ([::1]:43860 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oTj2Q-0004ie-V9 for qemu-devel@archiver.kernel.org; Thu, 01 Sep 2022 08:11:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36090) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oTiaN-0005gk-MZ; Thu, 01 Sep 2022 07:42:27 -0400 Received: from mail-ed1-x529.google.com ([2a00:1450:4864:20::529]:37886) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oTiaB-0000Dq-PX; Thu, 01 Sep 2022 07:42:14 -0400 Received: by mail-ed1-x529.google.com with SMTP id b16so22178213edd.4; Thu, 01 Sep 2022 04:41:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc; bh=w3a9d8qpqyBTLSXZ8UdLBrk+4IWQvo501TyOwOx4xag=; b=b//ykuSo38xkH5kfYZQ4Cj9Uq2rky5Y3ht4tQ8/IfWgqBnBNysDEcQY9bji83iLv4Z 9Rtpw4At4I7IHMNA2shKkybPsfQD85ox5Xfo47hIhmWuyH/1+SW88RAEdZALUBx5GWAy fwB7Ok9rtgJY3TY6S6tg9HASqBmVMMF1Fak1P5yKNLkS7LGLPs5D4k5dSgC1azE/onCh IHlXmOYitKIeCpO24fYl+AejtulTluUkF9SCBlssrfaQ22LijYedyagB4yoFauem4rqY 2L6MF7tzwxZBOKWdgGzBUXcSN8YZ904Zaeq4gJqDN1B0GpY0PXmUyphNaRCOwKQ3QObj +XPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc; bh=w3a9d8qpqyBTLSXZ8UdLBrk+4IWQvo501TyOwOx4xag=; b=zrizRBwP8SEbmCNU4Tev7qLiQfYY7Z4mLQfWgh0iXhMjS0Y9NH3XD6vsWlpHPKgfT0 AcK493VByajU00svXAemk3RfdyvxTyDhth834bxs7Kfg91ezl4PYIVbqzaEbkIlO9QOA fvHeA3QifTJ5ZcLfPTCtoCFBtiK8cxjj2dBRpDv40+bRTpo5isHDPdZR/S0Jxv2bFavn MevCDAexuMg61QfpUI9b8d+fyUxEw1xUCDqL+9mcKLKKYPVsom6jyWQBK5z4FSN99IQC tAID+Vk3O1+hJLnvzErpxNSfr26SG++zSbOupiRDBGJJNFhvQ9XpYZ0JP6B41YWwLzcd bNnA== X-Gm-Message-State: ACgBeo2IybZ99e7dfhSrq9eNaHCXgVqTq71kS1z5K0e3ZfyuCUS4jpnT mo/baftWdKt3DlX/pqLmUsFMBNX3N9o= X-Google-Smtp-Source: AA6agR7QoaWg59pTbn65ujOxRsda0Tw6dPXceh9/dff3P8RI8f3uC/NIj39CSKxXuYHKmnrmBYVbOg== X-Received: by 2002:a05:6402:51ce:b0:43e:74bc:dce with SMTP id r14-20020a05640251ce00b0043e74bc0dcemr29107848edd.225.1662032517314; Thu, 01 Sep 2022 04:41:57 -0700 (PDT) Received: from osoxes.fritz.box (p200300faaf0bb2009c4947838afc41b6.dip0.t-ipconnect.de. [2003:fa:af0b:b200:9c49:4783:8afc:41b6]) by smtp.gmail.com with ESMTPSA id f12-20020a17090660cc00b0073ddb2eff27sm8387455ejk.167.2022.09.01.04.41.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Sep 2022 04:41:56 -0700 (PDT) From: Bernhard Beschow To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, John Snow , Huacai Chen , Jiaxun Yang , Gerd Hoffmann , qemu-block@nongnu.org, =?utf-8?q?Philipp?= =?utf-8?q?e_Mathieu-Daud=C3=A9?= , BALATON Zoltan , Bernhard Beschow Subject: [PATCH v5 00/13] Instantiate VT82xx functions in host device Date: Thu, 1 Sep 2022 13:41:14 +0200 Message-Id: <20220901114127.53914-1-shentey@gmail.com> X-Mailer: git-send-email 2.37.3 MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::529; envelope-from=shentey@gmail.com; helo=mail-ed1-x529.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" v5: * Add patch "Inline vt82c686b_southbridge_init() and remove it" (Zoltan) * Use machine parameter when creating rtc-time alias (Zoltan) Testing done: Same as in v3. v4: * Fix in comment: AC97 Modem -> MC97 Modem (Zoltan) * Introduce TYPE_VT82C686B_USB_UHCI define (Zoltan) * Introduce TYPE_VIA_IDE define (for consistency) v3: * Replace pre increment by post increment in for loop (Zoltan) * Move class defines close to where the class is defined (Zoltan) Testing done: * `make check-avocado` Passes for boot_linux_console.py for mips64el_fuloong2e * `qemu-system-ppc -machine pegasos2 -rtc base=localtime -device ati-vga,guest_hwcursor=true,romfile="" -cdrom morphos-3.17.iso -kernel morphos-3.17/boot.img` Boots successfully and it is possible to open games and tools. v2: * Keep the call to pci_ide_create_devs() in board code for consistency (Zoltan) * Create rtc-time alias in board rather than in south bridge code * Remove stale comments about PCI functions (Zoltan) v1: This series instantiates all PCI functions of the VT82xx south bridges in the south bridges themselves. For the IDE function this is especially important since its interrupt routing is configured in the ISA function, hence doesn't make sense to instantiate it as a "Frankenstein" device. The interrupt routing is currently hardcoded and changing that is currently not in the scope of this series. Testing done: * `qemu-system-ppc -machine pegasos2 -rtc base=localtime -device ati-vga,guest_hwcursor=true,romfile="" -cdrom morphos-3.17.iso -kernel morphos-3.17/boot.img` Boots successfully and it is possible to open games and tools. * I was unable to test the fuloong2e board even before this series since it seems to be unfinished [1]. A buildroot-baked kernel [2] booted but doesn't find its root partition, though the issues could be in the buildroot receipt I created. [1] https://osdn.net/projects/qmiga/wiki/SubprojectPegasos2 [2] https://github.com/shentok/buildroot/commits/fuloong2e Bernhard Beschow (13): hw/isa/vt82c686: Resolve chip-specific realize methods hw/isa/vt82c686: Resolve unneeded attribute hw/isa/vt82c686: Prefer pci_address_space() over get_system_memory() hw/isa/vt82c686: Reuse errp hw/isa/vt82c686: Introduce TYPE_VIA_IDE define hw/isa/vt82c686: Instantiate IDE function in host device hw/isa/vt82c686: Introduce TYPE_VT82C686B_USB_UHCI define hw/isa/vt82c686: Instantiate USB functions in host device hw/isa/vt82c686: Instantiate PM function in host device hw/isa/vt82c686: Instantiate AC97 and MC97 functions in host device hw/mips/fuloong2e: Inline vt82c686b_southbridge_init() and remove it hw/isa/vt82c686: Embed RTCState in host device hw/isa/vt82c686: Create rtc-time alias in boards instead configs/devices/mips64el-softmmu/default.mak | 1 - hw/ide/via.c | 2 +- hw/isa/Kconfig | 1 + hw/isa/vt82c686.c | 120 +++++++++++++++---- hw/mips/fuloong2e.c | 39 +++--- hw/ppc/Kconfig | 1 - hw/ppc/pegasos2.c | 25 ++-- hw/usb/vt82c686-uhci-pci.c | 4 +- include/hw/isa/vt82c686.h | 4 +- 9 files changed, 126 insertions(+), 71 deletions(-) Reviewed-by: BALATON Zoltan Reviewed-by: Philippe Mathieu-Daudé