Revision tags: release/14.0.0 |
|
#
4cd94c8a |
| 09-Sep-2023 |
Warner Losh <imp@FreeBSD.org> |
atkbdc: Add additional heurstic for Chromebook keyboards
It turns out that that heurstic used to determine if we have a Google coreboot, and thus have the i8042 emulation bugs, is incorrect. At leas
atkbdc: Add additional heurstic for Chromebook keyboards
It turns out that that heurstic used to determine if we have a Google coreboot, and thus have the i8042 emulation bugs, is incorrect. At least one Acer "Peppy" Chromebook has an issue because Acer space'd out the smbios.bios.version string we're using as part of the heuristic. So, if the version starts with a space, then enable the workarounds if the smbios.bios.reldate is 2018 or earlier. While not perfect, it should be a reasonable dividing line and still allow newer core boot-based machines that aren't Chromebooks to not have the workaround.
Tested by: Matthias Apitz Sponsored by: Netflix MFC After: 3 days (14.0 candiate)
show more ...
|
#
685dc743 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
#
319d2bf4 |
| 29-Jun-2023 |
Warner Losh <imp@FreeBSD.org> |
atkbc: Better test for old chromebooks
Older Chromebooks have issues in their embedded controller (EC) firmware which need working around in atkbd and atkbdc. On these systems, rather than use a sta
atkbc: Better test for old chromebooks
Older Chromebooks have issues in their embedded controller (EC) firmware which need working around in atkbd and atkbdc. On these systems, rather than use a standard EC, Google used their own arm-based EC. For a while, its firmware incorrectly implemented the i8042, requiring workaroundsd in the driver.
Implement a heuristic recommended by MrChromebox <mrchromebox@gmail.com> to detect them: If the bios.version starts with Google_, or the maker is either Google or GOOGLE, assume that it's a chromebook with the affected bios. While this isn't strictly true, the number of updated systems without the bug is very small and this will exclude all the non-Google coreboot user that use a standard EC. There's no simple way to test the hardware to see if it's implemented with the buggy EC.
Sponsored by: Netflix Reviewed by: jon@thesoo.org, MrChromebox Differential Revision: https://reviews.freebsd.org/D40789
show more ...
|
#
31b3e4f1 |
| 28-Jun-2023 |
Warner Losh <imp@FreeBSD.org> |
atkbdc: Minor style nits
'char* ' -> 'char *', per style(9)
Sponsored by: Netflix
|
#
599a4548 |
| 28-Jun-2023 |
Jon Hopper <jon@thesoo.org> |
Adds support for Purism coreboot keyboards
On Purism coreboot systems the quirks mode in atkbdc prevents built in Keyboard from being used. Add quirk to prevent that.
MFC After: 2 weeks PR: 2717
Adds support for Purism coreboot keyboards
On Purism coreboot systems the quirks mode in atkbdc prevents built in Keyboard from being used. Add quirk to prevent that.
MFC After: 2 weeks PR: 271737 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D40405
show more ...
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0 |
|
#
3a52ffb8 |
| 05-Dec-2020 |
Conrad Meyer <cem@FreeBSD.org> |
atkbd(4): Just use nitems() for quirk enumeration
Reviewed by: imp, wulf X-MFC-With: r368365 Differential Revision: https://reviews.freebsd.org/D27489
|
#
a5cc5fce |
| 05-Dec-2020 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
atkbd(4): Change quirk table end-of-list marker to NULL vendor/maker/product
This fixes regression introduced in r367349 which effectively resulted in truncation of quirk table.
PR: 250711 Submitt
atkbd(4): Change quirk table end-of-list marker to NULL vendor/maker/product
This fixes regression introduced in r367349 which effectively resulted in truncation of quirk table.
PR: 250711 Submitted by: grembo Reported by: Matthias Apitz <guru@unixarea.de> X-MFC with: r367349
show more ...
|
#
b33ba834 |
| 20-Nov-2020 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
psm(4): Disable AUX multiplexer probing on all Lenovo laptops.
Rudimentary AUX multiplexing support was added to kernel to make possible touchpad initialization on some HP EliteBook laptops with tra
psm(4): Disable AUX multiplexer probing on all Lenovo laptops.
Rudimentary AUX multiplexing support was added to kernel to make possible touchpad initialization on some HP EliteBook laptops with trackpoint.
Disable multiplexer probing on all Lenovo laptops now as they use touchpad pass-through port rather than AUX multiplexer to connect trackpoint and at least two model (X120e and X121e) is known for getting PS/2 AUX port dysfunctional after switching back to hidden multiplexing mode.
AUX MUX probing can be reenabled with setting of hw.psm.mux_disabled loader tunable to 0.
PR: 249987 Reported by: jwb MFC after: 2 weeks
show more ...
|
#
07030f33 |
| 04-Nov-2020 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
atkbdc(4): Add quirk for "System76 lemur Pro" laptops.
Currently atkbdc(4) assumes all coreboot BIOSes belonging to Chromebooks and unconditionally sets a number of quirks to workaround known issues
atkbdc(4): Add quirk for "System76 lemur Pro" laptops.
Currently atkbdc(4) assumes all coreboot BIOSes belonging to Chromebooks and unconditionally sets a number of quirks to workaround known issues.
Exclude "System76" laptops from this set as they appeared to be a traditional hardware ("lemur Pro" is a rebranded Clevo chassis) with coreboot firmware on board. KBDC_QUIRK_KEEP_ACTIVATED quirk activated for Chromebook platform makes keyboard on this devices inoperable.
"Purism Librem" laptops may require the same exclusion too.
PR: 250711 Reported by: nick.lott@gmail.com MFC after: 2 weeks
show more ...
|
Revision tags: release/12.2.0 |
|
#
bf479e13 |
| 01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
atkbdc: clean up empty lines in .c and .h files
|
Revision tags: release/11.4.0 |
|
#
bc02c18c |
| 07-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r357408 through r357661.
|
#
58aa35d4 |
| 03-Feb-2020 |
Warner Losh <imp@FreeBSD.org> |
Remove sparc64 kernel support
Remove all sparc64 specific files Remove all sparc64 ifdefs Removee indireeect sparc64 ifdefs
|
#
e9305818 |
| 25-Dec-2019 |
Kyle Evans <kevans@FreeBSD.org> |
atkbdc: use proper pointer type for KBDC
Proper locking for atkbdc will likely replace the kbdc_lock mechanism entirely with a mutex in atkbdc_softc, so that other consumers can also properly ensure
atkbdc: use proper pointer type for KBDC
Proper locking for atkbdc will likely replace the kbdc_lock mechanism entirely with a mutex in atkbdc_softc, so that other consumers can also properly ensure locking protocol is followed (e.g. psm.c:doinitialize).
The first step to doing this neatly is making KBDC less opaque so that others don't have to jump through weird casting hoops to address the mutex.
No functional change intended; this diff effectively just removes a bunch of casting. A future change may remove the KBDC typedef entirely and just opt for using `atkbdc_softc_c *` directly, but this was decidedly a good intermediate step to make these changes simple to audit.
show more ...
|
Revision tags: release/12.1.0, release/11.3.0, release/12.0.0 |
|
#
c1532e70 |
| 25-Nov-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r340869 through r340917.
|
#
80203cce |
| 24-Nov-2018 |
Vladimir Kondratyev <wulf@FreeBSD.org> |
psm(4): Add minimal support for active AUX port multiplexers
Active PS/2 multiplexing is a method for attaching up to four PS/2 pointing devices to a computer. Enabling of multiplexed mode allows co
psm(4): Add minimal support for active AUX port multiplexers
Active PS/2 multiplexing is a method for attaching up to four PS/2 pointing devices to a computer. Enabling of multiplexed mode allows commands to be directed to individual devices using routing prefixes. Multiplexed mode reports input with each byte tagged to identify its source. This method differs from one currently supported by psm(4) where so called guest device (trackpoint) is attached to special interface located on the host device (touchpad) and latter performs guest protocol conversion to special encapsulation packet format.
At present time active PS/2 multiplexing is used in some models of HP laptops e.g. EliteBook 8560w, 9470m. Enabling of absolute operation mode on such touchpads is connected with following problems: 1. Touchpad's port priority is lower than trackpoint's. That blocks information queries thus prevents touchpad detection and configuration. 2. Touchpad and trackpoint have different protocol packet sizes and sync bytes.
As PS/2 usage is on decline only minimal possible set of changes to support Synaptics touchpad and generic mouses is implemented. Active multiplexing mode is enabled only at probe stage to scan through attached PS/2 devices to query and configure Synaptics touchpad. After touchpad has been configured, mux is switched back to legacy (hidden multiplexing) mode to perform normal interrupt-driven input data processing. Overflow bit values rather than tags are used to separate packets produced by different devices. Switching back to legacy mode allows to avoid psm(4) and atkbd(4) rework to support 4 instances of mouse driver.
Note: While in hidden multiplexing mode KBC does some editing of the packet stream. It remembers the button bits from the last packet received from each device, and replaces the button bits of every packet with the logical OR of all devices’ most recent button bits. This sort of button crosstalk results in spurious button events which are inhibitted with various tricks. E.g. trackpoint middle button events are suppressed while trackpad surface is touched and touchpad left and right button events are suppressed if corresponding trackpoint buttons are pressed.
PR: 231058 Reported by: Michael Figiel <mifigiel@gmail.com> Tested by: Michael Figiel <mifigiel@gmail.com> MFC after: 2 weeks
show more ...
|
Revision tags: release/11.2.0 |
|
#
718cf2cc |
| 27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys/dev: further adoption of SPDX licensing ID tags.
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
sys/dev: further adoption of SPDX licensing ID tags.
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.
show more ...
|
Revision tags: release/10.4.0, release/11.1.0 |
|
#
5763f796 |
| 21-Oct-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r307383 through r307735.
|
#
013da020 |
| 17-Oct-2016 |
Warner Losh <imp@FreeBSD.org> |
Assume all coreboot BIOSes have the need for these workarounds because coreboot implements the keyboard controller and it's common to all Chromebooks. The workaround won't hurt and may help.
|
Revision tags: release/11.0.1, release/11.0.0 |
|
#
73a1170a |
| 20-Apr-2016 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys/dev: use our nitems() macro when it is avaliable through param.h.
No functional change, only trivial cases are done in this sweep, Drivers that can get further enhancements will be done independ
sys/dev: use our nitems() macro when it is avaliable through param.h.
No functional change, only trivial cases are done in this sweep, Drivers that can get further enhancements will be done independently.
Discussed in: freebsd-current
show more ...
|
Revision tags: release/10.3.0, release/10.2.0 |
|
#
98e0ffae |
| 27-May-2015 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge sync of head
|
#
fa1e92b6 |
| 04-Mar-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from head
|
#
072aeeb6 |
| 02-Mar-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Merge r278538 through r279514.
|
#
6c787c8f |
| 18-Feb-2015 |
Glen Barber <gjb@FreeBSD.org> |
MFH: r278593-r278966
Sponsored by: The FreeBSD Foundation
|
#
714e3c81 |
| 17-Feb-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r278756 through r278915.
|
#
6c176113 |
| 14-Feb-2015 |
Michael Gmelin <grembo@FreeBSD.org> |
Quirk based support of Chromebook keyboard found in Acer C720
This probably supports other devices based on SeaBIOS, which need to be added to the smbios based quirks table.
The functionality has b
Quirk based support of Chromebook keyboard found in Acer C720
This probably supports other devices based on SeaBIOS, which need to be added to the smbios based quirks table.
The functionality has been ported from DragonFlyBSD and adapted to FreeBSD's more general purpose environment.
Devices not covered by a quirk shouldn't be affected at all. Thanks to jhb and kostikbel for reviewing the code.
Reviewed by: kostikbel, jhb Approved by: jhb, kostikbel Differential Revision: https://reviews.freebsd.org/D1802
show more ...
|