Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
19374b1
Proposes fix to Synaptics touchpad not working after sleep wake, and …
KDERazorback Jun 23, 2020
c43a1c7
Removed Touchpad reset code from Ctrl+Alt+Del key combo handler
KDERazorback Jun 23, 2020
071850a
add missing external references
naveenkrdy Jul 11, 2020
ee051d3
Allow unpressing keys when the keyboard is disable. Fix issue that Co…
Jul 12, 2020
475e141
Ability to disable keyboard through message (from separate driver)
zhen-zen Jul 5, 2020
75c962b
Fix Clang Analyze; rename for less confusion
zhen-zen Jul 5, 2020
60a4566
Update Changelog.md
usr-sse2 Jul 12, 2020
6883c22
Fix changelog formatting
vandroiy2013 Aug 3, 2020
179cd72
Bump version
vandroiy2013 Aug 3, 2020
d5f0541
Get ACPI notification for brightness keys from GFX0.DD1F/DD02 (#22)
zhen-zen Sep 13, 2020
9a8cd08
Initial MacKernelSDK and Xcode 12 compatibility
vit9696 Sep 21, 2020
1e2925d
Workaround for ICL/CML brightness keys (#23)
zhen-zen Sep 22, 2020
cc8f931
Sync changelog
vit9696 Sep 22, 2020
bd827d3
Build: Added -jobs 1
Andrey1970AppleLife Sep 22, 2020
383e672
Fix typo in Changelog (#25)
hieplpvip Sep 25, 2020
ac8c2bb
Implement Elan PS/2 touchpad support (#24)
BAndysc Sep 28, 2020
86d8fb2
Workaround for buggy vendor backlight implements (#26)
zhen-zen Sep 28, 2020
bd1a11c
Sync changelog
vit9696 Sep 28, 2020
4f4ad8e
Revert "Workaround for buggy vendor backlight implements (#26)"
Sep 28, 2020
153bd80
Fix version and code analysis
Sep 28, 2020
6d3b230
Remove obsolete ACPI brightness control (#28)
zhen-zen Sep 30, 2020
f0797ce
Remove dead code in VoodooPS2Elan
hieplpvip Oct 1, 2020
bcc187d
Improve key time dispatch (#30)
hieplpvip Oct 1, 2020
a5d2997
Bump version
vandroiy2013 Oct 5, 2020
f579efa
Fix timestamp type for PS2KeyInfo; receiving PS2KeyInfo from other ke…
zhen-zen Oct 12, 2020
d367cad
Sync changelog
vit9696 Oct 12, 2020
7512e01
Fixed dynamic coordinate refresh for ELAN v3 touchpads
vit9696 Oct 11, 2020
650b569
Bump version
vandroiy2013 Nov 2, 2020
428b310
Disable building for arm64
vit9696 Nov 23, 2020
cff27a4
Switch to GitHub Actions (#34)
zhen-zen Dec 2, 2020
346dc1f
Add Coverity analysis
vit9696 Dec 2, 2020
3355926
Add Coverity shield
vit9696 Dec 2, 2020
096f654
Disable PrntScr remap by default (#33)
zhen-zen Dec 2, 2020
1052e19
Disable Command and Option swap by default
vit9696 Dec 6, 2020
6765507
Bump version
vandroiy2013 Dec 7, 2020
163a76f
Add interaction with SMBus driver (#36)
averycblack Dec 24, 2020
6763f75
Sync changelog
vit9696 Dec 24, 2020
1afec6e
Provide docs for ELAN wake issues
vit9696 Jan 2, 2021
fbd15f0
Bump version
vandroiy2013 Jan 6, 2021
dc35712
fix issue with registering of services matched by property name "RM,…
lvs1974 Jan 8, 2021
552bb9b
Added NumLockSupport & NumLockOnAtBoot
chilledHamza Feb 20, 2021
7c5cf7b
Bump version
Andrey1970AppleLife Feb 25, 2021
ab49b27
Bump version
Andrey1970AppleLife Mar 2, 2021
69c29bc
Added `DisableDeepSleep` to workaround ACPI S3 wakes on some Synaptic…
vit9696 Apr 22, 2021
4f14db6
Bump version
Andrey1970AppleLife May 3, 2021
f0c7fda
Fix incorrect command gate init in VoodooPS2Trackpad
Goldfish64 Jun 14, 2021
b5bb1a0
Bump version
Andrey1970AppleLife Jul 5, 2021
a41ad20
Add multiplexing support (#38)
averycblack Aug 20, 2021
b4d9958
Sync changelog
vit9696 Aug 20, 2021
dd91aae
Remove less than 0 checks (#39)
averycblack Aug 22, 2021
d218f51
Bump version
Andrey1970AppleLife Sep 7, 2021
4bdf2d4
Fix power actions in multiplexing mode (#40)
averycblack Oct 2, 2021
aee1b3a
Sync changelog
vit9696 Oct 3, 2021
dd6cf33
Bump version
Andrey1970AppleLife Oct 4, 2021
8998821
Only set _muxPresent on boot (#41)
averycblack Oct 10, 2021
25335ff
Sync changelog
vit9696 Oct 11, 2021
6f9a2b1
Simplify mux logic (#42)
averycblack Oct 17, 2021
6e64b33
Bump version
Andrey1970AppleLife Nov 2, 2021
46e4af8
Add ALPS touch support (#44)
SkyrilHD Feb 21, 2022
8954e29
Sync changelog
vit9696 Feb 21, 2022
f5e4069
Small fixes for ALPS (#46)
SkyrilHD Feb 21, 2022
d915926
VoodooPS2Elan - Fixed trackpoint scrolling in the wrong direction (#47)
antoniomcr96 Mar 7, 2022
6b4a2db
Sync changelog
vit9696 Mar 7, 2022
6e2666a
Bump version
Andrey1970AppleLife Mar 8, 2022
9300207
Update to GitHub Actions v3
PMheart Apr 25, 2022
2e3bf7c
Fix bitmask calculation
PMheart Apr 25, 2022
b541fe3
Fix build (#49)
PMheart May 23, 2022
2f7dac2
Fix kernel panics on ALPS touchpads and more (#50)
SkyrilHD Jun 25, 2022
67cfa83
Set IOProbeScore to 1500 to fix newer ALPS touchpads (#51)
SkyrilHD Jul 4, 2022
fdb8be5
Fix variable shadowing (#52)
PMheart Aug 1, 2022
4d8fd01
Bump version
Andrey1970AppleLife Aug 6, 2022
15fd4cd
Bump version
Andrey1970AppleLife Sep 5, 2022
2f0d204
Replace kDP_SetDefaultsAndDisable with kDP_SetDefaults to fix keyboar…
diepeterpan Sep 29, 2022
fffa5fe
Sync changelog
vit9696 Sep 29, 2022
18853a1
Bump version
Andrey1970AppleLife Oct 5, 2022
ef5f50f
Add kernel parameter for kbd(port 0) only mode (#55)
Kethen Dec 4, 2022
c413966
Sync changelog
vit9696 Dec 4, 2022
dec58cc
Bump version
Andrey1970AppleLife Dec 6, 2022
f76cb96
Refactor Synaptics driver (#54)
averycblack Dec 27, 2022
dac4bb4
Sync changelog
vit9696 Dec 27, 2022
3f7f910
Bump version
Andrey1970AppleLife Jan 2, 2023
f7735a2
Fixed device count detection when `ps2rst=0` is set (#57)
averycblack Mar 4, 2023
6ff8271
Fixed handleClose not being called by VoodooInput (#56)
averycblack Mar 4, 2023
89ae563
Bump version
Andrey1970AppleLife Mar 6, 2023
a4a3f14
Remove actAsTrackpad and related logic (#58)
averycblack Apr 1, 2023
4e27bd9
Sync Changelog
vit9696 Apr 1, 2023
db22ab1
Use VoodooInput Trackpoint logic for Elan Touchpads (#60)
averycblack Apr 2, 2023
410118b
Sync Changelog
averycblack Apr 2, 2023
7f4e069
Bump version
Andrey1970AppleLife Apr 3, 2023
50ae04a
HID VoodooPS2Keyboard
averycblack Oct 20, 2023
8e05d4f
Revert "HID VoodooPS2Keyboard"
averycblack Oct 20, 2023
daae383
Change minimum macOS to 10.10 (#62)
Lost-Entrepreneur439 Sep 4, 2024
43dac6d
Sync changelog
vit9696 Sep 4, 2024
4750716
SMBus Companion Devices (#63)
averycblack Oct 4, 2024
80e0171
Sync Changelog
averycblack Oct 4, 2024
f381400
Bump version
averycblack Oct 12, 2024
7350e3e
Fixed multiple PS2/SMBus devices attaching (#64)
averycblack Oct 13, 2024
bdbf806
Disable PS/2 stub on shutdown (#65)
averycblack Oct 13, 2024
3175575
Bump version
Andrey1970AppleLife Dec 29, 2024
b6713c3
Update CI badge links
Andrey1970AppleLife Jan 7, 2025
7eab4a3
Update GitHub actions (#67)
averycblack Nov 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: CI

on:
push:
pull_request:
workflow_dispatch:
release:
types: [published]

env:
PROJECT_TYPE: KEXT

jobs:
build:
name: Build
runs-on: macos-latest
env:
JOB_TYPE: BUILD
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v5
with:
repository: acidanthera/MacKernelSDK
path: MacKernelSDK
- name: CI Bootstrap
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1
- name: VoodooInput Bootstrap
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/VoodooInput/master/VoodooInput/Scripts/bootstrap.sh) && eval "$src" || exit 1

- run: xcodebuild -jobs 1 -configuration Debug
- run: xcodebuild -jobs 1 -configuration Release

- name: Upload to Artifacts
uses: actions/upload-artifact@v4
with:
name: Artifacts
path: build/*/*/*.zip
- name: Upload to Release
if: github.event_name == 'release'
uses: svenstaro/upload-release-action@81c65b7cd4de9b2570615ce3aad67a41de5b1a13
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/*/*/*.zip
tag: ${{ github.ref }}
file_glob: true

analyze-clang:
name: Analyze Clang
runs-on: macos-latest
env:
JOB_TYPE: ANALYZE
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v5
with:
repository: acidanthera/MacKernelSDK
path: MacKernelSDK
- name: CI Bootstrap
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1
- name: VoodooInput Bootstrap
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/VoodooInput/master/VoodooInput/Scripts/bootstrap.sh) && eval "$src" || exit 1

- run: xcodebuild analyze -quiet -scheme VoodooPS2Controller -configuration Debug CLANG_ANALYZER_OUTPUT=plist-html CLANG_ANALYZER_OUTPUT_DIR="$(pwd)/clang-analyze" && [ "$(find clang-analyze -name "*.html")" = "" ]
- run: xcodebuild analyze -quiet -scheme VoodooPS2Controller -configuration Release CLANG_ANALYZER_OUTPUT=plist-html CLANG_ANALYZER_OUTPUT_DIR="$(pwd)/clang-analyze" && [ "$(find clang-analyze -name "*.html")" = "" ]

analyze-coverity:
name: Analyze Coverity
runs-on: macos-latest
env:
JOB_TYPE: COVERITY
if: github.repository_owner == 'acidanthera' && github.event_name != 'pull_request'
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v5
with:
repository: acidanthera/MacKernelSDK
path: MacKernelSDK
- name: CI Bootstrap
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/ci-bootstrap.sh) && eval "$src" || exit 1
- name: Run Coverity
run: |
src=$(/usr/bin/curl -Lfs https://raw.githubusercontent.com/acidanthera/ocbuild/master/coverity/covstrap.sh) && eval "$src" || exit 1
env:
COVERITY_SCAN_TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
COVERITY_SCAN_EMAIL: ${{ secrets.COVERITY_SCAN_EMAIL }}
COVERITY_BUILD_COMMAND: xcodebuild -configuration Release
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ xcuserdata
xcshareddata
project.xcworkspace
VoodooInput
/MacKernelSDK
34 changes: 0 additions & 34 deletions .travis.yml

This file was deleted.

81 changes: 81 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,90 @@
VoodooPS2 Changelog
============================
#### v2.3.7
- Fixed multiple PS2/SMBus devices attaching
- Fixed eratic pointer in bootpicker by disabling SMBus/PS2 devices on shutdown

#### v2.3.6
- Lowered macOS requirements to 10.10
- Added PS/2 stub driver for better VoodooRMI compatibility
- Removed old external reset interface originally used by VoodooRMI

#### v2.3.5
- Removed actAsTrackpad and related logic
- Fix Trackpoints connected to Elan Touchpads
- Use VoodooInput Trackpoint logic for Elan Touchpads

#### v2.3.4
- Fixed device count detection when `ps2rst=0` is set
- Fixed handleClose not being called by VoodooInput

#### v2.3.3
- Fixed rapidly opening pages in browsers while scrolling with the trackpoint
- Fixed buttons on various trackpads (especially those without trackpoints attached)
- Fixed DynamicEWMode problem on Lenovo ThinkPad Laptops (acidanthera/bugtracker#890)

#### v2.3.2
- Added `ps2kbdonly=1` argument not to disable touchpad line on reboot, thx @Kethen

#### v2.3.1
- Fixed disabled keyboard after reboot

#### v2.3.0
- Fixed variable shadowing

#### v2.2.9
- Improved stability of ALPS touchpads
- V8 touchpads can pass all four fingers to VoodooInput natively
- Fixed unpressing during 3 fingers gesture on ALPS V7
- Use VoodooTrackpoint for trackstick and non-MT ALPS touchpads

#### v2.2.8
- Added ALPS touchpad support
- Fixed ELAN trackpoint scrolling in the wrong direction

#### v2.2.7
- Fixed kernel panic after S3

#### v2.2.6
- Fixed some touchpads not waking after S3

#### v2.2.5
- Added support for touchpads with multiplexors

#### v2.2.4
- Fixed incorrect command gate initialization causing panics

#### v2.2.3
- Added `DisableDeepSleep` to workaround ACPI S3 wakes on some Synaptics touchpads

#### v2.2.2
- Added NumLockSupport & NumLockOnAtBoot

#### v2.2.1
- Fix issue with registering of services matched by property name "RM,deliverNotifications". It solves issue with broadcasting timestamp for the last pressed key and handling of QuietTimeAfterTyping [see bug #1415](https://github.com/acidanthera/bugtracker/issues/1415)

#### v2.2.0
- Added VoodooRmi compatibility to allow external touchpad resets

#### v2.1.9
- Disabled PrntScr remap by default, see `SSDT-PrtSc-Remap.dsl` for example to re-enable it
- Disabled Command and Option remap by default, see `SSDT-Swap-CommandOption.dsl` for example to re-enable it

#### v2.1.8
- Added support for receiving input form other kexts
- Fixed dynamic coordinate refresh for ELAN v3 touchpads

#### v2.1.7
- Initial MacKernelSDK and Xcode 12 compatibility
- Added support for select ELAN touchpads by BAndysc and hieplpvip
- Added constants for 11.0 support

#### v2.1.6
- Upgraded to VoodooInput 1.0.7
- Fixed swiping desktops when holding a dragged item by improving thumb detection
- Fixed keyboard timeout error on some laptop configurations
- Fix Command key being pressed after disabling the keyboard and trackpad with Command-PrtScr key combo
- Added a message to allow other kexts to disable the keyboard

#### v2.1.5
- Upgraded to VoodooInput 1.0.6
Expand Down
2 changes: 2 additions & 0 deletions Docs/ACPI/SSDT-AlternateSwipes.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// instead of the Ctrl+Option+Arrows
DefinitionBlock ("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Keyboard", Package()
Expand Down
17 changes: 17 additions & 0 deletions Docs/ACPI/SSDT-DisableDeepSleep.dsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// For computers with Synaptics touchpad that wake immediately after
// going to sleep deeper touchpad sleep can be disabled.
//
// This will cause the touchpad to consume more power in ACPI S3.
DefinitionBlock("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Synaptics TouchPad", Package()
{
"DisableDeepSleep", ">y",
}
})
}
//EOF
16 changes: 16 additions & 0 deletions Docs/ACPI/SSDT-DisableElanWakeDelay.dsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// For some computers wake delay needs to be shorter
// for ELAN touchpad to work after wakeup.

DefinitionBlock("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Elantech TouchPad", Package()
{
"WakeDelay", 0,
},
})
}
//EOF
2 changes: 2 additions & 0 deletions Docs/ACPI/SSDT-DisableTrackpadProbe.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
// This can improve the reliability of VoodooPS2Mouse.kext and is more efficient as well.
DefinitionBlock("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Synaptics TouchPad", Package()
Expand Down
11 changes: 0 additions & 11 deletions Docs/ACPI/SSDT-Disable_DynamicEWMode.dsl

This file was deleted.

11 changes: 0 additions & 11 deletions Docs/ACPI/SSDT-Enable_DynamicEWMode.dsl

This file was deleted.

2 changes: 2 additions & 0 deletions Docs/ACPI/SSDT-HP-FixLidSleep.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
// Make sure you verify _SB.PCI0.LPCB.PS2K ACPI path.
DefinitionBlock ("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Keyboard", Package()
Expand Down
2 changes: 2 additions & 0 deletions Docs/ACPI/SSDT-KEY-DELL-WN09.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

DefinitionBlock ("", "SSDT", 2, "ACDT", "ps2dell", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

// Select Dell specific keyboard map in VoodooPS2Keyboard.kext
Method(_SB.PCI0.LPCB.PS2K._DSM, 4)
{
Expand Down
14 changes: 0 additions & 14 deletions Docs/ACPI/SSDT-MouseAsTrackpad.dsl

This file was deleted.

15 changes: 15 additions & 0 deletions Docs/ACPI/SSDT-NumLockOnAtBoot.dsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Set NumLock state to ON at Bootup

DefinitionBlock ("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Keyboard", Package()
{
"NumLockOnAtBoot", ">y",
},
})
}
//EOF
18 changes: 18 additions & 0 deletions Docs/ACPI/SSDT-NumLockSupport.dsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
// Add Support for Num Lock key
// By Default Voodoo maps Num Lock to Clear key because of the following
// 1) On USB keyboards Num Lock is translated to the Clear key
// 2) On Apple keyboards there is no Num Lock key

DefinitionBlock ("", "SSDT", 2, "ACDT", "ps2", 0)
{
External (_SB_.PCI0.LPCB.PS2K, DeviceObj)

Name(_SB.PCI0.LPCB.PS2K.RMCF, Package()
{
"Keyboard", Package()
{
"NumLockSupport", ">y",
},
})
}
//EOF
18 changes: 0 additions & 18 deletions Docs/ACPI/SSDT-PrtSc-F13.dsl

This file was deleted.

Loading