From nobody Tue Feb 13 11:51:51 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TZ06b5Sxcz5B7RB; Tue, 13 Feb 2024 11:51:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TZ06b2vX5z44hk; Tue, 13 Feb 2024 11:51:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1707825111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=crnkgNeEsxJJ9glejUF3KJsns/W7I7wQrZpTX/j6rq0=; b=U+p2Wuhvu21M7qDbAo8xH26jRTKAK1E8TZEE2YYZoyn03n2PFmeXsM1mwTIIE1VvydAr0N dOg1pIFPfnxQU0ETR4r2I4EaaEvBAS4nX0zsqgDjh8/p5wHNwuTRZO6jZ11BnBTEfykj8+ 4R51NESROlY73/2ef/+kt/m11yYJ0VO1ZY5OI+XFNwrjBpl7gFfMOuDZGsrZ4+/e2qcUnY jxBPl219LRuiSZwxLjDo3JvHtbG4t+Twh4WBZoyC67Cnwwsb8knNAt2FKrKQJDbXt5Y0wf mkfBoKfOZ2Dzsasl5VQlzvpPd3B1ajug0/QWg20s9m14xxa5pstI1Uoc/b29bQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1707825111; a=rsa-sha256; cv=none; b=Tgo/AuQzSbTmzxBsViz0iHsO4rxCKn8e07H72/uUSuEKp/0E1w5ijdmetz2QUScovyXl4w fNx3rwEjgKSOF/DUEdf8y/+7N0dC3wNF2y2kD+9I34TYVMUknACrt+JfIxZe52MPw/hEd7 CznwmU6j0WGEGmCufcpN+r/jblM7qy7+3+Njf9CslB3EhIt/psscxQwKaeKqYCpb2BvqAe 10evMXmF6MDkzfr3I3RLeqCTCQ8LFrexFahK0va0IrrBlYXuN6Y8UbBLg2ZeB6F7kSEWH3 MUihF9iCQXmGGh8BllOKOjw7mTDI2xCSCdpfJgnoa7iOBi2pQW5xYVolnVMmKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1707825111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=crnkgNeEsxJJ9glejUF3KJsns/W7I7wQrZpTX/j6rq0=; b=LZditPGhJB3/JK0yv2MI/EqEHwkvSzwILU8CDXMVe8RMB9fKpvo6b3+9u2y/UlBFDHdtPe F5Q6KQpwFG2pMGfrlWyvI1w+XC+Jh7xWf0k6JNufGcWdi+wi13dqTOIAgflJca6w+ACvwT ebGGAaBt/RHYjMdrG8otEyRLA9+FlMbOArYSHljChS8UscgSoruBehBYUDF6BTJASwSNZb W7pwZGL68zYpOYtHPIwoLTXNRgw+8+CKvRJXfGpEhXIjE9F9b/1dwE/Jp8UKN0oAVspWNG rnu5kS36rwhFZntEwnsHn6aTQ/5yJBvBo/zutHBnUXZE554mgbi+n+MJ0C1jJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TZ06b20r4z1Crl; Tue, 13 Feb 2024 11:51:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 41DBpp2S045915; Tue, 13 Feb 2024 11:51:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 41DBpppD045912; Tue, 13 Feb 2024 11:51:51 GMT (envelope-from git) Date: Tue, 13 Feb 2024 11:51:51 GMT Message-Id: <202402131151.41DBpppD045912@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: eae36de826cc - main - dev/uart: Support setting the register io width List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eae36de826cc6fde3a78b1febad824dad20e004d Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=eae36de826cc6fde3a78b1febad824dad20e004d commit eae36de826cc6fde3a78b1febad824dad20e004d Author: Andrew Turner AuthorDate: 2024-01-08 15:22:58 +0000 Commit: Andrew Turner CommitDate: 2024-02-13 11:48:52 +0000 dev/uart: Support setting the register io width Some uarts require a specific register width. Support setting this in the kernel environment. Reviewed by: imp (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D43362 --- sys/dev/uart/uart_subr.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/dev/uart/uart_subr.c b/sys/dev/uart/uart_subr.c index e7570e173358..03c7fd8caea9 100644 --- a/sys/dev/uart/uart_subr.c +++ b/sys/dev/uart/uart_subr.c @@ -47,6 +47,7 @@ #define UART_TAG_SB 8 #define UART_TAG_XO 9 #define UART_TAG_BD 10 +#define UART_TAG_RW 11 static bus_addr_t uart_parse_addr(const char **p) @@ -148,6 +149,10 @@ uart_parse_tag(const char **p) tag = UART_TAG_RS; goto out; } + if ((*p)[0] == 'r' && (*p)[1] == 'w') { + tag = UART_TAG_RW; + goto out; + } if ((*p)[0] == 's' && (*p)[1] == 'b') { tag = UART_TAG_SB; goto out; @@ -225,6 +230,7 @@ uart_getenv(int devtype, struct uart_devinfo *di, struct uart_class *class) /* Set defaults. */ di->bas.chan = 0; di->bas.regshft = 0; + di->bas.regiowidth = 1; di->bas.rclk = 0; di->baudrate = 0; di->databits = 8; @@ -264,6 +270,9 @@ uart_getenv(int devtype, struct uart_devinfo *di, struct uart_class *class) case UART_TAG_RS: di->bas.regshft = uart_parse_long(&spec); break; + case UART_TAG_RW: + di->bas.regiowidth = uart_parse_long(&spec); + break; case UART_TAG_SB: di->stopbits = uart_parse_long(&spec); break;