Backlight Not Working on iMac 12

Hi everybody

I am having a problem with the backlight not working on iMac 12. I am using Gnome 43.3 , OS build 2022.09.10. Neither using the brightness control widget, no directly writing into /sys/class/backlight/acpi_video0/brightness makes any difference to display brightness.

This is the graphics output:

Graphics:
Device-1: Intel 2nd Generation Core Processor Family Integrated Graphics
driver: i915 v: kernel arch: Gen-6 ports: active: none empty: VGA-1
bus-ID: 00:02.0 chip-ID: 8086:0102 class-ID: 0380
Device-2: AMD Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]
vendor: Apple driver: radeon v: kernel arch: TeraScale-2 pcie:
speed: 2.5 GT/s lanes: 16 ports: active: eDP-1
empty: DP-1, DP-2, DP-3, VGA-2 bus-ID: 01:00.0 chip-ID: 1002:6741
class-ID: 0300
Device-3: Apple FaceTime HD Camera (Built-in) type: USB driver: uvcvideo
bus-ID: 3-2:3 chip-ID: 05ac:850b class-ID: 0e02 serial: CCGBB202N6DDJPLX
Display: wayland server: X.org v: 1.21.1.7 with: Xwayland v: 22.1.8
compositor: gnome-shell driver: gpu: radeon display-ID: 0
Monitor-1: eDP-1 model: Apple iMac res: 1920x1080 dpi: 103
size: 475x267mm (18.7x10.51") diag: 545mm (21.5") modes: max: 1920x1080
min: 640x480
API: OpenGL v: 4.5 Mesa 22.3.6 renderer: AMD TURKS (DRM 2.50.0 /
6.2.2-arch1-1 LLVM 15.0.7) direct-render: Yes

Can anybody help with any advice ? Do i need to change something in grub config as other threads suggest ? I have never done so am a bit worried to ‘break the system’.

I have it installed as dual boot with Mac Os being on another drive if that help to set context.
This is my grub configuration (though I am not 100% sure GRUB us being used):

GRUB boot loader configuration

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=“EndeavourOS”
GRUB_CMDLINE_LINUX_DEFAULT=“loglevel=3 nowatchdog nvme_load=YES”
GRUB_CMDLINE_LINUX=“”

Preload both GPT and MBR modules so that they are not missed

GRUB_PRELOAD_MODULES=“part_gpt part_msdos”

Uncomment to enable booting from LUKS encrypted devices

#GRUB_ENABLE_CRYPTODISK=y

Set to ‘countdown’ or ‘hidden’ to change timeout behavior,

press ESC key to display menu.

GRUB_TIMEOUT_STYLE=menu

Uncomment to use basic console

GRUB_TERMINAL_INPUT=console

Uncomment to disable graphical terminal

#GRUB_TERMINAL_OUTPUT=console

The resolution used on graphical terminal

note that you can use only modes which your graphic card supports via VBE

you can see them in real GRUB with the command `vbeinfo’

GRUB_GFXMODE=auto

Uncomment to allow the kernel use the same resolution used by grub

GRUB_GFXPAYLOAD_LINUX=keep

Uncomment if you want GRUB to pass to the Linux kernel the old parameter

format “root=/dev/xxx” instead of “root=/dev/disk/by-uuid/xxx”

#GRUB_DISABLE_LINUX_UUID=true

Uncomment to disable generation of recovery mode menu entries

GRUB_DISABLE_RECOVERY=true

Uncomment and set to the desired menu colors. Used by normal and wallpaper

modes only. Entries specified as foreground/background.

#GRUB_COLOR_NORMAL=“light-blue/black”
#GRUB_COLOR_HIGHLIGHT=“light-cyan/blue”

Uncomment one of them for the gfx desired, a image background or a gfxtheme

#GRUB_BACKGROUND=“/path/to/wallpaper”
#GRUB_THEME=“/path/to/gfxtheme”
GRUB_BACKGROUND=“/usr/share/endeavouros/splash.png”

Uncomment to get a beep at GRUB start

#GRUB_INIT_TUNE=“480 440 1”

Uncomment to make GRUB remember the last selection. This requires

setting ‘GRUB_DEFAULT=saved’ above.

#GRUB_SAVEDEFAULT=true

Uncomment to disable submenus in boot menu

GRUB_DISABLE_SUBMENU=y

Probing for other operating systems is disabled for security reasons. Read

documentation on GRUB_DISABLE_OS_PROBER, if still want to enable this

functionality install os-prober and uncomment to detect and include other

operating systems.

#GRUB_DISABLE_OS_PROBER=false

Have you taken a look at this?
https://wiki.archlinux.org/title/Backlight