Received: by 2002:a05:7412:d1aa:b0:fc:a2b0:25d7 with SMTP id ba42csp1747198rdb; Wed, 31 Jan 2024 07:59:04 -0800 (PST) X-Google-Smtp-Source: AGHT+IGwv2ZS36sAGn/1n0KFagWD1jivgXm9Ncr2eZ1DpM3s3zgBGVM5dlT0+267aCkaAHCy7hY6 X-Received: by 2002:a05:622a:1a07:b0:42a:75a9:7cb with SMTP id f7-20020a05622a1a0700b0042a75a907cbmr2273953qtb.65.1706716743963; Wed, 31 Jan 2024 07:59:03 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706716743; cv=pass; d=google.com; s=arc-20160816; b=qvNNyeFyDR5fSQ+z1foPTa3EXZY7WLInvv9tsKWp7ZjtS4LIjKD06afVqDhwJF0Dgu YpcvH8gtxW/NUoMJ/uEgTFyCAV4vGwGFVgVFzDpmOZ0ppwItyf7YDJdnnIuqeIOuCJQo qEm75Sr+EbE6VRknKvBpdaw2b56E/3jcMyDLALupENdyb/IewOreXUIZNJj/9rT74W77 6Ga/T2InS1Pp5/P/gzjGyUKxrKVhs27OllnS9adHiV6lZXEKPfO+LLb7skERHM2JCYqr RqzezPQUxZwDPFSCKX9py9PKa6E4rSp6LIs+kl8I2Vmf8fmTowztzOT2W7RJ7EAxfQWm AF4Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:list-unsubscribe:list-subscribe:list-id:precedence :message-id:date:references:in-reply-to:subject:cc:to:from :dkim-signature:dkim-filter; bh=PLm8WUNIAKoIK/mO/devLpWdKufj7FVlfUUU03pGBg0=; fh=Dh5qcAa18EbJHMtY4iiQ74mvqe6LJBnX605pL8iltkk=; b=r7tN6fJ24wxy8A39Fx+UBv1QZpSZB7p/FbU8wpwvQ72rh8dhBT+ZrInKqWJb1L7899 Lg7I6tLMr3urQfr09u9VSoZVn8S/GpA+jwgu+gCwBLMenSVWc3MNbA0MagZMK3uIl4Kg XIjEyZXKJb+1pILMqZJPttZpdH114JcSMskUnWS/Lkag0U72ThBBmEU0ZQqWkq9yUYKH a/NymW33il4E3N5zO496jH6/KPJAI58bumy1LNvgzbv+TMPG8O8oRGwW5OWbj+LyB3In c201vli25L7FY2OnEWRGMU17lakzDJFRERZz6YOs8mkk1EiyHDybPUfC833uBKavaOF8 x+fA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@lwn.net header.s=20201203 header.b=c4bh8QXx; arc=pass (i=1 spf=pass spfdomain=lwn.net dkim=pass dkdomain=lwn.net dmarc=pass fromdomain=lwn.net); spf=pass (google.com: domain of linux-kernel+bounces-46746-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-46746-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=lwn.net X-Forwarded-Encrypted: i=1; AJvYcCXMeSj6+Gw1VfFIPtbMOtzvoOCI7S+rCA++/6HiGtn5w+gHzLj02z/+nFf9CeZzX00DkecuV6UmhNmovLOM4PirWXD5QmvFEvFNaJP2IQ== Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id j16-20020ac85f90000000b0042aaea7ad54si5360393qta.525.2024.01.31.07.59.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 Jan 2024 07:59:03 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-46746-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@lwn.net header.s=20201203 header.b=c4bh8QXx; arc=pass (i=1 spf=pass spfdomain=lwn.net dkim=pass dkdomain=lwn.net dmarc=pass fromdomain=lwn.net); spf=pass (google.com: domain of linux-kernel+bounces-46746-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-46746-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=lwn.net Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id A7A3A1C20D00 for ; Wed, 31 Jan 2024 15:59:03 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4F11612A176; Wed, 31 Jan 2024 15:58:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=lwn.net header.i=@lwn.net header.b="c4bh8QXx" Received: from ms.lwn.net (ms.lwn.net [45.79.88.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8967E12A148; Wed, 31 Jan 2024 15:58:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=45.79.88.28 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706716736; cv=none; b=UAdCViHb0tSEWhGfOtAznGK63V9s0ZzWbonYRs034/2bP0B9jYZVLyNxTfye8X3vbzu8O3F7zp3dEUqcv2wI8bbFcOh+sx7NPpmo2QQR5GYYZV2mTrsE0uZtbM8mGcYmg3dHsMHqq3n7qcgFVrF2xZcwwk0m03Gm0s2fKh1j+DU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706716736; c=relaxed/simple; bh=Y/Q3xsF6bD0RrFVjl35hYlQmnoNUueb0qo3uoYGenB0=; h=From:To:Cc:Subject:In-Reply-To:References:Date:Message-ID: MIME-Version:Content-Type; b=AzZbN5vAisppOYi9dZZLEuNkOEfwor/MDH6/Mc2Mduid+4diE4A0j4VR8oNfv85fPSCqD7pmvC1G9mvA91clrIy6oW+boGDOoqoLn85OCH8uAP/cSEQj4v7mJ19GtIWzNDmUInm6xXRIpXywdTo+92O9dtrFuMOxjhh8g/Q7lO0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lwn.net; spf=pass smtp.mailfrom=lwn.net; dkim=pass (2048-bit key) header.d=lwn.net header.i=@lwn.net header.b=c4bh8QXx; arc=none smtp.client-ip=45.79.88.28 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lwn.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=lwn.net 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> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain "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