socsvn commit: r307277 - soc2016/iateaca/bhyve-hda-head/usr.sbin/bhyve
iateaca at FreeBSD.org
iateaca at FreeBSD.org
Sat Aug 6 13:36:25 UTC 2016
Author: iateaca
Date: Sat Aug 6 13:36:23 2016
New Revision: 307277
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=307277
Log:
add output, input and duplex configuration
M hda_codec.c
Modified:
soc2016/iateaca/bhyve-hda-head/usr.sbin/bhyve/hda_codec.c
Modified: soc2016/iateaca/bhyve-hda-head/usr.sbin/bhyve/hda_codec.c
==============================================================================
--- soc2016/iateaca/bhyve-hda-head/usr.sbin/bhyve/hda_codec.c Sat Aug 6 13:01:50 2016 (r307276)
+++ soc2016/iateaca/bhyve-hda-head/usr.sbin/bhyve/hda_codec.c Sat Aug 6 13:36:23 2016 (r307277)
@@ -200,6 +200,24 @@
[HDA_PARAM_OUTPUT_AMP_CAP] = 0x00, /* None */ \
[HDA_PARAM_GPIO_COUNT] = 0x00, \
+#define HDA_CODEC_FG_NONE_DESC \
+ [HDA_CODEC_FG_NID] = { \
+ [HDA_PARAM_SUB_NODE_COUNT] = 0x00000000, /* 0 Subnodes, StartNid = 0 */ \
+ HDA_CODEC_FG_COMMON_DESC \
+ }, \
+
+#define HDA_CODEC_FG_OUTPUT_DESC \
+ [HDA_CODEC_FG_NID] = { \
+ [HDA_PARAM_SUB_NODE_COUNT] = 0x00020002, /* 2 Subnodes, StartNid = 2 */ \
+ HDA_CODEC_FG_COMMON_DESC \
+ }, \
+
+#define HDA_CODEC_FG_INPUT_DESC \
+ [HDA_CODEC_FG_NID] = { \
+ [HDA_PARAM_SUB_NODE_COUNT] = 0x00040002, /* 2 Subnodes, StartNid = 4 */ \
+ HDA_CODEC_FG_COMMON_DESC \
+ }, \
+
#define HDA_CODEC_FG_DUPLEX_DESC \
[HDA_CODEC_FG_NID] = { \
[HDA_PARAM_SUB_NODE_COUNT] = 0x00020004, /* 4 Subnodes, StartNid = 2 */ \
@@ -259,14 +277,31 @@
[HDA_PARAM_OUTPUT_AMP_CAP] = 0x00, /* None */ \
}, \
-static const uint32_t hda_codec_parameters[][HDA_CODEC_PARAMS_COUNT] = {
+static const uint32_t hda_codec_none_parameters[][HDA_CODEC_PARAMS_COUNT] = {
+ HDA_CODEC_ROOT_DESC
+ HDA_CODEC_FG_NONE_DESC
+};
+
+static const uint32_t hda_codec_output_parameters[][HDA_CODEC_PARAMS_COUNT] = {
+ HDA_CODEC_ROOT_DESC
+ HDA_CODEC_FG_OUTPUT_DESC
+ HDA_CODEC_OUTPUT_DESC
+};
+
+static const uint32_t hda_codec_input_parameters[][HDA_CODEC_PARAMS_COUNT] = {
+ HDA_CODEC_ROOT_DESC
+ HDA_CODEC_FG_INPUT_DESC
+ HDA_CODEC_INPUT_DESC
+};
+
+static const uint32_t hda_codec_duplex_parameters[][HDA_CODEC_PARAMS_COUNT] = {
HDA_CODEC_ROOT_DESC
HDA_CODEC_FG_DUPLEX_DESC
HDA_CODEC_OUTPUT_DESC
HDA_CODEC_INPUT_DESC
};
-#define HDA_CODEC_NODES_COUNT (ARRAY_SIZE(hda_codec_parameters))
+#define HDA_CODEC_NODES_COUNT (ARRAY_SIZE(hda_codec_duplex_parameters))
static const uint8_t hda_codec_conn_list[HDA_CODEC_NODES_COUNT][HDA_CODEC_CONN_LIST_COUNT] = {
[HDA_CODEC_PIN_OUTPUT_NID] = {HDA_CODEC_AUDIO_OUTPUT_NID},
@@ -313,7 +348,7 @@
sc->subsystem_id = HDA_CODEC_SUBSYSTEM_ID;
sc->no_nodes = HDA_CODEC_NODES_COUNT;
- sc->get_parameters = hda_codec_parameters;
+ sc->get_parameters = hda_codec_duplex_parameters;
sc->conn_list = hda_codec_conn_list;
sc->conf_default = hda_codec_conf_default;
sc->pin_ctrl_default = hda_codec_pin_ctrl_default;
More information about the svn-soc-all
mailing list