diff options
author | Christian Walter <christian.walter@9elements.com> | 2020-01-09 15:42:42 +0100 |
---|---|---|
committer | Philipp Deppenwiese <zaolin.daisuki@gmail.com> | 2020-06-06 07:44:53 +0000 |
commit | b646e28769f27ee2812925f63fe2f73c67e23c9e (patch) | |
tree | 271b049fe1671304da6425c2f90fff0bffabec90 /src/mainboard/prodrive/hermes/hda_verb.c | |
parent | b7cf7d36d7cf97b0cce437b9f1577ca39eeb312d (diff) |
mb/prodrive/hermes: Add new mainboard port
This patch adds support for the Prodrive Hermes mainboard.
Tested with CoffeeLakeFspBinPkg FSP 7.0.68.41.
Untested:
* CNVi
* Intel Graphics
Tested:
* CPU Intel Xeon E2288G
* CPU Intel Core i3-9100F
* CPU Intel Core i7 9700KF
* CPU Intel Core i7 9700E
* CPU Intel Core i7 9700F
* CPU Intel Core i5 9600K
* CPU Intel Pentium Gold G5400
* PCIe Link Width x8 on Slot6 by changing PCIe mux
* All four DDR4 slots in different configurations
* USB2.0 HDR1
* USB2.0 HDR2
* USB3.0 HDR
* Slot1
* Slot2
* Slot3
* Slot4
* Slot6
* M2.M NVMEe
* Ethernet PHYs 0-4
* Aspeed BMC PCIe
* Aspeed BMC USB
* Aspeed Graphics init
* USB3 backplane all working
* I801 SMBUS
Not Working:
* Intel HDA
Change-Id: Id7d051d3fa6823618691d5572087c9ae589c2862
Signed-off-by: Christian Walter <christian.walter@9elements.com>
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Signed-off-by: Christian Walter <christian.walter@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38303
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Diffstat (limited to 'src/mainboard/prodrive/hermes/hda_verb.c')
-rw-r--r-- | src/mainboard/prodrive/hermes/hda_verb.c | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/src/mainboard/prodrive/hermes/hda_verb.c b/src/mainboard/prodrive/hermes/hda_verb.c new file mode 100644 index 0000000000..59b8aa603c --- /dev/null +++ b/src/mainboard/prodrive/hermes/hda_verb.c @@ -0,0 +1,170 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#include <device/azalia_device.h> + +const u32 cim_verb_data[] = { + 0x10ec0888, /* Codec Vendor / Device ID: Realtek ALC888 */ + 0x10ec0888, /* Subsystem ID */ + 10, /* Number of 4 dword sets */ + AZALIA_SUBVENDOR(0, 0x10ec0888), + + /* Port A: Front, Audio Header #1 */ + AZALIA_PIN_CFG(0, 0x14, AZALIA_PIN_DESC( + INTEGRATED, + INTERNAL, + SPECIAL7, + LINE_OUT, + OTHER_ANALOG, + COLOR_UNKNOWN, + false, + 0xf, + 0 + )), + /* Port B: Mic1, Line input (pink) */ + AZALIA_PIN_CFG(0, 0x15, AZALIA_PIN_DESC( + JACK, + EXTERNAL_PRIMARY_CHASSIS, + REAR, //FIXME + LINE_IN, + STEREO_MONO_1_8, + PINK, + false, + 0xf, + 0 + )), + /* Port C: Line, Speaker (only L) */ + AZALIA_PIN_CFG(0, 0x16, AZALIA_PIN_DESC( + INTEGRATED, + INTERNAL, + NA, + SPEAKER, + TYPE_UNKNOWN, + COLOR_UNKNOWN, + false, + 0xf, + 0 + )), + /* Port D: Sidesurr, Line out (green) */ + AZALIA_PIN_CFG(0, 0x17, AZALIA_PIN_DESC( + //JACK, + LINE_OUT, + EXTERNAL_PRIMARY_CHASSIS, + REAR, //FIXME + LINE_OUT, + STEREO_MONO_1_8, + GREEN, + false, + 0xf, + 0 + )), + /* Port E: Line2, Line input (blue) */ + AZALIA_PIN_CFG(0, 0x18, AZALIA_PIN_DESC( + JACK, + EXTERNAL_PRIMARY_CHASSIS, + REAR, //FIXME + LINE_IN, + STEREO_MONO_1_8, + BLUE, + false, + 0xf, + 0 + )), + /* Port F: Mic2, Audio Header #2 */ + AZALIA_PIN_CFG(0, 0x19, AZALIA_PIN_DESC( + INTEGRATED, + INTERNAL, + SPECIAL7, + LINE_IN, + OTHER_ANALOG, + COLOR_UNKNOWN, + false, + 0xf, + 0 + )), + /* Port G: Not connected */ + AZALIA_PIN_CFG(0, 0x1a, AZALIA_PIN_DESC( + NC, + LOCATION_OTHER, + NA, + DEVICE_OTHER, + TYPE_OTHER, + COLOR_OTHER, + true, + 0, + 0 + )), + /* Port H: Not connected */ + AZALIA_PIN_CFG(0, 0x1b, AZALIA_PIN_DESC( + NC, + LOCATION_OTHER, + NA, + DEVICE_OTHER, + TYPE_OTHER, + COLOR_OTHER, + true, + 0, + 0 + )), + + /* S/PDIF-OUT */ + AZALIA_PIN_CFG(0, 0x1e, AZALIA_PIN_DESC( + INTEGRATED, + INTERNAL, + NA, + SPDIF_OUT, + OTHER_DIGITAL, + COLOR_UNKNOWN, + true, + 0xf, + 0 + )), + /* S/PDIF-IN */ + AZALIA_PIN_CFG(0, 0x1f, AZALIA_PIN_DESC( + INTEGRATED, + INTERNAL, + NA, + SPDIF_IN, + OTHER_DIGITAL, + COLOR_UNKNOWN, + true, + 0xf, + 0 + )), + + //FIXME COdec ID + /* + * VerbTable: CFL Display Audio Codec + * Revision ID = 0xFF + * Codec Vendor: 0x8086280B + */ + + 0x8086280B, + 0xFFFFFFFF, + 5, /* Number of 4 dword sets */ + + /* + * Display Audio Verb Table + * For GEN9, the Vendor Node ID is 08h + * Port to be exposed to the inbox driver in the vanilla mode + * PORT C - BIT[7:6] = 01b + */ + 0x00878140, + 0x00878140, + 0x00878140, + 0x00878140, + /* Pin Widget 5 - PORT B - Configuration Default: 0x18560010 */ + AZALIA_PIN_CFG(2, 0x05, 0x18560010), + /* Pin Widget 6 - PORT C - Configuration Default: 0x18560020 */ + AZALIA_PIN_CFG(2, 0x06, 0x18560020), + /* Pin Widget 7 - PORT D - Configuration Default: 0x18560030 */ + AZALIA_PIN_CFG(2, 0x07, 0x18560030), + /* Disable the third converter and third Pin (NID 08h) */ + 0x00878140, + 0x00878140, + 0x00878140, + 0x00878140, +}; + +const u32 pc_beep_verbs[0] = {}; + +AZALIA_ARRAY_SIZES; |