mirror of
https://github.com/RPCS3/rpcs3.git
synced 2026-03-11 07:56:15 +01:00
Include udev/devd rules in Linux/FreeBSD install
This allows RPCS3 to communicate with Dualshock 3,4 and DualSense controller out of the box on Linux distributions and FreeBSD, without the need for manual actions.
This commit is contained in:
parent
1cae72c872
commit
82b2bea52f
|
|
@ -63,6 +63,7 @@ option(USE_LTO "Use LTO for building" ON)
|
|||
option(BUILD_RPCS3_TESTS "Build RPCS3 unit tests." OFF)
|
||||
option(RUN_RPCS3_TESTS "Run RPCS3 unit tests. Requires BUILD_RPCS3_TESTS" OFF)
|
||||
option(USE_GAMEMODE "Choose whether to enable GameMode features or not." ON)
|
||||
option(BUNDLE_UDEV_RULES "Include udev rules on Linux/FreeBSD" OFF)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/buildfiles/cmake")
|
||||
|
||||
|
|
|
|||
49
config/udev/devd.conf
Normal file
49
config/udev/devd.conf
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# DualShock 3
|
||||
notify 100 {
|
||||
match "system" "USB";
|
||||
match "subsystem" "INTERFACE";
|
||||
match "type" "ATTACH";
|
||||
match "vendor" "0x054c";
|
||||
match "product" "0x0268";
|
||||
action "chmod 0666 /dev/$cdev";
|
||||
};
|
||||
|
||||
# DualShock 4
|
||||
notify 100 {
|
||||
match "system" "USB";
|
||||
match "subsystem" "INTERFACE";
|
||||
match "type" "ATTACH";
|
||||
match "vendor" "0x054c";
|
||||
match "product" "0x05c4";
|
||||
action "chmod 0666 /dev/$cdev";
|
||||
};
|
||||
|
||||
# DualShock 4 Wireless Adapter
|
||||
notify 100 {
|
||||
match "system" "USB";
|
||||
match "subsystem" "INTERFACE";
|
||||
match "type" "ATTACH";
|
||||
match "vendor" "0x054c";
|
||||
match "product" "0x0ba0";
|
||||
action "chmod 0666 /dev/$cdev";
|
||||
};
|
||||
|
||||
# DualShock 4 Slim
|
||||
notify 100 {
|
||||
match "system" "USB";
|
||||
match "subsystem" "INTERFACE";
|
||||
match "type" "ATTACH";
|
||||
match "vendor" "0x054c";
|
||||
match "product" "0x09cc";
|
||||
action "chmod 0666 /dev/$cdev";
|
||||
};
|
||||
|
||||
# DualSense
|
||||
notify 100 {
|
||||
match "system" "USB";
|
||||
match "subsystem" "INTERFACE";
|
||||
match "type" "ATTACH";
|
||||
match "vendor" "0x054c";
|
||||
match "product" "0x0ce6";
|
||||
action "chmod 0666 /dev/$cdev";
|
||||
};
|
||||
26
config/udev/udev.rules
Normal file
26
config/udev/udev.rules
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
# DualShock 3 over USB
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0268", MODE="0666"
|
||||
|
||||
# DualShock 3 over Bluetooth
|
||||
KERNEL=="hidraw*", KERNELS=="*054C:0268*", MODE="0666"
|
||||
|
||||
# DualShock 4 over USB
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0666"
|
||||
|
||||
# DualShock 4 Wireless Adapter over USB
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0666"
|
||||
|
||||
# DualShock 4 Slim over USB
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0666"
|
||||
|
||||
# DualShock 4 over Bluetooth
|
||||
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0666"
|
||||
|
||||
# DualShock 4 Slim over Bluetooth
|
||||
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0666"
|
||||
|
||||
# PS5 DualSense controller over USB hidraw
|
||||
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0666", TAG+="uaccess"
|
||||
|
||||
# PS5 DualSense controller over bluetooth hidraw
|
||||
KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0666", TAG+="uaccess"
|
||||
|
|
@ -226,3 +226,14 @@ if(BUILD_RPCS3_TESTS)
|
|||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Udev rules, per platform
|
||||
if (BUNDLE_UDEV_RULES)
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
install(FILES ../config/udev/udev.rules
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/udev/rules.d/ RENAME 99-rpcs3.rules)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
|
||||
install(FILES ../config/udev/devd.conf
|
||||
DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/devd/ RENAME rpcs3.conf)
|
||||
endif()
|
||||
endif()
|
||||
|
|
|
|||
Loading…
Reference in a new issue