<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/uart/uart_dev_pl011.c, branch release/12.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2019-05-28T22:22:40Z</updated>
<entry>
<title>MFC r345405,345406,346228,346657,348195,348198: UART SPCR fixes.</title>
<updated>2019-05-28T22:22:40Z</updated>
<author>
<name>Colin Percival</name>
<email>cperciva@FreeBSD.org</email>
</author>
<published>2019-05-28T22:22:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=92182fab8a21dc8f5356ffe82a6562b99b8a8516'/>
<id>urn:sha1:92182fab8a21dc8f5356ffe82a6562b99b8a8516</id>
<content type='text'>
r345405: Obey SPCR AccessWidth parameter.
r345406: Initialize uart_bus_space_mem on arm64.
r346228: Add quirk to ignore AccessWidth on PL011 UART.
r346657: Handle SPCR BaudRate = 0.
r348195: Extract arm64 SPCR code and make it MI; use on x86 too.
r348198: Fix for r348195.

This unbreaks the console on EC2 a1.* and *.metal instances.

Sponsored by:	https://www.patreon.com/cperciva
</content>
</entry>
<entry>
<title>add snps IP uart support / genaralize UART</title>
<updated>2018-08-19T21:10:21Z</updated>
<author>
<name>Matt Macy</name>
<email>mmacy@FreeBSD.org</email>
</author>
<published>2018-08-19T21:10:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=381388b9c48b07b08199b07b7657d46e8fcb59b0'/>
<id>urn:sha1:381388b9c48b07b08199b07b7657d46e8fcb59b0</id>
<content type='text'>
This is an amalgam of a patch by Doug Ambrisko to
generalize uart_acpi_find_device, imp moving the
ACPI table to uart_dev_ns8250.c and advice by jhb
to work around a bug in the EPYC 3151 BIOS
(the BIOS incorrectly marks the serial ports as
disabled)

Reviewed by: imp
MFC after: 8 weeks
Differential Revision: https://reviews.freebsd.org/D16432
</content>
</entry>
<entry>
<title>The Arm pl011 driver assumes it's running a devicetree based system.</title>
<updated>2018-02-28T15:02:27Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2018-02-28T15:02:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=92457451f4e936c87cba1534628b6014b5501194'/>
<id>urn:sha1:92457451f4e936c87cba1534628b6014b5501194</id>
<content type='text'>
It calls OF_* functions to check if it needs to implement workarounds.
This may not be the case on arm64 where we support both FDT and ACPI.
Fix this by checking if we are booting on FDT before calling these checks.

Reviewed by:	ian
Sponsored by:	DARPA, AFRL
Sponsored by:	Cavium (Hardware)
Differential Revision:	https://reviews.freebsd.org/D14515
</content>
</entry>
<entry>
<title>Teach the Arm pl011 driver to attach to a SBSA uart. This is defined in</title>
<updated>2018-02-25T19:43:00Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2018-02-25T19:43:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=615395d9851af5e55ca315ba25b7f787c2e4af13'/>
<id>urn:sha1:615395d9851af5e55ca315ba25b7f787c2e4af13</id>
<content type='text'>
the Server Base System Architecture to be a subset of the pl011 r1p5. As
we don't use the removed features it is safe to just attach to the existing
driver as is.

Sponsored by:	DARPA, AFRL
</content>
</entry>
<entry>
<title>Rename the FDT compat_data array to a bus-specific name.</title>
<updated>2018-02-25T19:33:27Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2018-02-25T19:33:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=db65b25f88676dc213bf6da75e257cf3727b15a5'/>
<id>urn:sha1:db65b25f88676dc213bf6da75e257cf3727b15a5</id>
<content type='text'>
Sponsored by:	DARPA, AFRL
</content>
</entry>
<entry>
<title>Do pass removing some write-only variables from the kernel.</title>
<updated>2017-12-25T04:48:39Z</updated>
<author>
<name>Alexander Kabaev</name>
<email>kan@FreeBSD.org</email>
</author>
<published>2017-12-25T04:48:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=151ba7933aab5c8edc094715bffd9b97d84d2407'/>
<id>urn:sha1:151ba7933aab5c8edc094715bffd9b97d84d2407</id>
<content type='text'>
This reduces noise when kernel is compiled by newer GCC versions,
such as one used by external toolchain ports.

Reviewed by: kib, andrew(sys/arm and sys/arm64), emaste(partial), erj(partial)
Reviewed by: jhb (sys/dev/pci/* sys/kern/vfs_aio.c and sys/kern/kern_synch.c)
Differential Revision: https://reviews.freebsd.org/D10385
</content>
</entry>
<entry>
<title>sys/dev: further adoption of SPDX licensing ID tags.</title>
<updated>2017-11-27T14:52:40Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-27T14:52:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=718cf2ccb9956613756ab15d7a0e28f2c8e91cab'/>
<id>urn:sha1:718cf2ccb9956613756ab15d7a0e28f2c8e91cab</id>
<content type='text'>
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
</content>
</entry>
<entry>
<title>Extend the pl011 small-fifos fix to other SoCs that indicate rev 5</title>
<updated>2017-03-11T22:34:02Z</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2017-03-11T22:34:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bf8bdd6762b3eaef7ddb1203600c06c0ed8331b4'/>
<id>urn:sha1:bf8bdd6762b3eaef7ddb1203600c06c0ed8331b4</id>
<content type='text'>
hardware but lack the larger fifos rev 5 hardware should have.

The linux world (where our FDT data comes from) solved this by adding
a new property to pl011 nodes, "arm,primecell-periphid".  When this
property is present, its values override the values in the hardware
periphid registers.  For pl011 rev 5 hardware with small fifos, they
override the id so that it appears to be rev 4 hardware.

The driver now uses the new property when present.  It also continues
to check the device compat string, to handle older fdt data that may
still be in use on existing systems (on RPi systems it is common to
update system software without updating fdt data which is part of the
boot firmware).

Reviewed by:	imp
</content>
</entry>
<entry>
<title>Handle fifo size differences between older and newer revs of pl011 hardware.</title>
<updated>2017-03-08T18:53:32Z</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2017-03-08T18:53:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2cb357c5cd2ba914dcffcd1fa4301beff2356125'/>
<id>urn:sha1:2cb357c5cd2ba914dcffcd1fa4301beff2356125</id>
<content type='text'>
Starting with rev 5 (which is inexplicably indicated by a version number
of '3' in the Peripheral ID register), the pl011 doubled the size of the
rx and tx fifos, to 32 bytes, so read the ID register and set the size
variables in the softc accordingly.

An interesting wrinkle in this otherwise-simple concept is that the
bcm2835 SoC, used in Raspberry Pi systems among others, has the rev 5
pl011 hardware, but somehow also has the older 16-byte fifos.  We check
the FDT data to see if the hardware is part of a bcm283x system and use
the smaller size if so.

Thanks to jchandra@ for pointing out that newer hardware has bigger fifos.
</content>
</entry>
<entry>
<title>Reconfigure the fifo watermark levels on the pl011 uart to interrupt when</title>
<updated>2017-03-04T22:00:05Z</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2017-03-04T22:00:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ac0577afe964ea3e643aac877ef8369261cd5a69'/>
<id>urn:sha1:ac0577afe964ea3e643aac877ef8369261cd5a69</id>
<content type='text'>
the fifos are 3/4 full (rc) or empty (tx).
</content>
</entry>
</feed>
