diff options
Diffstat (limited to 'src/southbridge/intel')
-rw-r--r-- | src/southbridge/intel/lynxpoint/hda_verb.c | 49 |
1 files changed, 15 insertions, 34 deletions
diff --git a/src/southbridge/intel/lynxpoint/hda_verb.c b/src/southbridge/intel/lynxpoint/hda_verb.c index 6017d568c1..b61115b02c 100644 --- a/src/southbridge/intel/lynxpoint/hda_verb.c +++ b/src/southbridge/intel/lynxpoint/hda_verb.c @@ -4,12 +4,10 @@ #include <device/azalia_device.h> #include <device/mmio.h> #include <delay.h> + #include "pch.h" #include "hda_verb.h" -/** - * Set bits in a register and wait for status - */ static int set_bits(void *port, u32 mask, u32 val) { u32 reg32; @@ -22,9 +20,7 @@ static int set_bits(void *port, u32 mask, u32 val) reg32 |= val; write32(port, reg32); - /* Wait for readback of register to - * match what was just written to it - */ + /* Wait for readback of register to match what was just written to it */ count = 50; do { /* Wait 1ms based on BKDG wait time */ @@ -39,9 +35,6 @@ static int set_bits(void *port, u32 mask, u32 val) return 0; } -/** - * Probe for supported codecs - */ int hda_codec_detect(u8 *base) { u8 reg8; @@ -69,19 +62,17 @@ no_codec: return 0; } -/** - * Wait 50usec for the codec to indicate it is ready - * no response would imply that the codec is non-operative +/* + * Wait 50usec for the codec to indicate it is ready. + * No response would imply that the codec is non-operative. */ static int hda_wait_for_ready(u8 *base) { - /* Use a 50 usec timeout - the Linux kernel uses the - * same duration */ - + /* Use a 50 usec timeout - the Linux kernel uses the same duration */ int timeout = 50; while (timeout--) { - u32 reg32 = read32(base + HDA_ICII_REG); + u32 reg32 = read32(base + HDA_ICII_REG); if (!(reg32 & HDA_ICII_BUSY)) return 0; udelay(1); @@ -90,28 +81,24 @@ static int hda_wait_for_ready(u8 *base) return -1; } -/** - * Wait 50usec for the codec to indicate that it accepted - * the previous command. No response would imply that the code - * is non-operative +/* + * Wait 50usec for the codec to indicate that it accepted the previous command. + * No response would imply that the code is non-operative. */ static int hda_wait_for_valid(u8 *base) { u32 reg32; + /* Use a 50 usec timeout - the Linux kernel uses the same duration */ + int timeout = 50; /* Send the verb to the codec */ reg32 = read32(base + HDA_ICII_REG); reg32 |= HDA_ICII_BUSY | HDA_ICII_VALID; write32(base + HDA_ICII_REG, reg32); - /* Use a 50 usec timeout - the Linux kernel uses the - * same duration */ - - int timeout = 50; while (timeout--) { reg32 = read32(base + HDA_ICII_REG); - if ((reg32 & (HDA_ICII_VALID | HDA_ICII_BUSY)) == - HDA_ICII_VALID) + if ((reg32 & (HDA_ICII_VALID | HDA_ICII_BUSY)) == HDA_ICII_VALID) return 0; udelay(1); } @@ -119,7 +106,7 @@ static int hda_wait_for_valid(u8 *base) return -1; } -/** +/* * Find a specific entry within a verb table * * @param verb_table_bytes: verb table size in bytes @@ -148,7 +135,7 @@ static u32 hda_find_verb(u32 verb_table_bytes, const u32 *verb_table_data, u32 viddid, const u32 **verb) { - int idx=0; + int idx = 0; while (idx < (verb_table_bytes / sizeof(u32))) { u32 verb_size = 4 * verb_table_data[idx+2]; // in u32 @@ -164,9 +151,6 @@ static u32 hda_find_verb(u32 verb_table_bytes, return 0; } -/** - * Write a supplied verb table - */ int hda_codec_write(u8 *base, u32 size, const u32 *data) { int i; @@ -184,9 +168,6 @@ int hda_codec_write(u8 *base, u32 size, const u32 *data) return 0; } -/** - * Initialize codec, then find the verb table and write it - */ int hda_codec_init(u8 *base, int addr, int verb_size, const u32 *verb_data) { const u32 *verb; |