#include "pb.h" enum hdaudio_fgrp_type { HDAUDIO_FGRP_TYPE_UNKNOWN = 0, HDAUDIO_FGRP_TYPE_AFG = 1, HDAUDIO_FGRP_TYPE_VSM_FG = 2, }; struct hdaudio_fgrp_info__fgrp { struct pb_msg_hdr _pb_msg_hdr; int32_t type; uint32_t nid; uint32_t codecid; uint32_t vendor_id; uint32_t product_id; uint32_t subsystem_id; struct { bool present; struct pb_string value; } device; }; extern const struct pb_msgdesc hdaudio_fgrp_info__fgrp_msgdesc; struct hdaudio_fgrp_info { struct pb_msg_hdr _pb_msg_hdr; struct { struct pb_repeated repeated; struct hdaudio_fgrp_info__fgrp *item; } fgrps; }; extern const struct pb_msgdesc hdaudio_fgrp_info_msgdesc; struct hdaudio_fgrp_pin_config__pin { struct pb_msg_hdr _pb_msg_hdr; uint32_t nid; uint32_t config; }; extern const struct pb_msgdesc hdaudio_fgrp_pin_config__pin; struct hdaudio_fgrp_pin_config { struct pb_msg_hdr _pb_msg_hdr; struct { struct pb_repeated repeated; struct hdaudio_fgrp_pin_config__pin *item; } pins; }; struct hdaudio_codec_info { struct pb_msg_hdr _pb_msg_hdr; uint32_t vendor_id; uint32_t product_id; }; struct hdaudio_widget_info { struct pb_msg_hdr _pb_msg_hdr; struct pb_string name; bool enable; uint8_t nid; uint8_t type; uint32_t config; uint32_t cap; struct { struct pb_repeated repeated; int *item; } conns; }; struct hdaudio_fgrp_info_request { struct pb_msg_hdr _pb_msg_hdr; }; struct hdaudio_fgrp_info_response { struct pb_msg_hdr _pb_msg_hdr; struct hdaudio_fgrp_info fgrp_info; }; struct hdaudio_fgrp_getconfig_request { struct pb_msg_hdr _pb_msg_hdr; uint32_t codecid; uint32_t nid; struct { bool present; uint32_t value; } start; struct { bool present; uint32_t value; } end; }; extern const struct pb_msgdesc hdaudio_fgrp_getconfig_request_msgdesc; static inline struct pb_msg_ptr hdaudio_fgrp_getconfig_request_ptr(struct hdaudio_fgrp_getconfig_request **ptrp) { struct pb_msg_ptr mp; mp.pbmp_msgdesc = &hdaudio_fgrp_getconfig_request_msgdesc; mp.pbmp_ptrp = ptrp; return mp; } static inline struct pb_msg hdaudio_fgrp_getconfig_request(struct hdaudio_fgrp_getconfig_request *ptr) { struct pb_msg m; m.pbm_msgdesc = &hdaudio_fgrp_getconfig_request_msgdesc; m.pbm_ptr = ptr; return m; } struct hdaudio_fgrp_getconfig_response { struct pb_msg_hdr _pb_msg_hdr; struct hdaudio_fgrp_pin_config pin_config; }; struct hdaudio_fgrp_setconfig_request { struct pb_msg_hdr _pb_msg_hdr; uint32_t codecid; uint32_t nid; struct { bool present; struct hdaudio_fgrp_pin_config *value; } pin_config; }; struct hdaudio_fgrp_setconfig_response { struct pb_msg_hdr _pb_msg_hdr; }; struct hdaudio_codec_info_request { struct pb_msg_hdr _pb_msg_hdr; uint32_t codecid; uint32_t nid; }; struct hdaudio_codec_info_response { struct pb_msg_hdr _pb_msg_hdr; uint32_t vendor_id; uint32_t product_id; }; struct hdaudio_widget_info_request { struct pb_msg_hdr _pb_msg_hdr; uint32_t codecid; uint32_t nid; uint32_t index; }; struct hdaudio_widget_info_response { struct pb_msg_hdr _pb_msg_hdr; struct hdaudio_widget_info info; };