[coreboot] [PATCH] sb600: don't load verb for codec

Stefan Reinauer stepan at coresystems.de
Fri Mar 5 11:13:34 CET 2010

On 3/5/10 10:29 AM, Bao, Zheng wrote:
> Don't load verb in BIOS stage. It is not BIOS's responsibility.
Who is responsible for that, then?
On i945 I definitely don't get sound on most systems if I don't load the
verb in coreboot. I also don't think the Linux drivers do it.
> And we can not have verb for every single codec.
Have a look at the i82801gx southbridge; I think it was based on the
sb600 code, but I changed it so I can have a per mainboard verb table.
In mainboard_enable() in mainboard.c, call verb_setup() which does:

#include "hda_verb.h"

static void verb_setup(void)
        cim_verb_data = mainboard_cim_verb_data;
        cim_verb_data_size = sizeof(mainboard_cim_verb_data);

and hda_verb.c looks like this:

static u32 mainboard_cim_verb_data[] = {
        /* coreboot specific header */
        0x10ec0262,     // Codec Vendor ID / Device ID
        0x10714700,     // Subsystem ID
        0x0000000d,     // Number of jacks

        /* HDA Codec Subsystem ID Verb Table: 0x10ec0000 */

        /* Pin Widget Verb Table */

        /* Pin Complex (NID 0x12) */

extern u32 * cim_verb_data;
extern u32 cim_verb_data_size;

More information about the coreboot mailing list