All of lore.kernel.org
 help / color / mirror / Atom feed
* Support for ALC1200
@ 2008-09-30  8:10 Norbert Piotrowski
  0 siblings, 0 replies; 4+ messages in thread
From: Norbert Piotrowski @ 2008-09-30  8:10 UTC (permalink / raw)
  To: alsa-devel

I have a question about ALC1200 which is used by ASUS in P5Q motherboard. Unfortunately I have that board and problems with spdif output ( simply no light, it's not a problem with mute/unmute IEC958 ). ALC1200 is recognized as ALC883, below more details. 

Realtek don't publish specification for that chip because it was made for Asus request. From what i gathered, 1200 is 890 in disguise, but I'm not sure about that.

I would like to know if there is any chance to add support in alsa driver for that kind of codec in the near future ? I will be very grateful for any help or suggestion.

Best regards,
Norbert

norbert@nelson / $ uname -a
Linux nelson 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC 2008 i686 GNU/Linux

norbert@nelson / $ alsactl -v
alsactl version 1.0.18rc3

norbert@nelson / $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC883 Analog [ALC883 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC883 Digital [ALC883 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

norbert@nelson / $ aplay -L
default:CARD=Intel
    HDA Intel, ALC883 Analog
    Default Audio Device
front:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    Front speakers
surround40:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Intel,DEV=0
    HDA Intel, ALC883 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
hdmi:CARD=Intel,DEV=0
    HDA Intel
    HDMI Audio Output
null
    Discard all samples (playback) or generate zero samples (capture)


norbert@nelson / $ cat /proc/asound/card0/codec#0 
Codec: Realtek ALC888
Address: 0
Vendor Id: 0x10ec0888
Subsystem Id: 0x104382fe
Revision Id: 0x100101
No Modem Function Group found
Default PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=2, o=0, i=0, unsolicited=1, wake=0
  IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0
  IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0
Node 0x02 [Audio Output] wcaps 0x11: Stereo
  Converter: stream=0, channel=0
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x11: Stereo
  Converter: stream=0, channel=0
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x04 [Audio Output] wcaps 0x11: Stereo
  Converter: stream=0, channel=0
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x05 [Audio Output] wcaps 0x11: Stereo
  Converter: stream=0, channel=0
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
  Converter: stream=0, channel=0
  Digital:
  Digital category: 0x0
  PCM:
    rates [0x5e0]: 44100 48000 88200 96000 192000
    bits [0x1e]: 16 20 24 32
    formats [0x1]: PCM
Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
  Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x00 0x00]
  Converter: stream=0, channel=0
  SDI-Select: 0
  PCM:
    rates [0x160]: 44100 48000 96000
    bits [0x6]: 16 20
    formats [0x1]: PCM
  Connection: 1
     0x23
Node 0x09 [Audio Input] wcaps 0x10011b: Stereo Amp-In
  Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x00 0x00]
  Converter: stream=0, channel=0
  SDI-Select: 0
  PCM:
    rates [0x160]: 44100 48000 96000
    bits [0x6]: 16 20
    formats [0x1]: PCM
  Connection: 1
     0x22
Node 0x0a [Audio Input] wcaps 0x100391: Stereo Digital
  Converter: stream=0, channel=0
  SDI-Select: 0
  Digital:
  Digital category: 0x0
  PCM:
    rates [0x160]: 44100 48000 96000
    bits [0x1e]: 16 20 24 32
    formats [0x1]: PCM
  Unsolicited: tag=00, enabled=0
  Connection: 1
     0x1f
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
  Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
  Amp-In vals:  [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Connection: 10
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17
Node 0x0c [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x13 0x13]
  Connection: 2
     0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x04 0x0b
Node 0x0f [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x05 0x0b
Node 0x10 [Audio Output] wcaps 0x211: Stereo Digital
  Converter: stream=0, channel=0
  Digital:
  Digital category: 0x0
  PCM:
    rates [0x5e0]: 44100 48000 88200 96000 192000
    bits [0x1e]: 16 20 24 32
    formats [0x1]: PCM
Node 0x11 [Pin Complex] wcaps 0x400300: Mono Digital
  Pincap 0x0810: OUT
  Pin Default 0x99430140: [Fixed] SPDIF Out at Int ATAPI
    Conn = ATAPI, Color = Unknown
    DefAssociation = 0x4, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Connection: 1
     0x10
Node 0x12 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect Trigger
  Pin Default 0x01014010: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Green
    DefAssociation = 0x1, Sequence = 0x0
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x15 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x083e: IN OUT HP Detect Trigger
  Pin Default 0x01011012: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0x1, Sequence = 0x2
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c 0x0d* 0x0e 0x0f 0x26
Node 0x16 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x0836: IN OUT Detect Trigger
  Pin Default 0x01016011: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Orange
    DefAssociation = 0x1, Sequence = 0x1
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c 0x0d 0x0e* 0x0f 0x26
Node 0x17 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x0836: IN OUT Detect Trigger
  Pin Default 0x01012014: [Jack] Line Out at Ext Rear
    Conn = 1/8, Color = Grey
    DefAssociation = 0x1, Sequence = 0x4
  Pin-ctls: 0x40: OUT
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c 0x0d 0x0e 0x0f* 0x26
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08373e: IN OUT HP Detect Trigger
    Vref caps: HIZ 50 GRD 80 100
  Pin Default 0x01a19850: [Jack] Mic at Ext Rear
    Conn = 1/8, Color = Pink
    DefAssociation = 0x5, Sequence = 0x0
  Pin-ctls: 0x24: IN VREF_80
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08373e: IN OUT HP Detect Trigger
    Vref caps: HIZ 50 GRD 80 100
  Pin Default 0x02a19d60: [Jack] Mic at Ext Front
    Conn = 1/8, Color = Pink
    DefAssociation = 0x6, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x24: IN VREF_80
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x08373e: IN OUT HP Detect Trigger
    Vref caps: HIZ 50 GRD 80 100
  Pin Default 0x0181305f: [Jack] Line In at Ext Rear
    Conn = 1/8, Color = Blue
    DefAssociation = 0x5, Sequence = 0xf
  Pin-ctls: 0x20: IN VREF_HIZ
  Unsolicited: tag=00, enabled=0
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x08373e: IN OUT HP Detect Trigger
    Vref caps: HIZ 50 GRD 80 100
  Pin Default 0x02214d20: [Jack] HP Out at Ext Front
    Conn = 1/8, Color = Green
    DefAssociation = 0x2, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0xc0: OUT HP VREF_HIZ
  Unsolicited: tag=04, enabled=1
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1c [Pin Complex] wcaps 0x400001: Stereo
  Pincap 0x0820: IN
  Pin Default 0x593301f0: [N/A] CD at Int ATAPI
    Conn = ATAPI, Color = Unknown
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x20: IN
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
  Pincap 0x0820: IN
  Pin Default 0x4015e601: [N/A] Speaker at Ext N/A
    Conn = Optical, Color = White
    DefAssociation = 0x0, Sequence = 0x1
  Pin-ctls: 0x20: IN
Node 0x1e [Pin Complex] wcaps 0x400300: Mono Digital
  Pincap 0x0810: OUT
  Pin Default 0x01447130: [Jack] SPDIF Out at Ext Rear
    Conn = RCA, Color = Yellow
    DefAssociation = 0x3, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x40: OUT
  Connection: 1
     0x06
Node 0x1f [Pin Complex] wcaps 0x400200: Mono Digital
  Pincap 0x0820: IN
  Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
  Pin-ctls: 0x20: IN
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
  Processing caps: benign=0, ncoeff=17
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Connection: 11
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
  Connection: 11
     0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x24 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x25 [Audio Output] wcaps 0x11: Stereo
  Converter: stream=0, channel=0
  PCM:
    rates [0x560]: 44100 48000 96000 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Node 0x26 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
  Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-In vals:  [0x00 0x00] [0x00 0x00]
  Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
  Amp-Out vals:  [0x00 0x00]
  Connection: 2
     0x25 0x0b

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c
@ 2008-10-13 12:39 Arun KS
  2008-10-13 12:54 ` Takashi Iwai
  2008-10-13 15:52 ` Support for ALC1200 Norbert Piotrowski
  0 siblings, 2 replies; 4+ messages in thread
From: Arun KS @ 2008-10-13 12:39 UTC (permalink / raw)
  To: alsa-devel; +Cc: Takashi Iwai, Andrew Morton, Mark Brown

[-- Attachment #1: Type: text/plain, Size: 1766 bytes --]

Fixes this warning:

sound/soc/codecs/tlv320aic23.c: In function 'tlv320aic23_write':
sound/soc/codecs/tlv320aic23.c:104: warning: passing argument 2 of
'codec->hw_write' makes pointer from integer without a cast

Replaces i2c smbus write function with standard i2c write function

Signed-off-by: Arun KS <arunks@mistralsolutions.com>
---
 sound/soc/codecs/tlv320aic23.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sound/soc/codecs/tlv320aic23.c b/sound/soc/codecs/tlv320aic23.c
index bac7815..44308da 100644
--- a/sound/soc/codecs/tlv320aic23.c
+++ b/sound/soc/codecs/tlv320aic23.c
@@ -84,7 +84,7 @@ static int tlv320aic23_write(struct snd_soc_codec
*codec, unsigned int reg,
 			     unsigned int value)
 {

-	u8 data;
+	u8 data[2];

 	/* TLV320AIC23 has 7 bit address and 9 bits of data
 	 * so we need to switch one data bit into reg and rest
@@ -96,12 +96,12 @@ static int tlv320aic23_write(struct snd_soc_codec
*codec, unsigned int reg,
 		return -1;
 	}

-	data = (reg << 1) | (value >> 8 & 0x01);
+	data[0] = (reg << 1) | (value >> 8 & 0x01);
+	data[1] = value & 0xff;

 	tlv320aic23_write_reg_cache(codec, reg, value);

-	if (codec->hw_write(codec->control_data, data,
-			    (value & 0xff)) == 0)
+	if (codec->hw_write(codec->control_data, data, 2) == 2)
 		return 0;

 	printk(KERN_ERR "%s cannot write %03x to register R%d\n", __func__,
@@ -674,7 +674,7 @@ static int tlv320aic23_probe(struct platform_device *pdev)

 	tlv320aic23_socdev = socdev;
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-	codec->hw_write = (hw_write_t) i2c_smbus_write_byte_data;
+	codec->hw_write = (hw_write_t) i2c_master_send;
 	codec->hw_read = NULL;
 	ret = i2c_add_driver(&tlv320aic23_i2c_driver);
 	if (ret != 0)
-- 
1.5.3.4

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-ALSA-ASoC-Fix-compile-time-warning-for-tlv320aic23.patch --]
[-- Type: text/x-patch; name=0001-ALSA-ASoC-Fix-compile-time-warning-for-tlv320aic23.patch, Size: 2000 bytes --]

From 5355b18bec0d5286776be806dc06ef58ac1a818d Mon Sep 17 00:00:00 2001
From: Arun KS <arunks@mistralsolutions.com>
Date: Mon, 13 Oct 2008 15:47:25 +0530
Subject: [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c

Fixes this warning:

sound/soc/codecs/tlv320aic23.c: In function 'tlv320aic23_write':
sound/soc/codecs/tlv320aic23.c:104: warning: passing argument 2 of
'codec->hw_write' makes pointer from integer without a cast

Replaces i2c smbus write function with standard i2c write function

Signed-off-by: Arun KS <arunks@mistralsolutions.com>
---
 sound/soc/codecs/tlv320aic23.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sound/soc/codecs/tlv320aic23.c b/sound/soc/codecs/tlv320aic23.c
index bac7815..44308da 100644
--- a/sound/soc/codecs/tlv320aic23.c
+++ b/sound/soc/codecs/tlv320aic23.c
@@ -84,7 +84,7 @@ static int tlv320aic23_write(struct snd_soc_codec *codec, unsigned int reg,
 			     unsigned int value)
 {
 
-	u8 data;
+	u8 data[2];
 
 	/* TLV320AIC23 has 7 bit address and 9 bits of data
 	 * so we need to switch one data bit into reg and rest
@@ -96,12 +96,12 @@ static int tlv320aic23_write(struct snd_soc_codec *codec, unsigned int reg,
 		return -1;
 	}
 
-	data = (reg << 1) | (value >> 8 & 0x01);
+	data[0] = (reg << 1) | (value >> 8 & 0x01);
+	data[1] = value & 0xff;
 
 	tlv320aic23_write_reg_cache(codec, reg, value);
 
-	if (codec->hw_write(codec->control_data, data,
-			    (value & 0xff)) == 0)
+	if (codec->hw_write(codec->control_data, data, 2) == 2)
 		return 0;
 
 	printk(KERN_ERR "%s cannot write %03x to register R%d\n", __func__,
@@ -674,7 +674,7 @@ static int tlv320aic23_probe(struct platform_device *pdev)
 
 	tlv320aic23_socdev = socdev;
 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
-	codec->hw_write = (hw_write_t) i2c_smbus_write_byte_data;
+	codec->hw_write = (hw_write_t) i2c_master_send;
 	codec->hw_read = NULL;
 	ret = i2c_add_driver(&tlv320aic23_i2c_driver);
 	if (ret != 0)
-- 
1.5.3.4


[-- Attachment #3: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c
  2008-10-13 12:39 [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c Arun KS
@ 2008-10-13 12:54 ` Takashi Iwai
  2008-10-13 15:52 ` Support for ALC1200 Norbert Piotrowski
  1 sibling, 0 replies; 4+ messages in thread
From: Takashi Iwai @ 2008-10-13 12:54 UTC (permalink / raw)
  To: Arun KS; +Cc: alsa-devel, Mark Brown, Andrew Morton

At Mon, 13 Oct 2008 18:09:36 +0530,
Arun KS wrote:
> 
> From 5355b18bec0d5286776be806dc06ef58ac1a818d Mon Sep 17 00:00:00 2001
> From: Arun KS <arunks@mistralsolutions.com>
> Date: Mon, 13 Oct 2008 15:47:25 +0530
> Subject: [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c
> 
> Fixes this warning:
> 
> sound/soc/codecs/tlv320aic23.c: In function 'tlv320aic23_write':
> sound/soc/codecs/tlv320aic23.c:104: warning: passing argument 2 of
> 'codec->hw_write' makes pointer from integer without a cast
> 
> Replaces i2c smbus write function with standard i2c write function
> 
> Signed-off-by: Arun KS <arunks@mistralsolutions.com>

Applied now.  Thanks.


Takashi

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for ALC1200
  2008-10-13 12:39 [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c Arun KS
  2008-10-13 12:54 ` Takashi Iwai
@ 2008-10-13 15:52 ` Norbert Piotrowski
  1 sibling, 0 replies; 4+ messages in thread
From: Norbert Piotrowski @ 2008-10-13 15:52 UTC (permalink / raw)
  To: alsa-devel

Hello

I have a bit more information. I've got newer kernel and alsa build from 
last snapshot (10.13.2008), ALC1200 is recognized as ALC888. Still no light 
at spdif output.

Results of alsa-info.sh 
http://www.alsa-project.org/db/?f=caa27b0a7c7a18b1350e96ee8e872dc72b808e0d

[root@nelson ~]# dmesg | grep -i alsa
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:2130: 
chipset global capabilities = 0x4401
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:771: 
codec_mask = 0x1
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:3285: 
autoconfig: line_outs=4 (0x14/0x15/0x16/0x17/0x0)
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:3289: 
speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:3293: 
hp_outs=1 (0x1b/0x0/0x0/0x0/0x0)
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:3294: 
mono: mono_out=0x0
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:3302: 
inputs: mic=0x18, fmic=0x19, line=0x1a, fline=0x0, cd=0x0, aux=0x0
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Headphone Playback Volume, skipped
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Speaker Playback Volume, skipped
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Mono Playback Volume, skipped
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Line-Out Playback Volume, skipped
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Speaker Playback Switch, skipped
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:1213: 
Cannot find slave Mono Playback Switch, skipped
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:1434: 
azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x6, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x3, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x4, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x5, stream=0x5, channel=0, format=0x4011
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:1434: 
azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x6, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x3, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x4, stream=0x5, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x5, stream=0x5, channel=0, format=0x4011
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:1434: 
azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x8, stream=0x1, channel=0, format=0x4011
ALSA 
/home/norbert/alsa-git/alsa-driver-unstable/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:1434: 
azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:780: 
hda_codec_setup_stream: NID=0x8, stream=0x1, channel=0, format=0x4011
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x8
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x8
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x2
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x3
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x4
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x5
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x6
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x2
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x3
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x4
ALSA /home/norbert/alsa-git/alsa-driver-unstable/pci/hda/hda_codec.c:792: 
hda_codec_cleanup_stream: NID=0x5


Best regards,
Norbert 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-10-13 15:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-13 12:39 [PATCH] ALSA: ASoC: Fix compile-time warning for tlv320aic23.c Arun KS
2008-10-13 12:54 ` Takashi Iwai
2008-10-13 15:52 ` Support for ALC1200 Norbert Piotrowski
  -- strict thread matches above, loose matches on Subject: below --
2008-09-30  8:10 Norbert Piotrowski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.