From mboxrd@z Thu Jan 1 00:00:00 1970 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 3F268C47258 for ; Wed, 31 Jan 2024 15:59:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:References :In-Reply-To:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=W4rzPIQp8l9yqY/1GYo73qjco528pVgluvWY740275o=; b=q8gCysGYC71FC2 3dWejW0QBnStimztJSJFQR0VqH2t3xbP5P+rp2fufNptfgVM2YhUAb4Y6H9jHpz7W5v1r262Iu4I2 rIlvnOkSy6RFq1wOc51Mlttun8ET44ngAMv2F9WArZ7sRdZIqNWJUXcyZaw3MytVq/ZaKs2Dxn99V VmGC0wkQCVaDPJ4X7hfgmId+VUzb+cSQ4LIl58C1KGVvIB5vWl446USAtX4aneUrjxUvU4PuzezNH s0jKjzN5ubcYepxFOpTJ9jZX5D0tGMANVrSEm81mkNvOJHrxi1U+GJTE2IbFGvhq9mx+vaUZwCn6e wVpsK1P/IVYhwT/1ZsBg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rVCzN-00000004MJm-311o; Wed, 31 Jan 2024 15:59:01 +0000 Received: from ms.lwn.net ([2600:3c01:e000:3a1::42]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rVCzL-00000004MI2-1z1Z for linux-arm-kernel@lists.infradead.org; Wed, 31 Jan 2024 15:59:00 +0000 DKIM-Filter: OpenDKIM Filter v2.11.0 ms.lwn.net 48D7F47AA7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lwn.net; s=20201203; t=1706716731; bh=PLm8WUNIAKoIK/mO/devLpWdKufj7FVlfUUU03pGBg0=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=c4bh8QXx9iugcyu/pTN7YIw9hBi+qKv5fFBnxl9IYk/syHRzgig29LuO2sxCRGcp+ nJgEL1DNJ7NL9P3isxVgP4XnJSk6l9XHtcbISiFgpOcK07on2ssCpbLAhW7Mb7Wb/J UrTmxw8cKwdc74GZiF+7iC0B+21uXsk7HrYrd4w3taDp65SikB7OyO1Z2N6JrA1oZy RJXWY97SOnx2ClTF2yJuEV6AK04NBHVndlZ0yde7S+X0LP7NdK8GDeGHRVddOR3nM/ UtJ42x0Xoc9xOJh95NUr+91SVhaSeX51S79iLifUoLPiMRwv7e8Tj++Z3KxhYBKPvH b22L9ZOXfDZZw== Received: from localhost (unknown [IPv6:2601:280:5e00:7e19::646]) (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 ms.lwn.net (Postfix) with ESMTPSA id 48D7F47AA7; Wed, 31 Jan 2024 15:58:51 +0000 (UTC) From: Jonathan Corbet To: "Corona, Ernesto" , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-aspeed@lists.ozlabs.org" Cc: "Corona, Ernesto" , "'oleksandrs@mellanox.com'" , "Castro, Omar Eduardo" , "'omar.eduardo.castro@linux.intel.com'" , "'arnd@arndb.de'" , "'arnd@arndb.de'" , "'mchehab+samsung@kernel.org'" , "'linus.walleij@linaro.org'" , "'manivannan.sadhasivam@linaro.org'" , "'jhugo@codeaurora.org'" , "Filary, Steven A" , "'jiri@nvidia.com'" , "'vadimp@mellanox.com'" , "'amithash@fb.com'" , "'patrickw3@fb.com'" , "Chen, Luke" , "'billy_tsai@aspeedtech.com'" , "'rgrs@protonmail.com'" Subject: Re: [PATCH 30 4/7] Add ABI documentation In-Reply-To: References: Date: Wed, 31 Jan 2024 08:58:50 -0700 Message-ID: <87mssl7av9.fsf@meer.lwn.net> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240131_075859_544531_738B484E X-CRM114-Status: GOOD ( 19.49 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org "Corona, Ernesto" writes: > Added document that describe the ABI for JTAG class driver A few comments > diff --git a/Documentation/jtag/index.rst b/Documentation/jtag/index.rst > new file mode 100644 > index 000000000000..8a2761d1c17e > --- /dev/null > +++ b/Documentation/jtag/index.rst Please, let's not create another top-level directory for this; this looks like information that belongs in the userspace-api book. > @@ -0,0 +1,18 @@ > +.. SPDX-License-Identifier: GPL-2.0 > + > +============================== > +Joint Test Action Group (JTAG) > +============================== > + > +.. toctree:: > + :maxdepth: 1 > + > + jtag-summary > + jtagdev > + > +.. only:: subproject and html > + > + Indices > + ======= > + > + * :ref:`genindex` > diff --git a/Documentation/jtag/jtag-summary.rst b/Documentation/jtag/jtag-summary.rst > new file mode 100644 > index 000000000000..07cfa7a761d7 > --- /dev/null > +++ b/Documentation/jtag/jtag-summary.rst > @@ -0,0 +1,49 @@ > +.. SPDX-License-Identifier: GPL-2.0 > + > +==================================== > +Linux kernel JTAG support > +==================================== > + > +Introduction to JTAG > +==================== > + > +JTAG is an industry standard for verifying hardware. JTAG provides access to > +many logic signals of a complex integrated circuit, including the device pins. > + > +A JTAG interface is a special interface added to a chip. > +Depending on the version of JTAG, two, four, or five pins are added. > + > +The connector pins are: > + * TDI (Test Data In) > + * TDO (Test Data Out) > + * TCK (Test Clock) > + * TMS (Test Mode Select) > + * TRST (Test Reset) optional > + > +JTAG interface is designed to have two parts - basic core driver and > +hardware specific driver. The basic driver introduces a general interface > +which is not dependent of specific hardware. It provides communication > +between user space and hardware specific driver. > +Each JTAG device is represented as a char device from (jtag0, jtag1, ...). > +Access to a JTAG device is performed through IOCTL calls. > + > +Call flow example: > +:: You can express this more readably as just Call flow example:: > + > + User: open -> /dev/jatgX -> JTAG core driver -> JTAG hardware specific driver > + User: ioctl -> /dev/jtagX -> JTAG core driver -> JTAG hardware specific driver > + User: close -> /dev/jatgX -> JTAG core driver -> JTAG hardware specific driver > + > + > +THANKS TO > +--------- > +Contributors to Linux-JTAG discussions include (in alphabetical order, > +by last name): > + > +- Omar Castro > +- Ernesto Corona > +- Steven Filary > +- Vadim Pasternak > +- Jiri Pirko > +- Oleksandr Shamray > +- Billy Tsai > \ No newline at end of file Files should end in a newline [...] > +=============== ========= ======= ===================================================== > +Bit Field Bit begin Bit end Description > +=============== ========= ======= ===================================================== > +rsvd 25 31 Reserved, not used > +pad data 24 24 Value used for pre and post padding. Either 1 or 0. > +post pad count 12 23 Number of padding bits to be executed after transfer. > +pre pad count 0 11 Number of padding bit to be executed before transfer. > +=============== ========= ======= ===================================================== You should be able to wrap the final column of the table, avoiding these long lines. Thanks, jon _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel