svn commit: r326683 - head/sys/dev/uart
Andrew Turner
andrew at FreeBSD.org
Fri Dec 8 10:05:25 UTC 2017
Author: andrew
Date: Fri Dec 8 10:05:23 2017
New Revision: 326683
URL: https://svnweb.freebsd.org/changeset/base/326683
Log:
Set the io width when using an ACPI uart. Previously it would only ever be
set when finding the uart from the device tree.
Sponsored by: DARPA, AFRL
Modified:
head/sys/dev/uart/uart_cpu_arm64.c
Modified: head/sys/dev/uart/uart_cpu_arm64.c
==============================================================================
--- head/sys/dev/uart/uart_cpu_arm64.c Fri Dec 8 08:16:36 2017 (r326682)
+++ head/sys/dev/uart/uart_cpu_arm64.c Fri Dec 8 10:05:23 2017 (r326683)
@@ -100,7 +100,8 @@ uart_cpu_acpi_scan(uint8_t interface_type)
static int
uart_cpu_acpi_probe(struct uart_class **classp, bus_space_tag_t *bst,
- bus_space_handle_t *bsh, int *baud, u_int *rclk, u_int *shiftp)
+ bus_space_handle_t *bsh, int *baud, u_int *rclk, u_int *shiftp,
+ u_int *iowidthp)
{
struct acpi_uart_compat_data *cd;
ACPI_TABLE_SPCR *spcr;
@@ -142,6 +143,7 @@ uart_cpu_acpi_probe(struct uart_class **classp, bus_sp
*classp = cd->clas;
*rclk = 0;
*shiftp = 2;
+ *iowidthp = spcr->SerialPort.BitWidth / 8;
out:
acpi_unmap_table(spcr);
@@ -169,7 +171,8 @@ uart_cpu_getdev(int devtype, struct uart_devinfo *di)
err = ENXIO;
#ifdef DEV_ACPI
- err = uart_cpu_acpi_probe(&class, &bst, &bsh, &br, &rclk, &shift);
+ err = uart_cpu_acpi_probe(&class, &bst, &bsh, &br, &rclk, &shift,
+ &iowidth);
#endif
#ifdef FDT
if (err != 0) {
More information about the svn-src-all
mailing list