/* SPDX-License-Identifier: BSD-3-Clause
 *
 * Copyright(c) 2022 AMD.All rights reserved.
 *
 * Author:      Basavaraj Hiregoudar <basavaraj.hiregoudar@amd.com>
 *              Bala Kishore <balakishore.pati@amd.com>
 */
#if !defined(_RMB_REG_HEADER)
#define _RMB_REG_HEADER

typedef	union acp_dma_cntl_0 {
	struct {
	unsigned int	dmachrst:1;
	unsigned int	dmachrun:1;
	unsigned int	dmachiocen:1;
	unsigned int	:29;
	} bits;
	unsigned int	u32all;
} acp_dma_cntl_0_t;

typedef	union acp_dma_ch_sts {
	struct {
	unsigned int	dmachrunsts:8;
	unsigned int	:24;
	} bits;
	unsigned int	u32all;
} acp_dma_ch_sts_t;

typedef	union acp_external_intr_enb {
	struct {
	unsigned int	acpextintrenb:1;
	unsigned int	:31;
	} bits;
	unsigned int	u32all;
} acp_external_intr_enb_t;

typedef	union acp_dsp0_intr_cntl {
	struct {
	unsigned int	dmaiocmask:8;
	unsigned int	:8;
	unsigned int	wov_dma_intr_mask:1;
	unsigned int	:6;
	unsigned int	audio_buffer_int_mask:6;
	unsigned int	:3;
	} bits;
	unsigned int	u32all;
} acp_dsp0_intr_cntl_t;

typedef	union acp_dsp0_intr_stat {
	struct {
	unsigned int	dmaiocstat:8;
	unsigned int	:8;
	unsigned int	wov_dma_stat:1;
	unsigned int	:6;
	unsigned int	audio_buffer_int_stat:6;
	unsigned int	:3;
	} bits;
	unsigned int	u32all;
} acp_dsp0_intr_stat_t;

typedef	union acp_dsp0_intr_cntl1 {
	struct {
		unsigned int	acp_fusion_dsp_ext_timer1_timeoutmask :1;
		unsigned int	fusion_dsp_watchdog_timeoutmask :1;
		unsigned int	soundwire_mask :1;
		unsigned int	audio_buffer_int_mask :6;
		unsigned int	:23;
	} bits;
	unsigned int	u32all;
} acp_dsp0_intr_cntl1_t;

typedef union acp_dsp0_intr_stat1 {
	struct {
		unsigned int	acp_fusion_dsp_timer1_timeoutstat :1;
		unsigned int	fusion_dsp_watchdog_timeoutstat :1;
		unsigned int	soundwire_stat :1;
		unsigned int	audio_buffer_int_stat :6;
		unsigned int	:23;
	} bits;
	unsigned int	u32all;
} acp_dsp0_intr_stat1_t;

typedef	union acp_dsp_sw_intr_cntl {
	struct {
	unsigned int	:2;
	unsigned int	dsp0_to_host_intr_mask:1;
	unsigned int	:29;
	} bits;
	unsigned int	u32all;
} acp_dsp_sw_intr_cntl_t;

typedef	union acp_dsp_sw_intr_stat {
	struct {
	unsigned int	host_to_dsp0_intr1_stat:1;
	unsigned int	host_to_dsp0_intr2_stat:1;
	unsigned int	dsp0_to_host_intr_stat:1;
	unsigned int	host_to_dsp0_intr3_stat:1;
	unsigned int	:28;
	} bits;
	unsigned int	u32all;
} acp_dsp_sw_intr_stat_t;

typedef	union acp_sw_intr_trig {
	struct {
	unsigned int	trig_host_to_dsp0_intr1:1;
	unsigned int	:1;
	unsigned int	trig_dsp0_to_host_intr:1;
	unsigned int	:29;
	} bits;
	unsigned int	u32all;
} acp_sw_intr_trig_t;

typedef	union dsp_interrupt_routing_ctrl_0 {
	struct {
		unsigned int	dma_intr_level:3;
		unsigned int	:18;
		unsigned int	watchdog_intr_level:3;
		unsigned int	az_sw_i2s_intr_level:3;
		unsigned int	sha_intr_level:3;
		unsigned int	:2;
	} bits;
	unsigned int	u32all;
} dsp_interrupt_routing_ctrl_0_t;

typedef	union dsp_interrupt_routing_ctrl_1 {
	struct {
		unsigned int	host_to_dsp_intr1_level:3;
		unsigned int	host_to_dsp_intr2_level:3;
		unsigned int	src_intr_level:3;
		unsigned int	mailbox_intr_level:3;
		unsigned int	error_intr_level:3;
		unsigned int	wov_intr_level:3;
		unsigned int	fusion_timer1_intr_level:3;
		unsigned int	fusion_watchdog_intr_level:3;
		unsigned int	p1_sw_i2s_intr_level:3;
		unsigned int	:5;
	} bits;
	unsigned int    u32all;
} dsp_interrupt_routing_ctrl_1_t;

typedef	union acp_i2s_rx_ringbufaddr {
	struct {
		unsigned int	i2s_rx_ringbufaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_ringbufaddr_t;

typedef	union acp_i2s_rx_ringbufsize {
	struct {
		unsigned int	i2s_rx_ringbufsize:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_ringbufsize_t;

typedef	union acp_i2s_rx_linkpositioncntr {
	struct {
		unsigned int	i2s_rx_linkpositioncntr:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_linkpositioncntr_t;

typedef	union acp_i2s_rx_fifoaddr {
	struct {
		unsigned int	i2s_rx_fifoaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_fifoaddr_t;

typedef	union acp_i2s_rx_fifosize {
	struct {
		unsigned int	i2s_rx_fifosize:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_fifosize_t;

typedef	union acp_i2s_rx_dma_size {
	struct {
		unsigned int	i2s_rx_dma_size:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_dma_size_t;

typedef	union acp_i2s_rx_linearpositioncntr_high {
	struct {
		unsigned int	i2s_rx_linearpositioncntr_high:32;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_linearpositioncntr_high_t;

typedef	union acp_i2s_rx_linearpositioncntr_low {
	struct {
		unsigned int	i2s_rx_linearpositioncntr_low:32;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_linearpositioncntr_low_t;

typedef	union acp_i2s_rx_watermark_size {
	struct {
		unsigned int	i2s_rx_intr_watermark_size:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_rx_intr_watermark_size_t;

typedef	union acp_i2s_tx_ringbufaddr {
	struct {
		unsigned int	i2s_tx_ringbufaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_ringbufaddr_t;

typedef	union acp_i2s_tx_ringbufsize {
	struct {
		unsigned int	i2s_tx_ringbufsize:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_ringbufsize_t;

typedef	union acp_i2s_tx_linkpositioncntr {
	struct {
		unsigned int	i2s_tx_linkpositioncntr:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_linkpositioncntr_t;

typedef	union acp_i2s_tx_fifoaddr {
	struct {
		unsigned int	i2s_tx_fifoaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_fifoaddr_t;

typedef	union acp_i2s_tx_fifosize {
	struct {
		unsigned int	i2s_tx_fifosize:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_fifosize_t;

typedef	union acp_i2s_tx_dma_size {
	struct {
		unsigned int	i2s_tx_dma_size:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_dma_size_t;

typedef	union acp_i2s_tx_linearpositioncntr_high {
	struct {
		unsigned int	i2s_tx_linearpositioncntr_high:32;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_linearpositioncntr_hight_t;

typedef	union acp_i2s_tx_linearpositioncntr_low {
	struct {
		unsigned int	i2s_tx_linearpositioncntr_low:32;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_linearpositioncntr_low_t;

typedef	union acp_i2s_tx_intr_watermark_size {
	struct {
		unsigned int	i2s_tx_intr_watermark_size:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_i2s_tx_intr_watermark_size_t;

typedef	union acp_bt_rx_ringbufaddr {
	struct {
		unsigned int	bt_rx_ringbufaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_ringbufaddr_t;

typedef	union acp_bt_rx_ringbufsize {
	struct {
		unsigned int	bt_rx_ringbufsize:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_ringbufsize_t;

typedef	union acp_bt_rx_linkpositioncntr {
	struct {
		unsigned int	bt_rx_linkpositioncntr:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_linkpositioncntr_t;

typedef	union acp_bt_rx_fifoaddr {
	struct {
		unsigned int	bt_rx_fifoaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_fifoaddr_t;

typedef	union acp_bt_rx_fifosize {
	struct {
		unsigned int	bt_rx_fifosize:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_fifosize_t;

typedef	union acp_bt_rx_dma_size {
	struct {
		unsigned int	bt_rx_dma_size:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_dma_size_t;

typedef	union acp_bt_rx_linearpositioncntr_high {
	struct {
		unsigned int	bt_rx_linearpositioncntr_high:32;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_linearpositioncntr_high_t;

typedef	union acp_bt_rx_linearpositioncntr_low {
	struct {
		unsigned int	bt_rx_linearpositioncntr_low:32;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_linearpositioncntr_low_t;

typedef	union acp_bt_rx_intr_watermark_size {
	struct {
		unsigned int	bt_rx_intr_watermark_size:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_rx_intr_watermark_size_t;

typedef	union acp_bt_tx_ringbufaddr {
	struct {
		unsigned int	bt_tx_ringbufaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_ringbufaddr_t;

typedef	union acp_bt_tx_ringbufsize {
	struct {
		unsigned int	bt_tx_ringbufsize:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_ringbufsize_t;

typedef	union acp_bt_tx_linkpositiontcntr {
	struct {
		unsigned int	bt_tx_linkpositioncntr:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_linkpositiontcntr_t;

typedef	union acp_bt_tx_fifoaddr {
	struct {
		unsigned int	bt_tx_fifoaddr:27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_fifoaddr_t;

typedef	union acp_bt_tx_fifosize {
	struct {
		unsigned int	bt_tx_fifosize:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_fifosize_t;

typedef	union acp_bt_tx_dmasize {
	struct {
		unsigned int	bt_tx_dma_size:13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_dmasize_t;

typedef	union acp_bt_tx_linearpositioncntr_high {
	struct {
		unsigned int	bt_tx_linearpositioncntr_high:32;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_linearpositioncntr_high_t;

typedef	union acp_bt_tx_linearpositioncntr_low {
	struct {
		unsigned int	bt_tx_linearpositioncntr_low:32;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_linearpositioncntr_low_t;

typedef	union acp_bt_tx_intr_watermark_size {
	struct {
		unsigned int	bt_tx_intr_watermark_size:26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_bt_tx_intr_watermark_size_t;

typedef	union acp_i2stdm_ier {
	struct {
		unsigned int	i2stdm_ien:1;
		unsigned int	:31;
	} bits;
	unsigned int	u32all;
} acp_i2stdm_ier_t;

typedef	union acp_i2stdm_irer {
	struct {
		unsigned int	i2stdm_rx_en:1;
		unsigned int	i2stdm_rx_protocol_mode:1;
		unsigned int	i2stdm_rx_data_path_mode:1;
		unsigned int	i2stdm_rx_samplen:3;
		unsigned int	i2stdm_rx_status:1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_i2stdm_irer_t;

typedef	union acp_i2stdm_iter {
	struct {
		unsigned int	i2stdm_txen:1;
		unsigned int	i2stdm_tx_protocol_mode:1;
		unsigned int	i2stdm_tx_data_path_mode:1;
		unsigned int	i2stdm_tx_samp_len:3;
		unsigned int	i2stdm_tx_status:1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_i2stdm_iter_t;

typedef	union acp_bttdm_ier {
	struct {
		unsigned int	bttdm_ien:1;
		unsigned int	:31;
	} bits;
	unsigned int	u32all;
} acp_bttdm_ier_t;

typedef	union acp_bttdm_irer {
	struct {
		unsigned int	bttdm_rx_en:1;
		unsigned int	bttdm_rx_protocol_mode:1;
		unsigned int	bttdm_rx_data_path_mode:1;
		unsigned int	bttdm_rx_samplen:3;
		unsigned int	bttdm_rx_status:1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_bttdm_irer_t;

typedef	union acp_bttdm_iter {
	struct {
		unsigned int	bttdm_txen :1;
		unsigned int	bttdm_tx_protocol_mode :1;
		unsigned int	bttdm_tx_data_path_mode :1;
		unsigned int	bttdm_tx_samp_len :3;
		unsigned int	bttdm_tx_status :1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_bttdm_iter_t;

typedef	union acp_wov_pdm_dma_enable {
	struct {
		unsigned int	pdm_dma_en :1;
		unsigned int	pdm_dma_en_status :1;
		unsigned int	:30;
	} bits;
unsigned int	u32all;
} acp_wov_pdm_dma_enable_t;

typedef	union acp_wov_rx_ringbufaddr {
	struct {
		unsigned int	rx_ringbufaddr :27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_wov_rx_ringbufaddr_t;

typedef	union acp_wov_rx_ringbufsize {
	struct {
		unsigned int	rx_ringbufsize :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_wov_rx_ringbufsize_t;

typedef	union acp_wov_rx_intr_watermark_size {
	struct {
		unsigned int	rx_intr_watermark_size :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_wov_rx_intr_watermark_size_t;

typedef	union acp_wov_pdm_no_of_channels {
	struct {
		unsigned int	pdm_no_of_channels :2;
		unsigned int	:30;
	} bits;
	unsigned int	u32all;
} acp_wov_pdm_no_of_channels_t;

typedef	union acp_wov_pdm_decimation_factor {
	struct {
		unsigned int	pdm_decimation_factor :2;
		unsigned int	:30;
	} bits;
	unsigned int	u32all;
} acp_wov_pdm_decimation_factor_t;

typedef	union acp_wov_misc_ctrl {
	struct {
		unsigned int	:3;
		unsigned int	pcm_data_shift_ctrl :2;
		unsigned int	:27;
	} bits;
	unsigned int	u32all;
} acp_wov_misc_ctrl_t;

typedef	union acp_wov_clk_ctrl {
	struct {
		unsigned int	brm_clk_ctrl :4;
		unsigned int	pdm_vad_clkdiv :2;
		unsigned int	:26;
	} bits;
	unsigned int	u32all;
} acp_wov_clk_ctrl_t;

typedef	union acp_srbm_cycle_sts {
	struct {
		unsigned int	srbm_clients_sts :1;
		unsigned int	:7;
	} bits;
	unsigned int	u32all;
} acp_srbm_cycle_sts_t;

typedef	union acp_hs_rx_ringbufaddr {
	struct {
		unsigned int	hs_rx_ringbufaddr :32;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_ringbufaddr_t;

typedef	union acp_hs_rx_ringbufsize {
	struct {
		unsigned int	hs_rx_ringbufsize :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_ringbufsize_t;

typedef	union acp_hs_rx_linkpositioncntr {
	struct {
		unsigned int	hs_rx_linkpositioncntr :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_linkpositioncntr_t;

typedef	union acp_hs_rx_fifoaddr {
	struct {
		unsigned int	hs_rx_fifoaddr :27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_fifoaddr_t;

typedef	union acp_hs_rx_fifosize {
	struct {
		unsigned int	hs_rx_fifosize :13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_fifosize_t;

typedef	union acp_hs_rx_dma_size {
	struct {
		unsigned int	hs_rx_dma_size :13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_dma_size_t;

typedef	union acp_hs_rx_linearpositioncntr_high {
	struct {
		unsigned int	hs_rx_linearpositioncntr_high :32;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_linearpositioncntr_high_t;

typedef	union acp_hs_rx_linearpositioncntr_low {
	struct {
		unsigned int	hs_rx_linearpositioncntr_low :32;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_linearpositioncntr_low_t;

typedef	union acp_hs_rx_intr_watermark_size {
	struct {
		unsigned int	hs_rx_intr_watermark_size :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_hs_rx_intr_watermark_size_t;

typedef	union acp_hs_tx_ringbufaddr {
	struct {
		unsigned int	hs_tx_ringbufaddr :32;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_ringbufaddr_t;

typedef	union acp_hs_tx_ringbufsize {
	struct {
		unsigned int	hs_tx_ringbufsize :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_ringbufsize_t;

typedef	union acp_hs_tx_linkpositioncntr {
	struct {
		unsigned int	hs_tx_linkpositioncntr :26;
		unsigned int	:6;
	} bits;
	unsigned int    u32all;
} acp_hs_tx_linkpositioncntr_t;

typedef	union acp_hs_tx_fifoaddr {
	struct {
		unsigned int	hs_tx_fifoaddr :27;
		unsigned int	:5;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_fifoaddr_t;

typedef	union acp_hs_tx_fifosize {
	struct {
		unsigned int	hs_tx_fifosize :13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_fifosize_t;

typedef	union acp_hs_tx_dma_size {
	struct {
		unsigned int	hs_tx_dma_size :13;
		unsigned int	:19;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_dma_size_t;

typedef	union acp_hs_tx_linearpositioncntr_high {
	struct {
		unsigned int	hs_tx_linearpositioncntr_high :32;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_linearpositioncntr_high_t;

typedef	union acp_hs_tx_linearpositioncntr_low {
	struct {
		unsigned int	hs_tx_linearpositioncntr_low :32;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_linearpositioncntr_low_t;

typedef	union acp_hs_tx_intr_watermark_size {
	struct {
		unsigned int	hs_tx_intr_watermark_size :26;
		unsigned int	:6;
	} bits;
	unsigned int	u32all;
} acp_hs_tx_intr_watermark_size_t;

typedef	union acp_i2stdm_rxfrmt {
	struct {
		unsigned int	i2stdm_frame_len :9;
		unsigned int	:6;
		unsigned int	i2stdm_num_slots :3;
		unsigned int	i2stdm_slot_len :5;
		unsigned int	:9;
	} bits;
	unsigned int	u32all;
} acp_i2stdm_rxfrmt_t;

typedef	union acp_i2stdm_txfrmt {
	struct {
		unsigned int	i2stdm_frame_len :9;
		unsigned int	:6;
		unsigned int	i2stdm_num_slots :3;
		unsigned int	i2stdm_slot_len :5;
		unsigned int	:9;
	} bits;
	unsigned int	u32all;
} acp_i2stdm_txfrmt_t;

typedef	union acp_hstdm_ier {
	struct {
		unsigned int	hstdm_ien :1;
		unsigned int	:31;
	} bits;
	unsigned int	u32all;
} acp_hstdm_ier_t;

typedef	union acp_hstdm_irer {
	struct {
		unsigned int	hstdm_rx_en :1;
		unsigned int	hstdm_rx_protocol_mode :1;
		unsigned int	hstdm_rx_data_path_mode :1;
		unsigned int	hstdm_rx_samplen :3;
		unsigned int	hstdm_rx_status :1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_hstdm_irer_t;

typedef	union acp_hstdm_rxfrmt {
	struct {
		unsigned int	hstdm_frame_len :9;
		unsigned int	:6;
		unsigned int	hstdm_num_slots :3;
		unsigned int	hstdm_slot_len :5;
		unsigned int	:9;
	} bits;
	unsigned int	u32all;
} acp_hstdm_rxfrmt_t;

typedef	union acp_hstdm_iter {
	struct {
		unsigned int	hstdm_txen :1;
		unsigned int	hstdm_tx_protocol_mode :1;
		unsigned int	hstdm_tx_data_path_mode :1;
		unsigned int	hstdm_tx_samp_len :3;
		unsigned int	hstdm_tx_status :1;
		unsigned int	:25;
	} bits;
	unsigned int	u32all;
} acp_hstdm_iter_t;

typedef	union acp_hstdm_txfrmt {
	struct {
		unsigned int	hstdm_frame_len :9;
		unsigned int	:6;
		unsigned int	hstdm_num_slots :3;
		unsigned int	hstdm_slot_len :5;
		unsigned int	:9;
	} bits;
	unsigned int	u32all;
} acp_hstdm_txfrmt_t;

typedef union acp_clkmux_sel {
	struct {
		unsigned int acp_clkmux_sel : 3;
		unsigned int : 13;
		unsigned int acp_clkmux_div_value : 16;
	} bits;
	unsigned int  u32all;
} acp_clkmux_sel_t;

typedef union acp_i2stdm_mstrclkgen {
	struct {
		unsigned int i2stdm_master_mode : 1;
		unsigned int i2stdm_format_mode : 1;
		unsigned int i2stdm_lrclk_div_val : 9;
		unsigned int i2stdm_bclk_div_val : 11;
		unsigned int : 10;
	} bits;
	unsigned int  u32all;
} acp_i2stdm_mstrclkgen_t;
#endif
