Jump to content

Bug Report: DRM/KMS console (tty1) stuck at 30x90 despite 1920x1080 framebuffer on Orange Pi PC (Allwinner H3)


Recommended Posts

Posted

**1. Summary:**
The text console (`tty1`) is permanently stuck at 30 rows by 90 columns after boot, despite the DRM/KMS framebuffer being correctly set to 1920x1080 resolution. All attempts to change the console size via boot parameters, sysfs, or runtime tools fail. This breaks the basic CLI experience on displays larger than VGA.

**2. Environment:**
*   **Hardware:** Orange Pi PC (Allwinner H3)
*   **Image/Distribution:** "Forky" (appears to be an Armbian-based rolling Debian fork)
*   **Kernel:** `6.12.68-current-sunxi` (build@armbian) #1 SMP Fri Jan 30 09:28:49 UTC 2026
*   **Graphics Stack:** Modern DRM/KMS (`sun4i-drm`). The legacy `fb` driver is not active.
*   **Monitor:** Connected via HDMI. EDID is correctly read (tested with `modetest`).

**3. Steps to Reproduce:**
1.  Boot the system with the affected image on an Orange Pi PC.
2.  Log in to the text console (`tty1`).
3.  Run `stty size`. It will always return `30 90`.
4.  Observe that the terminal only uses the top-left quarter of a 1920x1080 display.

**4. Diagnostic Evidence:**
```bash
# Console size is fixed and wrong:
$ stty size < /dev/tty1
30 90

# Framebuffer is provided by DRM and reports correct resolution:
$ cat /sys/class/graphics/fb0/name
sun4i-drmdrmfb
$ cat /sys/class/drm/card0/card0-HDMI-A-1/modes | head -1
1920x1080

# Kernel boot parameters (from /proc/cmdline) include video settings, but are ignored:
root=UUID=... video=HDMI-A-1:1920x1080@60 console=tty1 ...

# All attempted fixes that FAILED:
# - Boot parameters: `fbcon=font:VGA8x16`, `vt.global_cursor_default=0`, `drm_kms_helper.edid_firmware=...`
# - Runtime commands: `resizecons`, `setupcon`, `stty rows cols`, writing to `/sys/class/graphics/fbcon/`
# - Service restarts: `getty@tty1`, `gpm`
```

**5. Expected Behavior:**
The text console should automatically scale to use the full resolution of the framebuffer. For a 1920x1080 framebuffer with an 8x16 font, the expected `stty size` should be approximately `67 240` (or `67 120` for a 16x16 font). The console should fill the entire display.

**6. Additional Notes:**
*   The same hardware works correctly with a **Debian Bookworm** image and an older kernel, where console auto-scaling functions perfectly.
*   This indicates a **regression** in the `6.12.68-current-sunxi` kernel build or its DRM/KMS configuration for the Allwinner H3.
*   The bug makes the distribution unsuitable for any headless or console-focused use case on this hardware.

**7. Questions for Maintainers:**
*   Is there a specific kernel configuration option (`CONFIG_*`) for Allwinner H3 DRM that controls TTY auto-scaling?
*   Has the `vt` or `drm` subsystem changed in a way that requires new boot parameters for this hardware?
*   Can this be worked around without a kernel recompile?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines