[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sound on quad powermac/latest powerbooks/imacs



How can I find that out?


Try loading my driver, specifically snd-aoa-codec-onyx :P
Or dive into the device tree, find the layout-id property, and cross
reference it with the layout id in the Info.plist file from
AppleOnboardAudio.

Well, I didn't know where to get the Info.plist file (I only have Linux installed).  So I asked somebody with MacOS on the same hardware and the information for audio is:

Built In Sound Card:
	Devices:
		Burr Brown PCM3052
			Inputs and Ouputs:
			Controls:	Mute,Master
			Playthrough:	No
			PluginID:	Onyx

And so it goes on ...  Onyx shows as the pluginID for all.

My driver will most likely not be able to handle it out of the box,
since the layout id is unknown to it, so you'd have to add it to
snd-aoa-fabric-layout.c

The layout-id was 0x56, so I added this:

      /* PowerMac8,2 */
       { .layout_id = 86, .codecs[0] = "onyx", .codecs[1] = "topaz" },

and I added the alias too.

johannes

Then built and loaded I loaded the modules and this is what I got:

Mar 29 13:26:17 mapache kernel: i2sbus: mapped i2s control registers
Mar 29 13:26:17 mapache kernel: i2sbus: control register contents:
Mar 29 13:26:17 mapache kernel: i2sbus:    fcr0 = 0x8000056
Mar 29 13:26:17 mapache kernel: i2sbus:    cell_control = 0x5b43b71a
Mar 29 13:26:17 mapache kernel: i2sbus:    fcr2 = 0xe7030000
Mar 29 13:26:17 mapache kernel: i2sbus:    fcr3 = 0x7200d607
Mar 29 13:26:17 mapache kernel: i2sbus:    clock_control = 0x0
Mar 29 13:26:17 mapache kernel: i2sbus: found i2s controller
Mar 29 13:26:17 mapache kernel:  ** pmf_call_one(/ht@0,f2000000/pci@2/mac-io@7/cell-enable) **
Mar 29 13:26:17 mapache kernel:  ** pmf_call_one(/ht@0,f2000000/pci@2/mac-io@7/enable) **
Mar 29 13:26:17 mapache kernel:  ** pmf_call_one(/ht@0,f2000000/pci@2/mac-io@7/clock-enable) **
Mar 29 13:26:17 mapache kernel: serial format: 0x41190000
Mar 29 13:26:17 mapache kernel: dws: 0x2000200
Mar 29 13:26:17 mapache kernel: snd-aoa: found bus with layout 86 (using)
Mar 29 13:26:17 mapache kernel: snd-aoa-codec-onyx: found k2-i2c, checking if onyx chip is on it
Mar 29 13:26:17 mapache kernel: low_i2c:xfer() chan=0, addrdir=0x47, mode=4, subsize=1, subaddr=0x43, 1 bytes, bus /ht@0,f2000000/pci@2/mac-io@7/i2c@18000
Mar 29 13:26:17 mapache kernel: low_i2c:kw_handle_interrupt(state_addr, isr: 6)
Mar 29 13:26:17 mapache kernel: low_i2c:KW: NAK on address
Mar 29 13:26:17 mapache kernel: low_i2c:kw_handle_interrupt(state_stop, isr: 6)
Mar 29 13:26:17 mapache kernel: KW: wrong state. Got KW_I2C_IRQ_ADDR, state: state_stop (isr: 06)
Mar 29 13:26:17 mapache kernel: low_i2c:kw_handle_interrupt(state_stop, isr: 4)
Mar 29 13:26:17 mapache kernel: low_i2c:xfer error -5
Mar 29 13:26:17 mapache kernel: snd-aoa-codec-onyx: failed to read control register
Mar 29 13:26:18 mapache kernel: low_i2c:xfer() chan=11, addrdir=0x93, mode=4, subsize=1, subaddr=0x0, 2 bytes, bus /smu@0,0/smu-i2c-control@0/i2c-bus@b


Anything else to try? The following related modules were loaded:

snd_aoa_codec_onyx     13264  0
snd_aoa_fabric_layout     7972  0
snd_aoa                10448  2 snd_aoa_codec_onyx,snd_aoa_fabric_layout
i2sbus                 23872  0
soundbus               11972  2 snd_aoa_fabric_layout,i2sbus
snd_pcm               138060  1 i2sbus
snd_timer              38248  1 snd_pcm
snd_page_alloc         16232  1 snd_pcm
snd                    94648  4 snd_aoa,i2sbus,snd_pcm,snd_timer
soundcore              15344  1 snd



Eduardo.

PD: I'm using kernel 2.6.16-rc1 on PowerMac 8,2 with a couple of patches from Ben and, as you see, the i2c debugging information on.



Reply to: