Package: iio-sensor-proxy Version: 3.7-2
Automatic screen rotation does not work in many chromebooks (I have tested this in Acer Chromebook Tab 10 (google-scarlet) and Lenovo 300e 2nd Gen (MediaTek) (google-hana)) due to a bug in iio-sensor-proxy v3.7. The bug also affects most convertible chromebooks and Framework Laptop 12 (see https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/issues/411). This bug does not depend on the kernel version, and it is not a kernel bug. A patch has been proposed upstream and I've tested that it fixes the issue: https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/merge_requests/400 Please ensure that the patch is included in Debian Trixie before its hard package freeze, otherwise automatic screen rotation will not work in many tablets running Debian. More details of how iio-sensor-proxy fails: ``` $ sudo /usr/libexec/iio-sensor-proxy -rv ** (iio-sensor-proxy:4869): DEBUG: 08:49:33.990: Starting iio-sensor-proxy version 3.7 ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.112: Could not find trigger name associated with /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.115: Enabling sensors for device '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_x_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_z_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_timestamp_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_y_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_x_scale' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_x_scale: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_x_scale”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_scale' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_scale ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_x_offset' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_x_offset: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_x_offset”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_offset' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_offset ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Got type for in_accel_x: is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_z_scale' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_z_scale: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_z_scale”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.116: Trying to read 'in_accel_scale' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_scale ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_z_offset' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_z_offset: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_z_offset”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_offset' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_offset ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Got type for in_accel_z: is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_timestamp_scale' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_timestamp_scale: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_timestamp_scale”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_scale' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_scale ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_timestamp_offset' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_timestamp_offset: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_timestamp_offset”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_offset' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_offset ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Got type for in_timestamp: is signed: 1, bytes: 8, bits_used: 64, shift: 0, mask: 0x18446744073709551615, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_y_scale' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_y_scale: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_y_scale”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_scale' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_scale ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_y_offset' (name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_y_offset: Failed to open file “/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_y_offset”: No such file or directory ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Trying to read 'in_accel_offset' (generic name) from dir '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Failed to read float from non-existent /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/in_accel_offset ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.117: Got type for in_accel_y: is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Built channel array for in_accel_x: index: 0, is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Built channel array for in_accel_y: index: 1, is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Built channel array for in_accel_z: index: 2, is signed: 1, bytes: 2, bits_used: 16, shift: 0, mask: 0x65535, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Built channel array for in_timestamp: index: 3, is signed: 1, bytes: 8, bits_used: 64, shift: 0, mask: 0x18446744073709551615, be: 0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Disabling sensors for device '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_x_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_z_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_timestamp_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_y_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Found IIO buffer accelerometer at /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.118: Found device /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0 of type accelerometer at IIO Buffer accelerometer ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.118: Not a switch [/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/../capabilities/sw] ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.118: Invalid bitmask entry for /sys/devices/platform/ff120000.i2c/i2c-2/2-0009/0018:2D1F:0036.0001/input/input3/event3 ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.124: Could not find trigger name associated with /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.124: Enabling sensors for device '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.124: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_x_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.124: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_z_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.124: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_timestamp_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.124: Already enabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_y_en ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.125: Could not write to '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/buffer/enable': Operation not permitted ** (iio-sensor-proxy:4869): WARNING **: 08:49:34.125: Unable to enable ring buffer for /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0 ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: Disabling sensors for device '/sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0' ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_x_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_z_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_timestamp_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: Disabled sensor /sys/devices/platform/ff200000.spi/spi_master/spi2/spi2.0/cros-ec-dev.0.auto/cros-ec-sensorhub.1.auto/cros-ec-accel.2.auto/iio:device0/scan_elements/in_accel_y_en ** (iio-sensor-proxy:4869): DEBUG: 08:49:34.125: No sensors or missing kernel drivers for the sensors ``` I am using Debian Trixie, with kernel 6.12.12 and libc6 2.41-8.

