Sound not working on a 2017 iMac 27" 5k Retina

I have a 2017 Imac 27 wich i dualboot osx and manjaro. Everything works perfectly except the sound. Wich is my main os so it would be nice to get sound working. I have tried every “solution” on internet but nothing seems to get the internal speakers and headphones to work. I have connected a bluetooth speaker for now and that works perfectly. The bars are moving when i play something in pavucontrol but no sound before i switch to bluetooth speaker.

I tried Mint 18.3 also and posted a similar thing in their forum. They could not help. What i done so far: Reinstalled alsa daily(In Mint) . Added model= imac27, auto and mbp55 to options snd-hda-intel in /etc/modprobe.d/alsa-base.conf. Forced reload of alsa. Deleted /~./config/pulse
and rebooted. Nothing helped. Currently model is set to imac27. I have unmuted everything i can with amixer set command.

Output of inxi -Fxz

System:    Host: linux-imac Kernel: 4.15.13-1-MANJARO x86_64 bits: 64 compiler: gcc v: 7.3.1 
           Desktop: Cinnamon 3.6.6 Distro: Manjaro Linux 17.1.7 Hakoila 
Machine:   Type: Laptop System: Apple product: iMac18,3 v: 1.0 serial: N/A 
           Mobo: Apple model: Mac-BE088AF8C5EB4FA2 v: iMac18,3 serial: N/A UEFI: Apple 
           v: IM183.88Z.0153.B00.1712141501 date: 12/14/2017 
CPU:       Topology: Quad Core model: Intel Core i5-7600K type: MCP arch: Skylake rev: 9 L2 cache: 6144 KB 
           flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 30336 
           Speed: 800 MHz min/max: 800/4200 MHz Core speeds (MHz): 1: 800 2: 800 3: 800 4: 800 
Graphics:  Card-1: Advanced Micro Devices [AMD/ATI] Ellesmere [Radeon RX 470/480/570/580] driver: amdgpu 
           v: kernel bus ID: 01:00.0 
           Display Server: N/A driver: amdgpu,ati unloaded: fbdev,modesetting,radeon,vesa tty: 187x51 
           Message: Advanced graphics data unavailable in console. Try -G --display 
Audio:     Card-1: Intel Sunrise Point-H HD Audio driver: snd_hda_intel v: kernel bus ID: 00:1f.3 
           Card-2: Advanced Micro Devices [AMD/ATI] Ellesmere [Radeon RX 580] driver: snd_hda_intel v: kernel 
           bus ID: 01:00.1 
           Sound Server: ALSA v: k4.15.13-1-MANJARO 
Network:   Card-1: Broadcom Limited BCM43602 802.11ac Wireless LAN SoC driver: brcmfmac v: kernel bus ID: 03:00 
           IF: wlp3s0 state: up mac: <filter> 
           Card-2: Broadcom Limited NetXtreme BCM57766 Gigabit Ethernet PCIe driver: tg3 v: 3.137 port: N/A 
           bus ID: 04:00 
           IF: enp4s0f0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    HDD Total Size: 3.75 TiB used: 1.14 TiB (30.4%) 
           ID-1: /dev/nvme0n1 model: APPLE_SSD_SM0128L size: 113.00 GiB 
           ID-2: /dev/sda model: APPLE_HDD_ST2000 size: 1.82 TiB 
           ID-3: /dev/sdb type: USB model: Expansion size: 1.82 TiB 
Partition: ID-1: / size: 110.73 GiB used: 6.74 GiB (6.1%) fs: ext4 dev: /dev/nvme0n1p1 
           ID-2: /home size: 1.34 TiB used: 1.33 GiB (0.1%) fs: ext4 dev: /dev/sda4 
Sensors:   System Temperatures: cpu: 50.0 C mobo: N/A gpu: amdgpu temp: 46 C 
           Fan Speeds (RPM): N/A 
Info:      Processes: 211 Uptime: 57 min Memory: 39.19 GiB used: 1.89 GiB (4.8%) Init: systemd Compilers:       
           gcc: 7.3.1 Shell: bash v: 4.4.19 inxi: 2.9.08

Output of aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: Generic Analog [Generic Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 11: HDMI 5 [HDMI 5]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: HDMI [HDA ATI HDMI], device 12: HDMI 6 [HDMI 6]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Output of pactl set-sink-mute 0 0 ; pactl list sinks ; lspci -v | grep -A7 -i “audio” ; lsmod

Sink #0
	State: SUSPENDED
	Name: alsa_output.pci-0000_00_1f.3.analog-stereo
	Description: Built-in Audio Analog Stereo
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 7
	Mute: no
	Volume: front-left: 60910 /  93% / -1,91 dB,   front-right: 60910 /  93% / -1,91 dB
	        balance 0,00
	Base Volume: 65536 / 100% / 0,00 dB
	Monitor Source: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.resolution_bits = "16"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "Generic Analog"
		alsa.id = "Generic Analog"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0x92720000 irq 52"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:00:1f.3"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "a170"
		device.product.name = "Sunrise Point-H HD Audio"
		device.form_factor = "internal"
		device.string = "front:0"
		device.buffering.buffer_size = "352800"
		device.buffering.fragment_size = "176400"
		device.access_mode = "mmap+timer"
		device.profile.name = "analog-stereo"
		device.profile.description = "Analog Stereo"
		device.description = "Built-in Audio Analog Stereo"
		alsa.mixer_name = "Cirrus Logic Generic"
		alsa.components = "HDA:10138409,106b1000,00100100"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Ports:
		analog-output-speaker: Speakers (priority: 10000)
		analog-output-headphones: Headphones (priority: 9000)
	Active Port: analog-output-speaker
	Formats:
		pcm
Module                  Size  Used by
cmac                   16384  1
rfcomm                 86016  16
fuse                  118784  5
bnep                   24576  2
nls_iso8859_1          16384  1
nls_cp437              20480  1
vfat                   20480  1
fat                    77824  1 vfat
amdkfd                151552  1
amd_iommu_v2           20480  1 amdkfd
amdgpu               3104768  18
btusb                  53248  0
btrtl                  16384  1 btusb
btbcm                  16384  1 btusb
btintel                16384  1 btusb
bluetooth             634880  41 btrtl,btintel,bnep,btbcm,rfcomm,btusb
ecdh_generic           24576  2 bluetooth
uvcvideo              102400  0
videobuf2_vmalloc      16384  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         28672  1 uvcvideo
videobuf2_core         45056  2 uvcvideo,videobuf2_v4l2
videodev              208896  3 uvcvideo,videobuf2_core,videobuf2_v4l2
media                  45056  2 uvcvideo,videodev
joydev                 24576  0
iTCO_wdt               16384  0
iTCO_vendor_support    16384  1 iTCO_wdt
input_leds             16384  0
intel_rapl             24576  0
mousedev               24576  0
x86_pkg_temp_thermal    16384  0
intel_powerclamp       16384  0
coretemp               16384  0
kvm_intel             229376  0
chash                  16384  1 amdgpu
i2c_algo_bit           16384  1 amdgpu
ttm                   118784  1 amdgpu
kvm                   704512  1 kvm_intel
drm_kms_helper        200704  1 amdgpu
applesmc               24576  0
brcmfmac              385024  0
input_polldev          16384  1 applesmc
brcmutil               16384  1 brcmfmac
irqbypass              16384  1 kvm
crct10dif_pclmul       16384  0
snd_hda_codec_generic    86016  1
crc32_pclmul           16384  0
ghash_clmulni_intel    16384  0
pcbc                   16384  0
snd_hda_codec_hdmi     57344  1
drm                   466944  6 amdgpu,ttm,drm_kms_helper
snd_hda_intel          45056  3
cfg80211              741376  1 brcmfmac
tg3                   188416  0
snd_hda_codec         151552  3 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic
aesni_intel           188416  2
snd_hda_core           94208  4 snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic
ptp                    20480  1 tg3
aes_x86_64             20480  1 aesni_intel
crypto_simd            16384  1 aesni_intel
glue_helper            16384  1 aesni_intel
agpgart                49152  2 ttm,drm
cryptd                 28672  3 crypto_simd,ghash_clmulni_intel,aesni_intel
snd_hwdep              20480  1 snd_hda_codec
pps_core               20480  1 ptp
intel_cstate           16384  0
syscopyarea            16384  1 drm_kms_helper
intel_uncore          131072  0
snd_pcm               135168  4 snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
sysfillrect            16384  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
intel_rapl_perf        16384  0
pcspkr                 16384  0
libphy                 69632  1 tg3
snd_timer              36864  1 snd_pcm
thunderbolt           131072  0
rfkill                 28672  6 bluetooth,cfg80211
acpi_als               16384  0
i2c_i801               32768  0
snd                    98304  13 snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_pcm
mei_me                 45056  0
kfifo_buf              16384  1 acpi_als
soundcore              16384  1 snd
rtc_cmos               24576  1
mei                   106496  1 mei_me
shpchp                 40960  0
industrialio           81920  2 acpi_als,kfifo_buf
evdev                  20480  17
apple_bl               16384  0
mac_hid                16384  0
crypto_user            16384  0
ip_tables              28672  0
x_tables               45056  1 ip_tables
ext4                  712704  2
crc16                  16384  2 bluetooth,ext4
mbcache                16384  1 ext4
jbd2                  122880  1 ext4
fscrypto               32768  1 ext4
uas                    28672  1
usb_storage            73728  1 uas
hid_generic            16384  0
usbhid                 57344  0
hid                   131072  2 hid_generic,usbhid
sd_mod                 61440  5
sdhci_pci              32768  0
ahci                   40960  2
sdhci                  53248  1 sdhci_pci
led_class              16384  3 applesmc,sdhci,input_leds
libahci                40960  1 ahci
xhci_pci               16384  0
mmc_core              172032  3 sdhci,sdhci_pci,brcmfmac
crc32c_intel           24576  0
xhci_hcd              258048  1 xhci_pci
libata                278528  2 ahci,libahci
usbcore               286720  8 uvcvideo,usbhid,usb_storage,xhci_pci,brcmfmac,btusb,uas,xhci_hcd
scsi_mod              258048  4 sd_mod,usb_storage,libata,uas
usb_common             16384  1 usbcore

Maybe i missed something or there are no solution for this problem since there are others out there with the same problem.

I would be gratefull for any help .

Cheers

If you

and

but

then it’s quite probable that

therefore you’ll have to make do with what you’ve got until someone adds support to the Linux kernel drivers.

About all you can do is try new kernel versions as they come along.

1 Like

To bad but i will try to wait and see if there are someone in here has managed to do something with this issue .

Thanks

I’ve got a similar issue on a iMac 2015, sound works with headphones but not with internal speakers (Masters and every channels are up in alsamixer)…

I’ve tried to add details in modconf.d about the mac model, but did not solve the problem…

On the other hand, it is OK on my macbook pro 2013, everything works… Therefore the problem may be that the Linux kernel does not support the internal speakers of iMacs?

Anyone having an idea why it could be?

My suggestion is to disable the HDMI Audio, reboot and then play a bit with alsamixer in terminal after pressing F6 and selecting the sound card.
From the aplay -l output, as i understand it, there should be another entry there that would look like this:

card 0: PCH [HDA Intel PCH], device 1: Generic Analog [Generic Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

I tried selecting the built-in audio output in pulseaudio or alsamixer, and rebooting, but nothing works, except headphones…

I also tried setting /etc/modprobe.d/modprobe.conf to

options snd_hda_intel model=intel-mac-auto

or even

options snd_hda_intel model=intel-mac-auto index=1,0

but again this does not solve the problem. I start to think that the speakers are not properly taken into account by the kernel… I am running the LTS 4.14, maybe I should try the latest stable?

There is no harm in installing the 4.16 kernel and try. Are the headphones connected in the same jack as the external speakers or are two different jacks ? If are different then the switch should happen automatically, then it remains to see that the internal speakers are set to default and maybe there is an option to “automatically switch all running stream when a new output becomes available”, but i don’t have much experience with Cinnamon, nor XFCE as you are using now (where i never had any issues)

Thanks for the answer!

To be clear: only the internal speakers do not work. I do not have external speakers, but the headphones connected to the unique jack (this is Apple, you get only one port, if you’re lucky!) of the iMac work fine. The “port” option in Volume Control is set to “Speakers”, it actually seems that the system sees them, but nothing happens…

This does not bothering me too much as this is my work computer, but still, it is weird as Manjaro is usually pretty good with hardware configuration…

I will try the 4.16 kernel, but I have only tiny hopes. For instance, the jack emits a red light, and this has been going on for year when using the Linux kernel on a iMac or MacBook Pro…

OK, Problem solved!

This is a bit weird setup, but here is my fix for any futur iMac user that has problem:

  • I updated to kernel 4.16, but I think that this actually is fine with 4.14.

  • going to the sound manager in XFCE (upper right on desktop), select the sound mixer, go to configuration

  • select “off” in the top menu that propose to setup the Digital Surround

  • select Analog Surround 2.1 Output or Analog Surround 2.1 Output + Analog Stereo Input

  • Now the sound works!

Something that still does not work: I can’t setup the sound level, the mixer does nothing…

You have to use alsamixer, to select the HDA Intel PCH, and to play with the PCM volume to setup speaker sound volume.

Forum kindly sponsored by