From patchwork Mon Jun 22 00:44:52 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Amitay Isaacs X-Patchwork-Id: 1314029 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49qrL11KN8z9sRR for ; Mon, 22 Jun 2020 10:45:29 +1000 (AEST) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=ozlabs.org Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; secure) header.d=ozlabs.org header.i=@ozlabs.org header.a=rsa-sha256 header.s=201707 header.b=q4T2nIZT; dkim-atps=neutral Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 49qrL10fGxzDqbq for ; Mon, 22 Jun 2020 10:45:29 +1000 (AEST) X-Original-To: pdbg@lists.ozlabs.org Delivered-To: pdbg@lists.ozlabs.org Received: from ozlabs.org (bilbo.ozlabs.org [203.11.71.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 49qrKg15wtzDqWf for ; Mon, 22 Jun 2020 10:45:11 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=none dis=none) header.from=ozlabs.org Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=ozlabs.org header.i=@ozlabs.org header.a=rsa-sha256 header.s=201707 header.b=q4T2nIZT; dkim-atps=neutral Received: from authenticated.ozlabs.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.ozlabs.org (Postfix) with ESMTPSA id 49qrKf37Rjz9sRR; Mon, 22 Jun 2020 10:45:10 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ozlabs.org; s=201707; t=1592786710; bh=QXpNk4SEeBfXEXygujQRLJF6lZ3no0ueIqEmo5/J+fI=; h=From:To:Cc:Subject:Date:From; b=q4T2nIZT0qSc+x/a7Y5LGWEh3e5+n31/+3tMbTx5AKcBENF/XKXPURgC35EIzg+wL 2/FeYtBbY8isNQpfglzJ5qh9zewtpL2V2YsWVz2goJwOYE/EXdtKrFh8jh8kIok22y wL09E6Tas+6+W/ZUktyYsYI2goXVy1u6Oc+C/j24HXabdBYkUo+p1Yer4p/q93OAc1 QD9VPyZ4jDgMz6cFEOmcdghK4X9uX98u4k6cKpND+r+kg7tlkFZh4zGunEjGIu4kvw qK9HfZgFDEcErQqFQiVRJjUbszkmBCQhGjpedCptGIdwAWNicL5ZmpquerZ5KyXB2P +hDWDi8ffR+Aw== From: Amitay Isaacs To: pdbg@lists.ozlabs.org Date: Mon, 22 Jun 2020 10:44:52 +1000 Message-Id: <20200622004501.12889-1-amitay@ozlabs.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Subject: [Pdbg] [PATCH 0/9] Make register access into thread procedures X-BeenThere: pdbg@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "mailing list for https://github.com/open-power/pdbg development" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Amitay Isaacs Errors-To: pdbg-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org Sender: "Pdbg" Currently thread hardware procedures include support for ramming instructions. The register access is then implemented using ramming instructions support. Put all register access methods as thread procedures, that way alternate mechanisms can be supported (e.g. using sbefifo). Amitay Isaacs (9): libpdbg: Make thread procedures consistent libpdbg: Avoid direct access of class in pdbg_target libpdbg: Avoid direct access of class in pdbg_target libpdbg: Add SPR definitions libpdbg: Use SPR definitions instead of hard-coded values libpdbg: Add register access procedures to thread libpdbg: Rearrange thread procedures for register access libsbefifo: Fix register access chip-ops libpdbg: Add sbefifo based thread register access Makefile.am | 4 +- libpdbg/adu.c | 16 +- libpdbg/chip.c | 304 +++++++---------------------------- libpdbg/chip.h | 24 ++- libpdbg/hwunit.h | 25 ++- libpdbg/p8chip.c | 34 ++-- libpdbg/p9chip.c | 26 ++- libpdbg/sbefifo.c | 260 ++++++++++++++++++++++++++++++ libpdbg/sprs.h | 167 +++++++++++++++++++ libpdbg/thread.c | 328 ++++++++++++++++++++++++++++++++++++++ libsbefifo/cmd_register.c | 12 +- libsbefifo/libsbefifo.h | 4 +- src/pdbgproxy.c | 2 +- 13 files changed, 915 insertions(+), 291 deletions(-) create mode 100644 libpdbg/sprs.h create mode 100644 libpdbg/thread.c