@peg Many thanks for all this work too. Just to let you know I had to tweak this guide slightly as when running 'make modules_prepare' I got errors on Retropie 4.8 running on a pi zero 2W. It seems that I had to install 'libssl-dev' first before this command. Can confirm that after this all other steps worked, rebooted and rumble working on both pads as expected on the Trixes adaptor.
For those getting the same errors, here's a full update to @peg guide (I take no credit and thank @peg for this easy tutorial and just helping anyone with the same issue)
# Install required tools (bc is required for modules_prepare, see Compile)
sudo apt-get update
sudo apt-get install build-essential bc
# Setup required variables
FIRMWARE_HASH=$(zgrep "* firmware as of" /usr/share/doc/raspberrypi-bootloader/changelog.Debian.gz | head -1 | awk '{ print $5 }')
KERNEL_HASH=$(wget https://raw.github.com/raspberrypi/firmware/${FIRMWARE_HASH}/extra/git_hash -O -)
KERNEL_VERSION=$(uname -a | awk '{ print $3 }')
HID_DRIVERS_DIR=/lib/modules/${KERNEL_VERSION}/kernel/drivers/hid
BUILD_DIR=~/psff_build
# Setup build dir
mkdir $BUILD_DIR
cd $BUILD_DIR
# Get kernel source
wget https://github.com/raspberrypi/linux/archive/${KERNEL_HASH}.tar.gz -O ${KERNEL_HASH}.tar.gz
tar xfz ${KERNEL_HASH}.tar.gz
cd linux-${KERNEL_HASH}
# Get Module.symvers and Module7.symvers (not sure Module.symvers is really needed)
wget https://raw.github.com/raspberrypi/firmware/${FIRMWARE_HASH}/extra/Module.symvers
wget https://raw.github.com/raspberrypi/firmware/${FIRMWARE_HASH}/extra/Module7.symvers
# Get current kernel config
sudo modprobe configs
gunzip -c /proc/config.gz > .config
# Enable force feedback / rumble support
sed -i 's/# CONFIG_PANTHERLORD_FF is not set/CONFIG_PANTHERLORD_FF=y/' .config
sed -i 's/# CONFIG_GREENASIA_FF is not set/CONFIG_GREENASIA_FF=y/' .config
# install libssl-dev otherwise following driver compile will fail on 4.8 / pi zero 2w
sudo apt-get install libssl-dev
# Compile driver
make modules_prepare
make drivers/hid/hid-pl.ko
# Update existing hid-pl.ko with FF support (w/ backup of old version)
sudo cp -b drivers/hid/hid-pl.ko ${HID_DRIVERS_DIR}
# Enable ff-memless module (not sure why "sudo echo ..." isn't enough)
sudo su
echo ff-memless >> /etc/modules
exit
# Reboot
sudo reboot