From patchwork Fri Dec 29 06:31:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 122887 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp4323228qgn; Thu, 28 Dec 2017 22:35:02 -0800 (PST) X-Google-Smtp-Source: ACJfBovAjqtjEoAk5m7+ICJ835DyURJTcZCmdjTcfajNKeMf96/Khb2ChjTlQKHiYNObbWz0AJyP X-Received: by 10.37.130.10 with SMTP id q10mr10462244ybk.239.1514529302220; Thu, 28 Dec 2017 22:35:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1514529302; cv=none; d=google.com; s=arc-20160816; b=yvOZ3iqBvCxeULggmA7TWQpSHZA3hDZp+fwFLF5ygtR5sojk004TYZ2CFYWnCidrhM i/gIqYCXB4Z4fi9IuAzc04fiF84CAvQqD8rlP3qIr7L3VGyjnwYwFEZIko3bt0ox4Xr1 Pql4r1JZuuDVta15Qflx0A6FMP1mUc3aACbu5geSjNlAJYkP1jkNaGewDRU9IDc4T5gE AWzbCgKLl4hYB+ymGP0jLBGpDgbfjSRseoKwgcsPMsvdvRYjDVLgV3c6KrhD97XSga/B HWLYYpOk0yzkVsgiA7ZhuXFf66l2hQb+qv0Zq62dksBkKYbjWs1hWVazhqdnGVmBBozb IFzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:message-id:date:to:from :dkim-signature:arc-authentication-results; bh=2YTnOob9U84Tgj1UmcZ/tTECmk5WyeGqc4J+Q1mFhto=; b=y3VmdhtWjzAvrOgcVP3SQkpIHeW5vc58phnr4fVmbN//wDxfP3fIvd5piQgVeRQs4d KgMT0d5zDWpji2B1SEwQtzfhAMcs7MlDQGNGolA/sIqfrH4cdDseWs/gdmoYqEPO1tg1 D0XFdYVSrR3MvxF+N+Lho8YyQFCHl7Dtn3CoWye18RNoH6QlwMZblIaIEDWEtJmlYk66 n0CGbfBuYnoS1Xv/nR6lCUof+jtsUP4FIfjLNsSPKcLb2OShzDbfWm6u1IuDFq8/Gw6Z Jb2Pe8obVDY2vke9CVUlVHx7fSD9fEJ8y/WR4hv8liwBsNvkYriUYiTSSpzQNKLMWIcZ Ub7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=b+TtI2co; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id 190si7038123ybi.585.2017.12.28.22.35.02 for (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 28 Dec 2017 22:35:02 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=b+TtI2co; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:56932 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eUoFx-00049r-KO for patch@linaro.org; Fri, 29 Dec 2017 01:35:01 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50497) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eUoCu-0002jZ-Tr for qemu-devel@nongnu.org; Fri, 29 Dec 2017 01:31:54 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eUoCr-0004TJ-Nt for qemu-devel@nongnu.org; Fri, 29 Dec 2017 01:31:52 -0500 Received: from mail-pg0-x244.google.com ([2607:f8b0:400e:c05::244]:41768) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eUoCr-0004T3-IG for qemu-devel@nongnu.org; Fri, 29 Dec 2017 01:31:49 -0500 Received: by mail-pg0-x244.google.com with SMTP id 77so7332859pgd.8 for ; Thu, 28 Dec 2017 22:31:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=2YTnOob9U84Tgj1UmcZ/tTECmk5WyeGqc4J+Q1mFhto=; b=b+TtI2coSkgvI2xZdSvqi4JPSIxhThcXw4AB52BgY/k2EKzAqMLE8/sIrkAbWxROKn CnT6ucbP6ESc+3ZUks31Q+T5+SD+E+mRzIN6DxPtJL3j4WksZF1kzzZrsZodg89zqIRU CSK/9DmK7JaW1HlVlie2IWD1TGplvObwCJ958= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=2YTnOob9U84Tgj1UmcZ/tTECmk5WyeGqc4J+Q1mFhto=; b=j+pt3VXt1v9x5RHyk9SL9KMk3bbbA9s9aOzmEbjuUaH7xmAD5rLAR5lZuhHFy5EN89 TlMB1Ood0n73DnA0BUr8hB183mr1Ovl6uAAYc6d+925W7m8ZdySFMtf2iswBP9MPA9N3 DeBIZEWUlAP/3fnjpSqr3HEKsNZ9DyePTt5batSOJ7y0F+Ld3L9m2BzaXCWxbz3IXWkD XRp80WyCY3FFtdk4X4DZcKpcbW4JAQH3JdRs6NrJ3MRZ7Asc1N4MQeOGWEMvCjn+2+dA CIguD5A3XP51bB+/AHzBQ0CZJD/68bCfOEYIr/RHskUPeioQ3VX7x5psxzRjVmaojtHc Ig0w== X-Gm-Message-State: AKGB3mJRdtvEu5k+xdrXHfW3HD4NUoDbwkDmxchAFrjsw9Xo+TLyINor ImjdskbZ7lUmyZYHj+a5CtteFLfz7p4= X-Received: by 10.98.78.204 with SMTP id c195mr34439459pfb.51.1514529107763; Thu, 28 Dec 2017 22:31:47 -0800 (PST) Received: from cloudburst.twiddle.net (97-113-183-164.tukw.qwest.net. [97.113.183.164]) by smtp.gmail.com with ESMTPSA id c28sm76539063pfe.69.2017.12.28.22.31.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 28 Dec 2017 22:31:46 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Thu, 28 Dec 2017 22:31:07 -0800 Message-Id: <20171229063145.29167-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.14.3 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c05::244 Subject: [Qemu-devel] [PATCH 00/38] Add hppa-softmmu X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: deller@gmx.de Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Over the past 3 months, Helge and I have extended the existing support for hppa-linux-user to handle system mode as well. Helge has done all of the board-level hw/hppa work as well as adapting SeaBIOS for use with hppa. Sources for the latter are at https://github.com/hdeller/seabios-hppa.git With this patch set, we are able to install debian 8 from cdrom. We do encounter problems beyond that, with py3compile, but this patch set is large enough already. r~ Helge Deller (2): target/hppa: Skeleton support for hppa-softmmu target/hppa: Fix comment Richard Henderson (36): target/hppa: Define the rest of the PSW target/hppa: Disable gateway page emulation for system mode target/hppa: Define hardware exception types target/hppa: Split address size from register size target/hppa: Implement mmu_idx from IA privilege level target/hppa: Implement the system mask instructions target/hppa: Add space registers target/hppa: Add control registers target/hppa: Adjust insn mask for mfctl,w target/hppa: Implement rfi target/hppa: Fill in hppa_cpu_do_interrupt/hppa_cpu_exec_interrupt target/hppa: Implement unaligned access trap target/hppa: Use space registers in data operations target/hppa: Do not set cs_base to iaoq_b target/hppa: Avoid privilege level decrease during branches target/hppa: Implement IASQ target/hppa: Implement tlb_fill target/hppa: Implement external interrupts target/hppa: Implement the interval timer target/hppa: Log unimplemented instructions target/hppa: Implement I*TLBA and I*TLBP insns target/hppa: Implement P*TLB and P*TLBE insns target/hppa: Implement LDWA target/hppa: Implement LPA target/hppa: Implement LCI target/hppa: Implement SYNCDMA insn target/hppa: Implement a halt instruction hw/hppa: Implement DINO system board target/hppa: Optimize for flat addressing space target/hppa: Add system registers to gdbstub target/hppa: Add migration for the cpu target/hppa: Implement B,GATE insn target/hppa: Only use EXCP_DTLB_MISS qom: Add MMU_DEBUG_LOAD target/hppa: Use MMU_DEBUG_LOAD when reloading for CR[IIR] target/hppa: Increase number of temp regs Makefile.objs | 1 + hw/hppa/hppa_hardware.h | 64 ++ hw/hppa/hppa_sys.h | 24 + include/qom/cpu.h | 3 +- include/sysemu/arch_init.h | 1 + linux-user/hppa/target_cpu.h | 2 +- target/hppa/cpu.h | 277 +++++- target/hppa/helper.h | 43 +- arch_init.c | 2 + hw/hppa/dino.c | 520 ++++++++++ hw/hppa/machine.c | 249 +++++ hw/hppa/pci.c | 90 ++ linux-user/main.c | 28 +- linux-user/signal.c | 4 +- target/hppa/cpu.c | 52 +- target/hppa/gdbstub.c | 187 +++- target/hppa/helper.c | 120 +-- target/hppa/int_helper.c | 263 +++++ target/hppa/machine.c | 181 ++++ target/hppa/mem_helper.c | 340 +++++++ target/hppa/op_helper.c | 126 ++- target/hppa/translate.c | 1984 +++++++++++++++++++++++++++----------- default-configs/hppa-softmmu.mak | 14 + hw/hppa/Makefile.objs | 1 + hw/hppa/trace-events | 4 + target/hppa/Makefile.objs | 4 +- 26 files changed, 3894 insertions(+), 690 deletions(-) create mode 100644 hw/hppa/hppa_hardware.h create mode 100644 hw/hppa/hppa_sys.h create mode 100644 hw/hppa/dino.c create mode 100644 hw/hppa/machine.c create mode 100644 hw/hppa/pci.c create mode 100644 target/hppa/int_helper.c create mode 100644 target/hppa/machine.c create mode 100644 target/hppa/mem_helper.c create mode 100644 default-configs/hppa-softmmu.mak create mode 100644 hw/hppa/Makefile.objs create mode 100644 hw/hppa/trace-events -- 2.14.3