linux/sound/soc/codecs/wm8741.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * wm8741.h  --  WM8423 ASoC driver
 *
 * Copyright 2010 Wolfson Microelectronics, plc
 *
 * Author: Ian Lartey <[email protected]>
 *
 * Based on wm8753.h
 */

#ifndef _WM8741_H
#define _WM8741_H

/*
 * Register values.
 */
#define WM8741_DACLLSB_ATTENUATION
#define WM8741_DACLMSB_ATTENUATION
#define WM8741_DACRLSB_ATTENUATION
#define WM8741_DACRMSB_ATTENUATION
#define WM8741_VOLUME_CONTROL
#define WM8741_FORMAT_CONTROL
#define WM8741_FILTER_CONTROL
#define WM8741_MODE_CONTROL_1
#define WM8741_MODE_CONTROL_2
#define WM8741_RESET
#define WM8741_ADDITIONAL_CONTROL_1

#define WM8741_REGISTER_COUNT
#define WM8741_MAX_REGISTER

/*
 * Field Definitions.
 */

/*
 * R0 (0x00) - DACLLSB_ATTENUATION
 */
#define WM8741_UPDATELL
#define WM8741_UPDATELL_MASK
#define WM8741_UPDATELL_SHIFT
#define WM8741_UPDATELL_WIDTH
#define WM8741_LAT_4_0_MASK
#define WM8741_LAT_4_0_SHIFT
#define WM8741_LAT_4_0_WIDTH

/*
 * R1 (0x01) - DACLMSB_ATTENUATION
 */
#define WM8741_UPDATELM
#define WM8741_UPDATELM_MASK
#define WM8741_UPDATELM_SHIFT
#define WM8741_UPDATELM_WIDTH
#define WM8741_LAT_9_5_0_MASK
#define WM8741_LAT_9_5_0_SHIFT
#define WM8741_LAT_9_5_0_WIDTH

/*
 * R2 (0x02) - DACRLSB_ATTENUATION
 */
#define WM8741_UPDATERL
#define WM8741_UPDATERL_MASK
#define WM8741_UPDATERL_SHIFT
#define WM8741_UPDATERL_WIDTH
#define WM8741_RAT_4_0_MASK
#define WM8741_RAT_4_0_SHIFT
#define WM8741_RAT_4_0_WIDTH

/*
 * R3 (0x03) - DACRMSB_ATTENUATION
 */
#define WM8741_UPDATERM
#define WM8741_UPDATERM_MASK
#define WM8741_UPDATERM_SHIFT
#define WM8741_UPDATERM_WIDTH
#define WM8741_RAT_9_5_0_MASK
#define WM8741_RAT_9_5_0_SHIFT
#define WM8741_RAT_9_5_0_WIDTH

/*
 * R4 (0x04) - VOLUME_CONTROL
 */
#define WM8741_AMUTE
#define WM8741_AMUTE_MASK
#define WM8741_AMUTE_SHIFT
#define WM8741_AMUTE_WIDTH
#define WM8741_ZFLAG_MASK
#define WM8741_ZFLAG_SHIFT
#define WM8741_ZFLAG_WIDTH
#define WM8741_IZD
#define WM8741_IZD_MASK
#define WM8741_IZD_SHIFT
#define WM8741_IZD_WIDTH
#define WM8741_SOFT
#define WM8741_SOFT_MASK
#define WM8741_SOFT_SHIFT
#define WM8741_SOFT_WIDTH
#define WM8741_ATC
#define WM8741_ATC_MASK
#define WM8741_ATC_SHIFT
#define WM8741_ATC_WIDTH
#define WM8741_ATT2DB
#define WM8741_ATT2DB_MASK
#define WM8741_ATT2DB_SHIFT
#define WM8741_ATT2DB_WIDTH
#define WM8741_VOL_RAMP
#define WM8741_VOL_RAMP_MASK
#define WM8741_VOL_RAMP_SHIFT
#define WM8741_VOL_RAMP_WIDTH

/*
 * R5 (0x05) - FORMAT_CONTROL
 */
#define WM8741_PWDN
#define WM8741_PWDN_MASK
#define WM8741_PWDN_SHIFT
#define WM8741_PWDN_WIDTH
#define WM8741_REV
#define WM8741_REV_MASK
#define WM8741_REV_SHIFT
#define WM8741_REV_WIDTH
#define WM8741_BCP
#define WM8741_BCP_MASK
#define WM8741_BCP_SHIFT
#define WM8741_BCP_WIDTH
#define WM8741_LRP
#define WM8741_LRP_MASK
#define WM8741_LRP_SHIFT
#define WM8741_LRP_WIDTH
#define WM8741_FMT_MASK
#define WM8741_FMT_SHIFT
#define WM8741_FMT_WIDTH
#define WM8741_IWL_MASK
#define WM8741_IWL_SHIFT
#define WM8741_IWL_WIDTH

/*
 * R6 (0x06) - FILTER_CONTROL
 */
#define WM8741_ZFLAG_HI
#define WM8741_ZFLAG_HI_MASK
#define WM8741_ZFLAG_HI_SHIFT
#define WM8741_ZFLAG_HI_WIDTH
#define WM8741_DEEMPH_MASK
#define WM8741_DEEMPH_SHIFT
#define WM8741_DEEMPH_WIDTH
#define WM8741_DSDFILT_MASK
#define WM8741_DSDFILT_SHIFT
#define WM8741_DSDFILT_WIDTH
#define WM8741_FIRSEL_MASK
#define WM8741_FIRSEL_SHIFT
#define WM8741_FIRSEL_WIDTH

/*
 * R7 (0x07) - MODE_CONTROL_1
 */
#define WM8741_MODE8X
#define WM8741_MODE8X_MASK
#define WM8741_MODE8X_SHIFT
#define WM8741_MODE8X_WIDTH
#define WM8741_OSR_MASK
#define WM8741_OSR_SHIFT
#define WM8741_OSR_WIDTH
#define WM8741_SR_MASK
#define WM8741_SR_SHIFT
#define WM8741_SR_WIDTH
#define WM8741_MODESEL_MASK
#define WM8741_MODESEL_SHIFT
#define WM8741_MODESEL_WIDTH

/*
 * R8 (0x08) - MODE_CONTROL_2
 */
#define WM8741_DSD_GAIN
#define WM8741_DSD_GAIN_MASK
#define WM8741_DSD_GAIN_SHIFT
#define WM8741_DSD_GAIN_WIDTH
#define WM8741_SDOUT
#define WM8741_SDOUT_MASK
#define WM8741_SDOUT_SHIFT
#define WM8741_SDOUT_WIDTH
#define WM8741_DOUT
#define WM8741_DOUT_MASK
#define WM8741_DOUT_SHIFT
#define WM8741_DOUT_WIDTH
#define WM8741_DIFF_MASK
#define WM8741_DIFF_SHIFT
#define WM8741_DIFF_WIDTH
#define WM8741_DITHER_MASK
#define WM8741_DITHER_SHIFT
#define WM8741_DITHER_WIDTH

/* DIFF field values */
#define WM8741_DIFF_MODE_STEREO
#define WM8741_DIFF_MODE_STEREO_REVERSED
#define WM8741_DIFF_MODE_MONO_LEFT
#define WM8741_DIFF_MODE_MONO_RIGHT

/*
 * R32 (0x20) - ADDITONAL_CONTROL_1
 */
#define WM8741_DSD_LEVEL
#define WM8741_DSD_LEVEL_MASK
#define WM8741_DSD_LEVEL_SHIFT
#define WM8741_DSD_LEVEL_WIDTH
#define WM8741_DSD_NO_NOTCH
#define WM8741_DSD_NO_NOTCH_MASK
#define WM8741_DSD_NO_NOTCH_SHIFT
#define WM8741_DSD_NO_NOTCH_WIDTH

#define WM8741_SYSCLK

struct wm8741_platform_data {};

#endif