slippy/flaco/peppy: setup beep verbs

Add verb setting for beep during recovery and dev mode.
Requires depthcharge CL.

Change-Id: I13cbb4e889ebc4c27bb4ab9fa49601b03e872d09
Signed-off-by: Marc Jones <marc.jones@se-eng.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/66519
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Commit-Queue: Duncan Laurie <dlaurie@chromium.org>
(cherry picked from commit c072543946b317192a8e80a744c1515deb414456)
Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com>
Reviewed-on: http://review.coreboot.org/6502
Tested-by: build bot (Jenkins)
Reviewed-by: David Hendricks <dhendrix@chromium.org>
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
This commit is contained in:
Marc Jones 2013-08-21 05:21:21 -06:00 committed by Isaac Christensen
parent 61fcd14561
commit 4acd8ea778
6 changed files with 72 additions and 3 deletions

View File

@ -21,7 +21,7 @@ static const u32 mainboard_cim_verb_data[] = {
/* coreboot specific header */ /* coreboot specific header */
0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283 0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283
0x10ec0283, // Subsystem ID 0x10ec0283, // Subsystem ID
0x0000000b, // Number of jacks (NID entries) 0x0000000c, // Number of jacks (NID entries)
/* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x10ec0283 */ /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x10ec0283 */
0x00172083, 0x00172083,
@ -91,4 +91,22 @@ static const u32 mainboard_cim_verb_data[] = {
0x02171e21, // HPOut, 1/8 stereo 0x02171e21, // HPOut, 1/8 stereo
0x02171f03, // connector, left panel 0x02171f03, // connector, left panel
/* Undocumented settings from Realtek (needed for beep_gen) */
/* Widget node 0x20 */
0x02050010,
0x02040c20,
0x0205001b,
0x0204081b,
}; };
static const u32 mainboard_pc_beep_verbs[] = {
0x00170500, /* power up everything (codec, dac, adc, mixers) */
0x01470740, /* enable speaker out */
0x01470c02, /* set speaker EAPD pin */
0x0143b01f, /* unmute speaker */
0x00c37100, /* unmute mixer nid 0xc input 1 */
0x00b37410, /* unmute mixer nid 0xb beep input and set volume */
};
static const u32 mainboard_pc_beep_verbs_size =
sizeof(mainboard_pc_beep_verbs) / sizeof(mainboard_pc_beep_verbs[0]);

View File

@ -135,11 +135,16 @@ static int int15_handler(void)
extern const u32 * cim_verb_data; extern const u32 * cim_verb_data;
extern u32 cim_verb_data_size; extern u32 cim_verb_data_size;
extern const u32 * pc_beep_verbs;
extern u32 pc_beep_verbs_size;
static void verb_setup(void) static void verb_setup(void)
{ {
cim_verb_data = mainboard_cim_verb_data; cim_verb_data = mainboard_cim_verb_data;
cim_verb_data_size = sizeof(mainboard_cim_verb_data); cim_verb_data_size = sizeof(mainboard_cim_verb_data);
pc_beep_verbs = mainboard_pc_beep_verbs;
pc_beep_verbs_size = mainboard_pc_beep_verbs_size;
} }
static void mainboard_init(device_t dev) static void mainboard_init(device_t dev)

View File

@ -21,7 +21,7 @@ static const u32 mainboard_cim_verb_data[] = {
/* coreboot specific header */ /* coreboot specific header */
0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283 0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283
0x10ec0283, // Subsystem ID 0x10ec0283, // Subsystem ID
0x0000000b, // Number of jacks (NID entries) 0x0000000c, // Number of jacks (NID entries)
/* Bits 31:28 - Codec Address */ /* Bits 31:28 - Codec Address */
/* Bits 27:20 - NID */ /* Bits 27:20 - NID */
@ -96,4 +96,22 @@ static const u32 mainboard_cim_verb_data[] = {
0x02171e21, // HPOut, 3.5mm Jack 0x02171e21, // HPOut, 3.5mm Jack
0x02171f03, // connector, left panel 0x02171f03, // connector, left panel
/* Undocumented settings from Realtek (needed for beep_gen) */
/* Widget node 0x20 */
0x02050010,
0x02040c20,
0x0205001b,
0x0204081b,
}; };
static const u32 mainboard_pc_beep_verbs[] = {
0x00170500, /* power up everything (codec, dac, adc, mixers) */
0x01470740, /* enable speaker out */
0x01470c02, /* set speaker EAPD pin */
0x0143b01f, /* unmute speaker */
0x00c37100, /* unmute mixer nid 0xc input 1 */
0x00b37410, /* unmute mixer nid 0xb beep input and set volume */
};
static const u32 mainboard_pc_beep_verbs_size =
sizeof(mainboard_pc_beep_verbs) / sizeof(mainboard_pc_beep_verbs[0]);

View File

@ -135,11 +135,16 @@ static int int15_handler(void)
extern const u32 * cim_verb_data; extern const u32 * cim_verb_data;
extern u32 cim_verb_data_size; extern u32 cim_verb_data_size;
extern const u32 * pc_beep_verbs;
extern u32 pc_beep_verbs_size;
static void verb_setup(void) static void verb_setup(void)
{ {
cim_verb_data = mainboard_cim_verb_data; cim_verb_data = mainboard_cim_verb_data;
cim_verb_data_size = sizeof(mainboard_cim_verb_data); cim_verb_data_size = sizeof(mainboard_cim_verb_data);
pc_beep_verbs = mainboard_pc_beep_verbs;
pc_beep_verbs_size = mainboard_pc_beep_verbs_size;
} }
static void mainboard_init(device_t dev) static void mainboard_init(device_t dev)

View File

@ -21,7 +21,7 @@ static const u32 mainboard_cim_verb_data[] = {
/* coreboot specific header */ /* coreboot specific header */
0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283 0x10ec0283, // Codec Vendor / Device ID: Realtek ALC283
0x10ec0283, // Subsystem ID 0x10ec0283, // Subsystem ID
0x0000000b, // Number of jacks (NID entries) 0x0000000c, // Number of jacks (NID entries)
/* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x10ec0283 */ /* NID 0x01, HDA Codec Subsystem ID Verb Table: 0x10ec0283 */
0x00172083, 0x00172083,
@ -91,4 +91,22 @@ static const u32 mainboard_cim_verb_data[] = {
0x02171e21, // HPOut, 1/8 stereo 0x02171e21, // HPOut, 1/8 stereo
0x02171f03, // connector, left panel 0x02171f03, // connector, left panel
/* Undocumented settings from Realtek (needed for beep_gen) */
/* Widget node 0x20 */
0x02050010,
0x02040c20,
0x0205001b,
0x0204081b,
}; };
static const u32 mainboard_pc_beep_verbs[] = {
0x00170500, /* power up everything (codec, dac, adc, mixers) */
0x01470740, /* enable speaker out */
0x01470c02, /* set speaker EAPD pin */
0x0143b01f, /* unmute speaker */
0x00c37100, /* unmute mixer nid 0xc input 1 */
0x00b37410, /* unmute mixer nid 0xb beep input and set volume */
};
static const u32 mainboard_pc_beep_verbs_size =
sizeof(mainboard_pc_beep_verbs) / sizeof(mainboard_pc_beep_verbs[0]);

View File

@ -135,11 +135,16 @@ static int int15_handler(void)
extern const u32 * cim_verb_data; extern const u32 * cim_verb_data;
extern u32 cim_verb_data_size; extern u32 cim_verb_data_size;
extern const u32 * pc_beep_verbs;
extern u32 pc_beep_verbs_size;
static void verb_setup(void) static void verb_setup(void)
{ {
cim_verb_data = mainboard_cim_verb_data; cim_verb_data = mainboard_cim_verb_data;
cim_verb_data_size = sizeof(mainboard_cim_verb_data); cim_verb_data_size = sizeof(mainboard_cim_verb_data);
pc_beep_verbs = mainboard_pc_beep_verbs;
pc_beep_verbs_size = mainboard_pc_beep_verbs_size;
} }
static void mainboard_init(device_t dev) static void mainboard_init(device_t dev)