[coreboot] SB600 HDA can't find codec fix

Dan Lykowski engineerguy3737 at yahoo.com
Wed Feb 4 04:57:46 CET 2009


Sorry for the delay.. Way too much to do and so little time..

Fixed the spotted issues and added 1ms delay to match the BKDG while waiting for BAR+0xe to set its bits.

Dan Lykowski

Signed-off-by: Dan Lykowski<lykowdk at gmail.com>




________________________________
From: "Li, Maggie" <Maggie.Li at amd.com>
To: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Cc: Dan Lykowski <engineerguy3737 at yahoo.com>; Marc Jones <marcj303 at gmail.com>; coreboot at coreboot.org
Sent: Sunday, February 1, 2009 7:47:15 PM
Subject: RE: [coreboot] SB600 HDA can't find codec fix

Carl, 

I see. Pci_find_device is more reliable than dev_find_slot. However, we didn't use the former in our SB600 and RS690 code. There are many places to be modified if needed.

Best regards
Maggie li

-----Original Message-----
From: Carl-Daniel Hailfinger [mailto:c-d.hailfinger.devel.2006 at gmx.net] 
Sent: Monday, February 02, 2009 10:26 AM
To: Li, Maggie
Cc: Dan Lykowski; Marc Jones; coreboot at coreboot.org
Subject: Re: [coreboot] SB600 HDA can't find codec fix

Hi Maggie,

while your point about pci_find_device is valid, I think that
dev_find_device is the function Dan should choose. It allows us to
address the PCI devices even if their bus locations are shifted which is
possible with some AMD chipsets and may also be true for boards with
multiple chipsets.
In general, we want to use functions which can deal with non-default bus
topologies.

On 02.02.2009 02:48, Li, Maggie wrote:
> Dan,
>
>  
>
> I read the RRG spec, just as you said, you should use 0xF in file sb600_hda.c to get the current audio codec, that is to say, 
>
> dword &= 0xF;
>     if (!dword)  
>         goto no_codec;
>
>  
>
> pci_locate_device is really should be used in early setup. Device_t is the type of u32 at that time. After this stage, you should use dev_find_slot. In file sb600_sata.c, “/* sm_dev = pci_locate_device(PCI_ID(0x1002, 0x4385), 0) */ “ gives you misunderstanding about how to get the SMBus and it should be removed. You can submit a patch about sata and I will ack it. Thanks.
>  

I'd prefer to use dev_find_device there as well.

Regards,
Carl-Daniel

-- 
http://www.hailfinger.org/ 


      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20090203/0c83db28/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hda_fix.patch
Type: text/x-patch
Size: 2950 bytes
Desc: not available
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20090203/0c83db28/attachment.patch>


More information about the coreboot mailing list