#!/system/bin/sh
# Display diagnostics for the Poco F1 mainline bringup. Run: sh diag-display.sh
mount -t debugfs none /sys/kernel/debug 2>/dev/null
echo "=== backlight"
for f in type brightness actual_brightness max_brightness bl_power; do
  echo "$f: $(cat /sys/class/backlight/backlight/$f 2>&1)"
done
echo "=== regulators (name state microvolts)"
for r in /sys/class/regulator/regulator.*; do
  echo "$(cat $r/name 2>/dev/null) | $(cat $r/state 2>/dev/null) | $(cat $r/microvolts 2>/dev/null)"
done
echo "=== drm connector"
for f in status enabled dpms modes; do echo "$f: $(cat /sys/class/drm/card1-DSI-1/$f 2>&1 | head -3)"; done
echo "=== fb0"
for f in name virtual_size bits_per_pixel blank; do echo "$f: $(cat /sys/class/graphics/fb0/$f 2>&1)"; done
echo "=== gpio (panel reset is gpio 6)"
grep -E "gpio-6 |gpio-6$|reset|panel" /sys/kernel/debug/gpio 2>&1 | head -10
echo "=== log (no vblank)"
dmesg | grep -v vblank | grep -i -E "lab|ibb|wled|panel|nt36672|dsi|backlight|pmi8998|regulator" | tail -40
echo
echo "##### TEST 1: backlight toggle -- WATCH THE SCREEN"
echo 0 > /sys/class/backlight/backlight/brightness; sleep 2
echo 3000 > /sys/class/backlight/backlight/brightness; sleep 2
echo "##### TEST 2: noise to framebuffer -- do you see colored noise?"
head -c 9777152 /dev/urandom > /dev/fb0; sleep 4
echo "##### TEST 3: blank then unblank (re-runs the panel off/on) -- WATCH"
echo 1 > /sys/class/graphics/fb0/blank; sleep 2
echo 0 > /sys/class/graphics/fb0/blank; sleep 3
head -c 9777152 /dev/urandom > /dev/fb0; sleep 3
echo "=== log after tests (no vblank)"
dmesg | grep -v vblank | tail -25
echo "##### done"
