From nobody Tue Nov 26 22:19:46 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=kernel.org ARC-Seal: i=1; a=rsa-sha256; t=1704633876; cv=none; d=zohomail.com; s=zohoarc; b=YetuveSG8EuiZmufLoRpwFL/vEOT+Fqj42ljC4DCwZpo89V9g5pTJ7MyzhPgYRY3bM+QD3T5vVi0oGiHYuO/6fnvAdAVYQDfsrwGVkvlFSKUb3/K5cL27wmQefUFs3H21gDnVv4JCHhEOBx89WUyCr5IwBgq8lLa6+W9w8WRVig= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1704633876; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=33KqHHbx3IEnseoRM0aRIexPUFMjEA+/FiNOmPJZr3E=; b=j3PUM7kQ0clhAnxFxWlm5FrHCZAJdiAKRsMBVAyrQM3rH5SAANArRoAdPDFxE9Li+I+HXvXNXMzbcOdHMXAUiuLwDjEf1f7ukNf1n6xN9fuplbvh4U3SKVIkKDrGASZRg2lGjawB6Za4vuDAlvmdRex91xMyMyGk05BG5AsS0W8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1704633876744782.1447284118893; Sun, 7 Jan 2024 05:24:36 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rMT7S-0006Lf-Sh; Sun, 07 Jan 2024 08:23:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rMT7I-0006L1-2C for qemu-devel@nongnu.org; Sun, 07 Jan 2024 08:23:05 -0500 Received: from sin.source.kernel.org ([2604:1380:40e1:4800::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rMT7E-0003Ll-3t for qemu-devel@nongnu.org; Sun, 07 Jan 2024 08:23:02 -0500 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id B3F94CE08CA; Sun, 7 Jan 2024 13:22:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0479BC433C9; Sun, 7 Jan 2024 13:22:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1704633775; bh=B4fc7NgHAdqVqzHjCIHaiDbnNTdtgF9ZXpfasywyufs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cPyY5fRRKVU7cSKGwU4hEzOrnlQ0bzy8wnH87wnKtUmkA0LCeEVSEm+vguuaF4btk 14JmnNvu2PLTWI8KTvEUMjrW8I4MMiO6m+S3Uxxvc3Kmindg3cDSezrR7jT67cyM/l Eb0CPloFdpoNer7/tZr+Lx7ApGQ+9B4tPFuQsuif3gTjq1CMZkZ9ClK0RBolVcVcQs 7x1SH0kWAsbOYzdsviE9XB7PDc7c50JvieR9ZtpHMlOcEHvDIHV4RH+tKJOjI5fLBM AymtNZi7tU74I4U+PscoroUdIjlZpeTCaqOMUlOIVhWUugJ+EHZArEIM4wYYNGp3Vz QSjlbda+NKA6g== From: deller@kernel.org To: qemu-devel@nongnu.org Cc: Richard Henderson , Michael Tokarev , Bruno Haible , "Nelson H . F . Beebe" , Helge Deller Subject: [PATCH v2 7/9] hw/hppa: Move software power button address back into PDC Date: Sun, 7 Jan 2024 14:22:35 +0100 Message-ID: <20240107132237.50553-8-deller@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240107132237.50553-1-deller@kernel.org> References: <20240107132237.50553-1-deller@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2604:1380:40e1:4800::1; envelope-from=deller@kernel.org; helo=sin.source.kernel.org X-Spam_score_int: -64 X-Spam_score: -6.5 X-Spam_bar: ------ X-Spam_report: (-6.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.098, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @kernel.org) X-ZM-MESSAGEID: 1704633878846100009 Content-Type: text/plain; charset="utf-8" From: Helge Deller The various operating systems (e.g. Linux, NetBSD) have issues mapping the power button when it's stored in page zero. NetBSD even crashes, because it fails to map that page and then accesses unmapped memory. Since we now have a consistent memory mapping of PDC in 32-bit and 64-bit address space (the lower 32-bits of the address are in sync) the power button can be moved back to PDC space. This patch fixes the power button on Linux, NetBSD and HP-UX. Signed-off-by: Helge Deller --- hw/hppa/machine.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/hw/hppa/machine.c b/hw/hppa/machine.c index 8017002a2a..9bf2116934 100644 --- a/hw/hppa/machine.c +++ b/hw/hppa/machine.c @@ -36,8 +36,8 @@ =20 #define MIN_SEABIOS_HPPA_VERSION 12 /* require at least this fw version */ =20 -/* Power button address at &PAGE0->pad[4] */ -#define HPA_POWER_BUTTON (0x40 + 4 * sizeof(uint32_t)) +#define HPA_POWER_BUTTON (FIRMWARE_END - 0x10) +static hwaddr soft_power_reg; =20 #define enable_lasi_lan() 0 =20 @@ -45,7 +45,6 @@ static DeviceState *lasi_dev; =20 static void hppa_powerdown_req(Notifier *n, void *opaque) { - hwaddr soft_power_reg =3D HPA_POWER_BUTTON; uint32_t val; =20 val =3D ldl_be_phys(&address_space_memory, soft_power_reg); @@ -221,7 +220,7 @@ static FWCfgState *create_fw_cfg(MachineState *ms, PCIB= us *pci_bus, fw_cfg_add_file(fw_cfg, "/etc/hppa/machine", g_memdup(mc->name, len), len); =20 - val =3D cpu_to_le64(HPA_POWER_BUTTON); + val =3D cpu_to_le64(soft_power_reg); fw_cfg_add_file(fw_cfg, "/etc/hppa/power-button-addr", g_memdup(&val, sizeof(val)), sizeof(val)); =20 @@ -295,6 +294,8 @@ static TranslateFn *machine_HP_common_init_cpus(Machine= State *machine) ram_max =3D 0xf0000000; /* 3.75 GB (32-bit CPU) */ } =20 + soft_power_reg =3D translate(NULL, HPA_POWER_BUTTON); + for (unsigned int i =3D 0; i < smp_cpus; i++) { g_autofree char *name =3D g_strdup_printf("cpu%u-io-eir", i); =20 --=20 2.43.0