0

I've just installed Debian 11 LXDE without any non-free packages into my old notebook.
Everything went fine except for the screen display, which there were some issues. Some of them could be solved by switching the BIOS from LEGACY to UEFI mode and reinstalling Debian. However, even so, some unpleasant issues still remain:

  • no backlight brightness control
  • ScreenLock (and other similar software) unable to turnoff the backlight

All these issues could be easily solved by installing the non-free package firmware-amd-graphics. However, according to some sources:

  • "Non-free includes packages that do not comply with the DFSG (Debian Free Software Guidelines)", Wikipedia
  • "Non-free software is made available to those who wish to risk its ills. Before blindly installing non-free software it may be prudent to ask if there is a Free replacement.", Debian Wiki

QUESTION
Therefore, as suggested by the Debian Wiki, is there a DFSG alternative to avoid the non-free package firmware-amd-graphics?


System Specifications

Product Name: Aspire E1-421 APU
CPU: AMD E1-1200 APU @ 1400 MHz
GPU: Radeon(tm) HD Graphics

root@debian:~# journalctl -b | grep -i "vga\|radeon\|kms\|drm"
Jan 28 22:30:33 debian kernel: smpboot: CPU0: AMD E1-1200 APU with Radeon(tm) HD Graphics (family: 0x14, model: 0x2, stepping: 0x0)
Jan 28 22:30:33 debian kernel: pci 0000:00:01.0: vgaarb: setting as boot VGA device
Jan 28 22:30:33 debian kernel: pci 0000:00:01.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
Jan 28 22:30:33 debian kernel: pci 0000:00:01.0: vgaarb: bridge control possible
Jan 28 22:30:33 debian kernel: vgaarb: loaded
Jan 28 22:30:33 debian kernel: fb0: EFI VGA frame buffer device
Jan 28 22:30:33 debian kernel: ACPI: Video Device [VGA] (multi-head: yes  rom: no  post: no)
Jan 28 22:30:33 debian kernel: [drm] radeon kernel modesetting enabled.
Jan 28 22:30:33 debian kernel: [drm:radeon_pci_probe [radeon]] *ERROR* radeon kernel modesetting for R600 or later requires firmware installed
Jan 28 22:30:33 debian systemd[1]: Starting Load Kernel Module drm...
Jan 28 22:30:33 debian systemd[1]: [email protected]: Succeeded.
Jan 28 22:30:33 debian systemd[1]: Finished Load Kernel Module drm.


root@debian:~# lspci -k | grep -EA3 'VGA|3D|Display'
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Wrestler [Radeon HD 7310]
    Subsystem: Acer Incorporated [ALI] Wrestler [Radeon HD 7310]
    Kernel modules: radeon
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Wrestler HDMI Audio


root@debian:~# lsmod | grep "kms\|drm"
drm_kms_helper        278528  1 radeon
cec                    61440  1 drm_kms_helper
drm                   618496  3 drm_kms_helper,radeon,ttm


root@debian:~# modinfo drm_kms_helper
filename:       /lib/modules/5.10.0-11-amd64/kernel/drivers/gpu/drm/drm_kms_helper.ko
license:        GPL and additional rights
description:    DRM KMS helper
author:         David Airlie, Jesse Barnes
license:        GPL
depends:        drm,cec
retpoline:      Y
intree:         Y
name:           drm_kms_helper
vermagic:       5.10.0-11-amd64 SMP mod_unload modversions 
sig_id:         PKCS#7
signer:         Debian Secure Boot CA
sig_key:        4B:6E:F5:AB:CA:66:98:25:17:8E:05:2C:84:66:7C:CB:C0:53:1F:8C
sig_hashalgo:   sha256
signature:      0D:81:25:6D:08:D1:C4:83:0F:49:AA:AE:71:B8:89:84:E6:04:8D:5E:
        94:BB:C0:2C:68:D8:06:01:2D:3C:E0:ED:25:CC:29:4D:69:DF:58:25:
        5F:9C:CB:44:23:3B:4A:04:C5:C2:13:B7:3A:7D:B8:12:61:64:10:12:
        33:86:02:7D:84:92:BA:24:EB:D5:B9:51:5F:F1:44:28:DF:C2:D4:87:
        08:14:4C:4F:92:49:B1:F4:68:95:5D:80:26:32:D4:C6:2A:4B:36:0C:
        E2:58:76:7F:76:26:D4:AB:14:18:AD:63:44:E0:F8:99:BB:83:DD:B9:
        5D:61:36:21:1F:8E:A9:55:96:AB:AF:03:93:DE:EE:C7:F8:03:55:35:
        BD:01:C7:33:23:C6:89:C7:E5:CA:E6:9F:93:EF:AF:66:9C:DD:0A:35:
        EF:64:0C:79:3E:BD:CC:7A:EF:61:55:83:4B:F4:97:E7:70:93:FE:B6:
        19:70:62:4C:0D:81:A9:E0:8D:B9:9C:6E:D6:0C:3F:84:B8:B2:E7:2D:
        7B:10:B1:5D:48:3A:53:C1:2A:B5:09:4A:84:44:AF:3B:26:49:BF:04:
        96:74:1A:AD:C0:1B:6C:73:34:55:97:81:BD:6A:20:A1:EB:57:C6:FA:
        78:E8:E4:8E:04:9F:AE:6B:B9:F4:AB:EF:27:7B:98:0A
parm:           drm_dp_cec_unregister_delay:CEC unregister delay in seconds, 0: no delay, >= 1000: never unregister (uint)
parm:           fbdev_emulation:Enable legacy fbdev emulation [default=true] (bool)
parm:           drm_fbdev_overalloc:Overallocation of the fbdev buffer (%) [default=100] (int)
parm:           edid_firmware:DEPRECATED. Use drm.edid_firmware module parameter instead. (charp)
parm:           poll:bool
parm:           dp_aux_i2c_speed_khz:Assumed speed of the i2c bus in kHz, (1-400, default 10) (int)
parm:           dp_aux_i2c_transfer_size:Number of bytes to transfer in a single I2C over DP AUX CH message, (1-16, default 16) (int)


root@debian:~# modinfo cec
filename:       /lib/modules/5.10.0-11-amd64/kernel/drivers/media/cec/core/cec.ko
license:        GPL
description:    Device node registration for cec drivers
author:         Hans Verkuil <[email protected]>
depends:        
retpoline:      Y
intree:         Y
name:           cec
vermagic:       5.10.0-11-amd64 SMP mod_unload modversions 
sig_id:         PKCS#7
signer:         Debian Secure Boot CA
sig_key:        4B:6E:F5:AB:CA:66:98:25:17:8E:05:2C:84:66:7C:CB:C0:53:1F:8C
sig_hashalgo:   sha256
signature:      AF:93:56:FC:05:50:7F:3E:9A:73:C5:C9:58:9D:C0:82:03:BF:ED:C5:
        D5:D6:6F:18:AD:1D:5B:BE:8B:87:20:5A:DE:1E:F4:E3:72:EA:6B:19:
        A6:54:46:98:D0:89:25:B1:7F:D8:C9:D5:BE:26:89:F8:E3:8E:03:AD:
        6C:BD:D7:B5:85:20:E9:19:B5:78:47:8F:9B:F9:CA:0F:60:E2:EE:EC:
        E6:30:D2:41:3E:8B:38:08:B6:FE:71:4C:5B:0D:77:3A:0D:68:D8:75:
        01:55:CB:C3:DA:B6:9E:D2:7E:B1:B0:6D:9F:AA:E3:FC:20:56:9C:EB:
        B7:B1:E4:93:0B:61:9E:B1:61:B5:05:67:89:4C:6A:16:B5:01:31:3D:
        78:7C:83:93:CA:C1:F3:F5:21:CD:4B:80:BF:B8:27:A3:B9:84:05:AD:
        0B:F5:43:A3:7E:F5:BC:1C:B3:C2:B2:63:06:22:F4:45:22:9E:E9:D7:
        1F:57:7B:89:85:33:28:D1:5D:EF:09:07:56:CA:2D:65:6C:F8:FC:45:
        E9:D9:F1:47:29:C2:F6:18:52:51:B3:A0:77:8F:A9:48:DC:6F:09:BE:
        C9:81:0B:9F:93:10:69:0A:7B:E0:37:BF:29:A0:63:67:D2:E6:11:B7:
        21:52:6D:F5:E2:88:BA:06:A9:EF:4D:E5:AF:35:A9:FF
parm:           debug:debug level (0-2) (int)
parm:           debug_phys_addr:add CEC_CAP_PHYS_ADDR if set (bool)


root@debian:~# modinfo drm
filename:       /lib/modules/5.10.0-11-amd64/kernel/drivers/gpu/drm/drm.ko
license:        GPL and additional rights
description:    DRM shared core routines
author:         Gareth Hughes, Leif Delgass, José Fonseca, Jon Smirl
license:        GPL and additional rights
description:    DRM bridge infrastructure
author:         Ajay Kumar <[email protected]>
license:        GPL and additional rights
description:    DRM panel infrastructure
author:         Thierry Reding <[email protected]>
depends:        
retpoline:      Y
intree:         Y
name:           drm
vermagic:       5.10.0-11-amd64 SMP mod_unload modversions 
sig_id:         PKCS#7
signer:         Debian Secure Boot CA
sig_key:        4B:6E:F5:AB:CA:66:98:25:17:8E:05:2C:84:66:7C:CB:C0:53:1F:8C
sig_hashalgo:   sha256
signature:      6A:01:C0:42:CA:61:EB:E7:CA:FA:A1:22:62:41:E4:50:87:00:B2:B9:
        E9:2A:C2:EB:90:3A:95:F5:69:93:81:AE:F9:44:9A:F3:55:B8:42:1B:
        BF:AA:18:B3:33:53:E9:55:98:EC:F8:1F:C7:8B:E7:3B:5E:58:20:41:
        DE:3E:58:4D:7F:CB:2B:51:65:30:38:A7:F1:91:A1:4E:69:65:73:32:
        AF:3F:D9:93:F1:5F:E3:D7:32:2B:96:46:EF:9E:D1:DE:8A:6A:02:54:
        2A:24:C7:8A:C6:2C:21:7C:94:20:B2:1C:9F:4C:7E:B8:36:C7:3F:29:
        AE:AC:BF:D0:D4:41:7C:B6:99:4B:9F:A9:BF:9C:A6:F2:F8:86:F1:C7:
        BB:0A:14:D9:A5:E1:54:21:B3:4D:65:34:8B:00:83:AF:B8:20:CB:8B:
        C1:90:C8:46:B8:39:8E:3B:1B:77:B4:8C:91:FA:4F:A0:9B:1B:56:A6:
        B4:D1:9A:57:27:16:BB:DF:D8:8D:75:D8:80:0F:61:9C:1F:7F:87:E8:
        DE:7F:6D:A4:25:B2:9D:E3:9B:16:78:6C:48:75:7B:AB:37:97:3F:A7:
        9D:A3:DC:D9:F7:00:CB:ED:8A:81:AC:9C:AE:7C:C5:EF:57:11:0F:7F:
        B1:56:50:1C:8D:26:7D:6A:A6:36:09:3F:FE:89:AC:8D
parm:           edid_firmware:Do not probe monitor, use specified EDID blob from built-in data or /lib/firmware instead.  (string)
parm:           vblankoffdelay:Delay until vblank irq auto-disable [msecs] (0: never disable, <0: disable immediately) (int)
parm:           timestamp_precision_usec:Max. error on timestamps [usecs] (int)
parm:           debug:Enable debug output, where each bit enables a debug category.
        Bit 0 (0x01)  will enable CORE messages (drm core code)
        Bit 1 (0x02)  will enable DRIVER messages (drm controller code)
        Bit 2 (0x04)  will enable KMS messages (modesetting code)
        Bit 3 (0x08)  will enable PRIME messages (prime code)
        Bit 4 (0x10)  will enable ATOMIC messages (atomic code)
        Bit 5 (0x20)  will enable VBL messages (vblank code)
        Bit 7 (0x80)  will enable LEASE messages (leasing code)
        Bit 8 (0x100) will enable DP messages (displayport code) (int)
parm:           edid_fixup:Minimum number of valid EDID header bytes (0-8, default 6) (int)
8
  • The obvious answer probably is that the AMD GPU driver has to be significantly newer than the AMD GPU hardware. Did you check that?
    – U. Windl
    Commented Jan 26, 2022 at 10:02
  • @U.Windl > "AMD GPU driver has to be significantly newer than the AMD GPU hardware" I'm not sure how to check that, neither how to use this kind of info in order to solve the aforementioned issue. Even so, I've included some additional GPU info to the post. Let me know your thoughts. Commented Jan 26, 2022 at 14:30
  • OK the hardware info probably is OK; for the driver you could try to get the module name from the output of lsmod, then get the module version using modinfo driver_module (output is long, unsure there is a version string). Maybe also look in the syslog (jounalctl -b) for messages from amdgpu. I don't know for Debian, but SUSE Linux has a hwinfo --gfxcard that will output information about the graphics card and the driver being used.
    – U. Windl
    Commented Jan 27, 2022 at 11:12
  • @U.Windl > "for the driver you could try to get the module name from the output of lsmod" Isn't it drm_kms_helper 278528 1 radeon as I posted above? Commented Jan 27, 2022 at 12:32
  • @U.Windl Just updated the post with modinfo, journalctl and hwinfo. Let me know your thoughts. Commented Jan 27, 2022 at 13:20

0

You must log in to answer this question.

Browse other questions tagged .