Add comprehensive documentation for Lenovo ThinkPad Gentoo Linux setup including: - Complete system configuration guides (power, Bluetooth, WiFi, audio) - Hardware setup documentation (touchpad, touchscreen, DisplayLink) - Management scripts with ZSH completions - Kernel configuration (6.12.41-gentoo-x86_64) - Lid automation and monitor management - Battery conservation system - User guides and troubleshooting Repository includes .gitignore to exclude logs, temporary files, and secrets. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
185 lines
4.7 KiB
Markdown
185 lines
4.7 KiB
Markdown
# Post-Reboot Checklist
|
|
|
|
## Date: 2025-11-05
|
|
## Status: ✅ COMPLETED - All items verified and working!
|
|
|
|
This checklist guided verification of the touchpad and touchscreen functionality after rebooting with the new kernel that includes I2C HID ACPI support and CONFIG_PINCTRL_AMD.
|
|
|
|
## What Was Done
|
|
|
|
1. ✅ Enabled `CONFIG_I2C_HID_ACPI=m` in kernel configuration
|
|
2. ✅ Enabled `CONFIG_PINCTRL_AMD=y` in kernel configuration (CRITICAL for GPIO interrupts)
|
|
3. ✅ Rebuilt kernel with genkernel (full rebuild, multiple attempts)
|
|
4. ✅ New kernel installed to `/boot/vmlinuz-6.12.41-gentoo-x86_64`
|
|
5. ✅ Backup created (`.old` and `.backup-20251105` files)
|
|
|
|
**Note**: The final kernel rebuild was done WITHOUT `--no-mrproper`, which may have reset some kernel configurations. Bluetooth configuration may need to be verified/restored.
|
|
|
|
## After Reboot: Verification Steps
|
|
|
|
### 1. Check Kernel Version
|
|
```bash
|
|
uname -r
|
|
# Should show: 6.12.41-gentoo-x86_64
|
|
```
|
|
|
|
### 2. Verify PINCTRL_AMD is Built-In
|
|
```bash
|
|
zcat /proc/config.gz | grep PINCTRL_AMD
|
|
```
|
|
|
|
**Expected output**:
|
|
```
|
|
CONFIG_PINCTRL_AMD=y
|
|
```
|
|
|
|
This must show `=y` (built-in), not `=m`. If it shows "is not set", the touchpad/touchscreen won't work.
|
|
|
|
### 3. Verify i2c-hid-acpi Module Loaded
|
|
```bash
|
|
lsmod | grep i2c_hid
|
|
```
|
|
|
|
**Expected output**:
|
|
```
|
|
i2c_hid_acpi 16384 0
|
|
i2c_hid 32768 1 i2c_hid_acpi
|
|
```
|
|
|
|
If not loaded, try loading manually:
|
|
```bash
|
|
sudo modprobe i2c-hid-acpi
|
|
```
|
|
|
|
### 4. Check Input Devices
|
|
```bash
|
|
cat /proc/bus/input/devices | grep -A 5 -i "ELAN\|touchpad\|touchscreen"
|
|
```
|
|
|
|
Should show both:
|
|
- ELAN901C touchpad (or similar ELAN name)
|
|
- ELAN0678 touchscreen (or similar ELAN name)
|
|
|
|
If only TrackPoint is shown, PINCTRL_AMD is likely missing or driver binding failed.
|
|
|
|
### 5. Test Touchpad Functionality
|
|
|
|
**Basic tests**:
|
|
- [ ] Move cursor with one finger
|
|
- [ ] Scroll vertically with two fingers
|
|
- [ ] Scroll horizontally with two fingers
|
|
- [ ] Right-click with two-finger tap
|
|
- [ ] Palm rejection works (no accidental touches)
|
|
|
|
### 6. Test Touchscreen Functionality
|
|
|
|
**Basic tests**:
|
|
- [ ] Tap to click/select
|
|
- [ ] Drag to move/select
|
|
- [ ] Two-finger pinch to zoom (if supported by app)
|
|
- [ ] Touch accuracy across entire screen
|
|
|
|
### 7. Verify Bluetooth Still Works
|
|
|
|
**IMPORTANT**: The kernel was rebuilt without `--no-mrproper`, which may have reset bluetooth configs.
|
|
|
|
```bash
|
|
# Check if bluetooth is enabled in kernel
|
|
zcat /proc/config.gz | grep "CONFIG_BT="
|
|
|
|
# Check bluetooth service
|
|
systemctl status bluetooth
|
|
```
|
|
|
|
If bluetooth is broken, refer to bluetooth setup documentation in this folder.
|
|
|
|
### 8. If Module Didn't Load Automatically
|
|
|
|
Create auto-load configuration:
|
|
```bash
|
|
echo "i2c-hid-acpi" | sudo tee /etc/modules-load.d/i2c-hid.conf
|
|
```
|
|
|
|
Then reboot again to verify it auto-loads.
|
|
|
|
## Troubleshooting
|
|
|
|
### Touchpad/Touchscreen Not Working
|
|
|
|
1. **Check kernel messages**:
|
|
```bash
|
|
dmesg | grep -i "i2c.*hid\|elan"
|
|
```
|
|
|
|
2. **Verify devices on I2C bus**:
|
|
```bash
|
|
ls -la /sys/bus/i2c/devices/ | grep ELAN
|
|
```
|
|
|
|
3. **Check if module exists**:
|
|
```bash
|
|
find /lib/modules/$(uname -r) -name "*i2c*hid*.ko*"
|
|
```
|
|
|
|
4. **Verify kernel config**:
|
|
```bash
|
|
zcat /proc/config.gz | grep I2C_HID
|
|
```
|
|
|
|
Should show:
|
|
```
|
|
CONFIG_I2C_HID=m
|
|
CONFIG_I2C_HID_ACPI=m
|
|
```
|
|
|
|
### If Nothing Works
|
|
|
|
Boot into backup kernel:
|
|
- At GRUB menu, select "Advanced options"
|
|
- Choose kernel with `.old` suffix
|
|
- Report the issue with kernel logs
|
|
|
|
## Verification Results (Post-Reboot)
|
|
|
|
### ✅ All Checks Passed!
|
|
|
|
**Kernel Configuration Verified**:
|
|
- [x] ✅ CONFIG_PINCTRL_AMD=y (built-in, confirmed working)
|
|
- [x] ✅ CONFIG_I2C_HID_ACPI=m (module loads automatically)
|
|
|
|
**Hardware Detection**:
|
|
- [x] ✅ ELAN901C touchpad detected and functional
|
|
- [x] ✅ ELAN0678 touchscreen detected and functional
|
|
- [x] ✅ i2c-hid-acpi module loaded automatically
|
|
|
|
**Functionality Tests**:
|
|
- [x] ✅ Touchpad cursor movement
|
|
- [x] ✅ Multi-finger gestures (scroll, tap)
|
|
- [x] ✅ Touchscreen touch input
|
|
- [x] ✅ Touchscreen multitouch support
|
|
|
|
**Regression Testing**:
|
|
- [x] ✅ Bluetooth still working (hci0)
|
|
- [x] ✅ WiFi still working
|
|
- [x] ✅ All other system functions intact
|
|
|
|
## Next Steps After Verification
|
|
|
|
✅ **Completed**: Documentation updated in Claude.md, Touchpad-Touchscreen-Setup.md
|
|
|
|
**Remaining tasks**:
|
|
1. **Audio control script** - Create sound control utility for switching audio sources
|
|
2. **Ghostty terminal** - Install Wayland-native terminal emulator
|
|
3. **Continue with remaining tasks** - IoT tools, mobile dev setup
|
|
|
|
## Documentation Files
|
|
|
|
For detailed information, see:
|
|
- `Touchpad-Touchscreen-Setup.md` - Complete setup guide
|
|
- `Claude.md` - Current system state (updated ✅)
|
|
- `Session-Summary.md` - All achievements to date
|
|
|
|
---
|
|
|
|
**System fully operational!** 🚀
|