Logo Search packages:      
Sourcecode: alsa-driver version File versions  Download package

snd-aoa-codec-onyx.h

/*
 * Apple Onboard Audio driver for Onyx codec (header)
 *
 * Copyright 2006 Johannes Berg <johannes@sipsolutions.net>
 *
 * GPL v2, can be found in COPYING.
 */
#ifndef __SND_AOA_CODEC_ONYX_H
#define __SND_AOA_CODEC_ONYX_H
#include <stddef.h>
#include <linux/i2c.h>
#include <linux/i2c-dev.h>
#include <asm/pmac_low_i2c.h>
#include <asm/prom.h>

/* PCM3052 register definitions */

/* the attenuation registers take values from
 * -1 (0dB) to -127 (-63.0 dB) or others (muted) */
#define ONYX_REG_DAC_ATTEN_LEFT           65
#define FIRSTREGISTER               ONYX_REG_DAC_ATTEN_LEFT
#define ONYX_REG_DAC_ATTEN_RIGHT    66

#define ONYX_REG_CONTROL            67
#     define ONYX_MRST        (1<<7)
#     define ONYX_SRST        (1<<6)
#     define ONYX_ADPSV       (1<<5)
#     define ONYX_DAPSV       (1<<4)
#     define ONYX_SILICONVERSION    (1<<0)
/* all others reserved */

#define ONYX_REG_DAC_CONTROL        68
#     define ONYX_OVR1        (1<<6)
#     define ONYX_MUTE_RIGHT        (1<<1)
#     define ONYX_MUTE_LEFT         (1<<0)

#define ONYX_REG_DAC_DEEMPH         69
#     define ONYX_DIGDEEMPH_SHIFT   5
#     define ONYX_DIGDEEMPH_MASK    (3<<ONYX_DIGDEEMPH_SHIFT)
#     define ONYX_DIGDEEMPH_CTRL    (1<<4)

#define ONYX_REG_DAC_FILTER         70
#     define ONYX_ROLLOFF_FAST      (1<<5)
#     define ONYX_DAC_FILTER_ALWAYS (1<<2)

#define     ONYX_REG_DAC_OUTPHASE         71
#     define ONYX_OUTPHASE_INVERTED (1<<0)

#define ONYX_REG_ADC_CONTROL        72
#     define ONYX_ADC_INPUT_MIC     (1<<5)
/* 8 + input gain in dB, valid range for input gain is -4 .. 20 dB */
#     define ONYX_ADC_PGA_GAIN_MASK 0x1f

#define ONYX_REG_ADC_HPF_BYPASS           75
#     define ONYX_HPF_DISABLE       (1<<3)
#     define ONYX_ADC_HPF_ALWAYS    (1<<2)

#define ONYX_REG_DIG_INFO1          77
#     define ONYX_MASK_DIN_TO_BPZ   (1<<7)
/* bits 1-5 control channel bits 1-5 */
#     define ONYX_DIGOUT_DISABLE    (1<<0)

#define ONYX_REG_DIG_INFO2          78
/* controls channel bits 8-15 */

#define ONYX_REG_DIG_INFO3          79
/* control channel bits 24-29, high 2 bits reserved */

#define ONYX_REG_DIG_INFO4          80
#     define ONYX_VALIDL            (1<<7)
#     define ONYX_VALIDR            (1<<6)
#     define ONYX_SPDIF_ENABLE      (1<<5)
/* lower 4 bits control bits 32-35 of channel control and word length */
#     define ONYX_WORDLEN_MASK      (0xF)

#endif /* __SND_AOA_CODEC_ONYX_H */

Generated by  Doxygen 1.6.0   Back to index