Bug 120491 - no sound creative sound blaster Z ssid: 1102:0023
Summary: no sound creative sound blaster Z ssid: 1102:0023
Status: REOPENED
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-16 17:17 UTC by olci
Modified: 2018-05-13 16:37 UTC (History)
4 users (show)

See Also:
Kernel Version: 4.4.13
Tree: Mainline
Regression: No


Attachments
alsa-info.txt (55.57 KB, text/plain)
2016-06-16 17:17 UTC, olci
Details
alsa-info with generic driver (48.44 KB, text/plain)
2016-07-08 00:16 UTC, olci
Details

Description olci 2016-06-16 17:17:50 UTC
Created attachment 220361 [details]
alsa-info.txt

Hi,

sound blaster z 1102:0023 doesn't work on ubuntu 16.04 4.4.14 (4.4.0-25-generic) 
only front line out works everything else doesn't work (i don't have spdif device didn't test) 

spdif input detected and working but no sound from front line out

extracted latest dsp firmware from windowz driver, new firmware didn't change anything

hda-verb /dev/snd/hwC1D1 0x15 GET_PIN_SENSE 0
nid = 0x15, verb = 0xf09, param = 0x0
value = 0x2

cat /sys/class/sound/hwC1D1/init_pin_configs 
0x0b 0x01014010
0x0c 0x014580f0
0x0d 0x014570f0
0x0e 0x01c530f0
0x0f 0x0221401f
0x10 0x02216011
0x11 0x02012014
0x12 0x37a791f0
0x13 0x908700f0
0x18 0x500000f0

Pin 0x0b (Green Line Out, Rear side): present = Yes
Pin 0x0c (Purple SPDIF Out, Rear side): present = No
Pin 0x0d (Yellow SPDIF Out, Rear side): present = No
Pin 0x0e (Blue SPDIF In, Rear side): present = Yes
Pin 0x0f (Green Headphone, Front side): present = No
Pin 0x10 (Orange Headphone, Front side): present = No
Pin 0x11 (Grey Line Out, Front side): present = Yes
Pin 0x12 (Pink Mic, Mobile-In): present = Yes
Pin 0x13 (Internal Line In): present = No
Pin 0x18 (Not connected): present = No
Comment 1 olci 2016-06-20 17:57:26 UTC
i should sell this card it's dead end anyway
Comment 2 olci 2016-06-22 21:26:12 UTC
1102:0023 works fine(all ports) with freebsd 11 but only generic hda driver supported
Comment 3 olci 2016-06-24 17:48:26 UTC
verbose info with pin config from freebsd

hdacc0: <Creative CA0132 HDA CODEC> at cad 1 on hdac0
hdaa0: <Creative CA0132 Audio Function Group> at nid 1 on hdacc0
hdaa0: Subsystem ID: 0x11020023
hdaa0: NumGPIO=0 NumGPO=0 NumGPI=0 GPIWake=1 GPIUnsol=1
hdaa0: Original pins configuration:
hdaa0: nid   0x    as seq device       conn  jack    loc        color   misc
hdaa0: 11 410140f0 15 0  Line-out      None  1/8     Rear       Green   0
hdaa0: 12 014520f0 15 0  SPDIF-out     Jack  Optical Rear       Grey    0
hdaa0: 13 010170f0 15 0  Line-out      Jack  1/8     Rear       Yellow  0
hdaa0: 14 01c510f0 15 0  SPDIF-in      Jack  Optical Rear       Black   0
hdaa0: 15 412000f0 15 0  Headphones    None  Unknown Rear       Unknown 0
hdaa0: 16 022140f0 15 0  Headphones    Jack  1/8     Front      Green   0
hdaa0: 17 418120f0 15 0  Line-in       None  1/8     Rear       Grey    0
hdaa0: 18 01a190f0 15 0  Mic           Jack  1/8     Rear       Pink    0
hdaa0: 19 50d000f0 15 0  Digital-in    None  Unknown Internal   Unknown 0
hdaa0: 24 500000f0 15 0  Line-out      None  Unknown Internal   Unknown 0
hdaa0: Patched pins configuration:
hdaa0: nid   0x    as seq device       conn  jack    loc        color   misc
hdaa0: 11 410140f0 15 0  Line-out      None  1/8     Rear       Green   0 DISA
hdaa0: 12 014520f0 15 0  SPDIF-out     Jack  Optical Rear       Grey    0
hdaa0: 13 010170f0 15 0  Line-out      Jack  1/8     Rear       Yellow  0
hdaa0: 14 01c510f0 15 0  SPDIF-in      Jack  Optical Rear       Black   0
hdaa0: 15 412000f0 15 0  Headphones    None  Unknown Rear       Unknown 0 DISA
hdaa0: 16 022140f0 15 0  Headphones    Jack  1/8     Front      Green   0
hdaa0: 17 418120f0 15 0  Line-in       None  1/8     Rear       Grey    0 DISA
hdaa0: 18 01a190f0 15 0  Mic           Jack  1/8     Rear       Pink    0
hdaa0: 19 50d000f0 15 0  Digital-in    None  Unknown Internal   Unknown 0 DISA
hdaa0: 24 500000f0 15 0  Line-out      None  Unknown Internal   Unknown 0 DISA
hdaa0: 5 associations found:
hdaa0: Association 0 (15) out:
hdaa0:  Pin nid=12 seq=0
hdaa0: Association 1 (15) out:
hdaa0:  Pin nid=13 seq=0
hdaa0: Association 2 (15) in:
hdaa0:  Pin nid=14 seq=0
hdaa0: Association 3 (15) out:
hdaa0:  Pin nid=16 seq=0
hdaa0: Association 4 (15) in:
hdaa0:  Pin nid=18 seq=0
hdaa0: Tracing association 0 (15)
hdaa0:  Pin 12 traced to DAC 5
hdaa0: Association 0 (15) trace succeeded
hdaa0: Tracing association 1 (15)
hdaa0:  Pin 13 traced to DAC 6
hdaa0: Association 1 (15) trace succeeded
hdaa0: Tracing association 2 (15)
hdaa0:  Unable to trace pin 14 to ADC 7, undo traces
hdaa0:  Unable to trace pin 14 to ADC 8, undo traces
hdaa0:  Pin 14 traced to ADC 9
hdaa0: Association 2 (15) trace succeeded
hdaa0: Tracing association 3 (15)
hdaa0:  Pin 16 traced to DAC 3
hdaa0: Association 3 (15) trace succeeded
hdaa0: Tracing association 4 (15)
hdaa0:  Pin 18 traced to ADC 7
hdaa0: Association 4 (15) trace succeeded
hdaa0: Looking for additional DAC for association 0 (15)
hdaa0: Looking for additional DAC for association 1 (15)
hdaa0: Looking for additional ADC for association 2 (15)
hdaa0: Looking for additional DAC for association 3 (15)
hdaa0: Looking for additional ADC for association 4 (15)
hdaa0: Tracing input monitor
hdaa0: Tracing other input monitors
hdaa0:  Tracing nid 14 to out
hdaa0:  Tracing nid 18 to out
hdaa0: Tracing beeper
hdaa0: Pin sense: nid=16 sense=0x80000000 (connected)
hdaa0: Pin sense: nid=18 sense=0x80000000 (connected)
hdaa0: FG config/quirks: forcestereo ivref50 ivref80 ivref100 ivref
pcm0: <Creative CA0132 (Rear Digital)> at nid 12 and 14 on hdaa0
pcm0: Playback:
pcm0:      Stream cap: 0x00000005 AC3 PCM
pcm0:         PCM cap: 0x000a01e0 16 24 bits, 44 48 88 96 KHz
pcm0:             DAC: 5
pcm0: 
pcm0:     nid=12 [pin: SPDIF-out (Grey Jack)]
pcm0:       + <- nid=5 [audio output] [src: pcm]
pcm0: 
pcm0: Record:
pcm0:      Stream cap: 0x00000005 AC3 PCM
pcm0:         PCM cap: 0x000a01f0 16 24 bits, 32 44 48 88 96 KHz
pcm0:             ADC: 9
pcm0: 
pcm0:     nid=9 [audio input]
pcm0:       + <- nid=14 [pin: SPDIF-in (Black Jack)] [src: dig1]
pcm0: 
pcm0: Speaker/Beep Volume (OSS: speaker): -46/0dB
pcm0:    +- ctl  5 (nid  20 out):    -46/0dB (32 steps) + mute
pcm0: 
pcm0: Mixer "vol" -> "none": child=0x00000010
pcm0: Mixer "pcm": parent="vol"
pcm0: Mixer "speaker":
pcm0: Soft PCM mixer ENABLED
pcm0: Playback channel set is: Front Left, Front Right, 
pcm0: Playback channel matrix is: 2.0 (unknown)
pcm0: Automatically set rec source to: dig1
pcm0: Recording channel set is: Front Left, Front Right, 
pcm0: Recording channel matrix is: 2.0 (unknown)
random: harvesting attach, 8 bytes (4 bits) from pcm0
pcm1: <Creative CA0132 (Rear Analog)> at nid 13 and 18 on hdaa0
pcm1: Playback:
pcm1:      Stream cap: 0x00000001 PCM
pcm1:         PCM cap: 0x000a05e0 16 24 bits, 44 48 88 96 192 KHz
pcm1:             DAC: 6
pcm1: 
pcm1:     nid=13 [pin: Line-out (Yellow Jack)]
pcm1:       + <- nid=6 [audio output] [src: pcm]
pcm1: 
pcm1: Record:
pcm1:      Stream cap: 0x00000001 PCM
pcm1:         PCM cap: 0x000a01e4 16 24 bits, 16 44 48 88 96 KHz
pcm1:             ADC: 7
pcm1: 
pcm1:     nid=7 [audio input]
pcm1:       + <- nid=18 [pin: Mic (Pink Jack)] [src: mic]
pcm1: 
pcm1: Microphone Volume (OSS: mic): 0/30dB
pcm1:    +- ctl  1 (nid   7 in   0): 0/23dB (24 steps)
pcm1:    +- ctl  4 (nid  18 out):    0/30dB (4 steps)
pcm1: 
pcm1: Recording Level (OSS: rec): 0/23dB
pcm1:    +- ctl  1 (nid   7 in   0): 0/23dB (24 steps)
pcm1:    +- ctl  4 (nid  18 out):    0/30dB (4 steps)
pcm1: 
pcm1: Mixer "vol" -> "none": child=0x00000010
pcm1: Mixer "pcm": parent="vol"
pcm1: Mixer "mic":
pcm1: Mixer "rec":
pcm1: Soft PCM mixer ENABLED
pcm1: Playback channel set is: Front Left, Front Right, 
pcm1: Playback channel matrix is: 2.0 (disconnected)
pcm1: Automatically set rec source to: mic
pcm1: Recording channel set is: Front Left, Front Right, 
pcm1: Recording channel matrix is: 2.0 (connected)
random: harvesting attach, 8 bytes (4 bits) from pcm1
pcm2: <Creative CA0132 (Front Analog Headphones)> at nid 16 on hdaa0
pcm2: Playback:
pcm2:      Stream cap: 0x00000001 PCM
pcm2:         PCM cap: 0x000a05e4 16 24 bits, 16 44 48 88 96 192 KHz
pcm2:             DAC: 3
pcm2: 
pcm2:     nid=16 [pin: Headphones (Green Jack)]
pcm2:       + <- nid=3 [audio output] [src: pcm]
pcm2: 
pcm2: Mixer "vol" -> "none": child=0x00000010
pcm2: Mixer "pcm": parent="vol"
pcm2: Soft PCM mixer ENABLED
pcm2: Playback channel set is: Front Left, Front Right, 
pcm2: Playback channel matrix is: 2.0 (connected)
random: harvesting attach, 8 bytes (4 bits) from pcm2
Comment 4 olci 2016-06-24 20:45:01 UTC
Pin configs from windowz registry and they are same as freebsd configs

that's all for now 
stay tune :)

NID: 11
Node: 0x0b
Pin: 0x410140f0
Verb 00B71CF0 00B71D40 00B71E01 00B71F41 

NID: 12
Node: 0x0c
Pin: 0x014520f0
Verb 00C71CF0 00C71D20 00C71E45 00C71F01 

NID: 13
Node: 0x0d
Pin: 0x010171f0
Verb 00D71CF0 00D71D71 00D71E01 00D71F01 

NID: 14
Node: 0x0e
Pin: 0x01c510f0
Verb 00E71CF0 00E71D10 00E71EC5 00E71F01 

NID: 15
Node: 0x0f
Pin: 0x412000f0
Verb 00F71CF0 00F71D00 00F71E20 00F71F41 

NID: 16
Node: 0x10
Pin: 0x022140f0
Verb 01071CF0 01071D40 01071E21 01071F02 

NID: 17
Node: 0x11
Pin: 0x418120f0
Verb 01171CF0 01171D20 01171E81 01171F41 

NID: 18
Node:0x12
Pin:0x01a190f0
Verb 01271CF0 01271D90 01271EA1 01271F01 

NID: 19
Node:0x13
Pin:0x50d000f0
Verb 01371CF0 01371D00 01371ED0 01371F50 

NID: 24
Node:0x18
Pin:0x500000f0
Verb 01871CF0 01871D00 01871E00 01871F50
Comment 5 olci 2016-06-25 16:29:10 UTC
little digging with hd audio utility from windows side
i found some widget controls and they were enabled with windows driver
so i tried one by one or all of them 

I got sound from rear but it was static noise in loud :)

hda-verb /dev/snd/hwC1D1 0x0b SET_PIN_WIDGET_CONTROL 0x40 > Out Enable
hda-verb /dev/snd/hwC1D1 0x10 SET_PIN_WIDGET_CONTROL 0xc0 > Out Enable/H-phone enable
hda-verb /dev/snd/hwC1D1 0x0f SET_PIN_WIDGET_CONTROL 0x00 > it's enabled with 0x40 connected with front panel jack this is for disable
hda-verb /dev/snd/hwC1D1 0x11 SET_PIN_WIDGET_CONTROL 0x44 > Out Enable
hda-verb /dev/snd/hwC1D1 0x15 SET_PIN_WIDGET_CONTROL 0xe7 > In enable/Out enable/H-phone out enable


#!/bin/bash

CA0132fs=/sys/devices/virtual/sound/hdaudioC0D1/hwC1D1
echo "0x0b 0x410140f0" > $CA0132fs/user_pin_configs
echo "0x0c 0x014520f0" > $CA0132fs/user_pin_configs
echo "0x0d 0x010170f0" > $CA0132fs/user_pin_configs
echo "0x0e 0x01c510f0" > $CA0132fs/user_pin_configs
echo "0x0f 0x412000f0" > $CA0132fs/user_pin_configs
echo "0x10 0x022140f0" > $CA0132fs/user_pin_configs
echo "0x11 0x418120f0" > $CA0132fs/user_pin_configs
echo "0x12 0x01a190f0" > $CA0132fs/user_pin_configs
echo "0x13 0x50d000f0" > $CA0132fs/user_pin_configs
echo "0x18 0x500000f0" > $CA0132fs/user_pin_configs
echo 1 > $CA0132fs/reconfig
Comment 6 olci 2016-06-30 21:50:03 UTC
@Takashi Iwai
Hi, I suppose so this card won't work anytime soon with linux am i right ?
Comment 7 olci 2016-07-08 00:16:12 UTC
Created attachment 222411 [details]
alsa-info with generic driver

with generic module pin configs correctly detected as windows/freebsd driver
but no sound both sides
Comment 8 Dave Wee 2016-07-25 06:57:34 UTC
I have the same problem, 1102:0023.
Comment 9 Connor M 2018-02-15 23:08:38 UTC
Hey! I am in the early stages of fixing this problem. I have this exact card, and have managed to get audio working along with the DSP by reverse engineering the Windows driver. 

I am in the final stages of making it work, and could definitely use help from anyone who is knowledgeable in how ALSA sets up it's streams when the driver begins. Currently, it starts the Mic stream first, which messes things up. However, I do have a early working driver if anyone wants to test it out.

https://drive.google.com/open?id=1r-X8g6It5AO7SwgJc1JQfJ8KCOyqrr_d has both the patch_ca0132.c file and the firmware file. To make this work, you'll need to compile your own kernel, and put the ctefx.bin file in your /lib/firmware folder, replacing the original.

To get it to work, after Linux has started up, enable the HP/Speaker Autodetect in alsamixer, and audio should work. All that works so far is rear line out and rear headphone. I'm in progress of making the inputs work and making the front headphone work, and from there I'll try to get Dolby Live and stuff working.

This is going a little bit slow for me as I'm working on my own, and this is my first time doing anything of this magnitude. I tried sending an email to the kernel mailing list, but got no response, so I'm guessing I worded my email improperly or something. 

Anyways, if anyone who has more knowledge than me could help me out, that'd be great. Shoot me an email. Thanks.
Comment 10 Gleboff 2018-04-01 16:55:07 UTC
(In reply to Connor M from comment #9)
> Hey! I am in the early stages of fixing this problem.

Hello and big thanks for patch. Only last version of 1st april will get work my Sound Blaster Z 1102:0010
Comment 11 Linus 2018-05-13 09:48:44 UTC
Do someone has any new information or done progress in solving this problem?

I bought this soundcard, installed it and have no problems in Windows, but in Linux (Mint 18.3 64-bit | Kernel 4.13.0-41 generic) the card shows up (alsa) but I doesn't get any sound.
Comment 12 Connor M 2018-05-13 16:37:00 UTC
It works for many people, although it requires compiling your own kernel. Just today it was put into the linux-next branch, so it may be released on the next kernel release. I don't know enough about it to know how it works. 

If you want to have it now though, you should download "patch_ca0132.c" from the drive link I posted in an earlier comment, put that in your *kernel_source*/sound/pci/hda, and put the ctefx-sbz.bin firmware file into your main /lib/firmware folder. You'll have to compile your own kernel though. There are many guides on doing so.

Note You need to log in before you can comment on or make changes to this bug.