mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-11-10 05:32:40 -05:00
imx233: rewrite audioin using new register headers
Change-Id: I7d71d16361a29030d0eb6de5c518168947516d39
This commit is contained in:
parent
df9e6c3147
commit
444a8b1da0
2 changed files with 5 additions and 86 deletions
|
|
@ -25,9 +25,9 @@ void imx233_audioin_preinit(void)
|
||||||
/* Enable AUDIOIN block */
|
/* Enable AUDIOIN block */
|
||||||
imx233_reset_block(&HW_AUDIOIN_CTRL);
|
imx233_reset_block(&HW_AUDIOIN_CTRL);
|
||||||
/* Enable ADC */
|
/* Enable ADC */
|
||||||
__REG_CLR(HW_AUDIOIN_ANACLKCTRL) = HW_AUDIOIN_ANACLKCTRL__CLKGATE;
|
BF_SET(AUDIOIN_CTRL, CLKGATE);
|
||||||
/* Set word-length to 16-bit */
|
/* Set word-length to 16-bit */
|
||||||
__REG_SET(HW_AUDIOIN_CTRL) = HW_AUDIOIN_CTRL__WORD_LENGTH;
|
BF_SET(AUDIOIN_CTRL, WORD_LENGTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imx233_audioin_postinit(void)
|
void imx233_audioin_postinit(void)
|
||||||
|
|
@ -38,7 +38,7 @@ void imx233_audioin_close(void)
|
||||||
{
|
{
|
||||||
/* TODO mute */
|
/* TODO mute */
|
||||||
/* Gate off ADC */
|
/* Gate off ADC */
|
||||||
__REG_SET(HW_AUDIOIN_ANACLKCTRL) = HW_AUDIOIN_ANACLKCTRL__CLKGATE;
|
BF_SET(AUDIOIN_ANACLKCTRL, CLKGATE);
|
||||||
/* will also gate off the module */
|
/* will also gate off the module */
|
||||||
__REG_CLR(HW_AUDIOIN_CTRL) = HW_AUDIOIN_CTRL__RUN;
|
BF_CLR(AUDIOIN_CTRL, RUN);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,88 +25,7 @@
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
#include "system.h"
|
#include "system.h"
|
||||||
|
|
||||||
#define HW_AUDIOIN_BASE 0x8004c000
|
#include "regs/regs-audioin.h"
|
||||||
|
|
||||||
#define HW_AUDIOIN_CTRL (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x0))
|
|
||||||
#define HW_AUDIOIN_CTRL__RUN (1 << 0)
|
|
||||||
#define HW_AUDIOIN_CTRL__FIFO_ERROR_IRQ_EN (1 << 1)
|
|
||||||
#define HW_AUDIOIN_CTRL__FIFO_OVERFLOW_IRQ (1 << 2)
|
|
||||||
#define HW_AUDIOIN_CTRL__FIFO_UNDERFLOW_IRQ (1 << 3)
|
|
||||||
#define HW_AUDIOIN_CTRL__LOOPBACK (1 << 4)
|
|
||||||
#define HW_AUDIOIN_CTRL__WORD_LENGTH (1 << 5)
|
|
||||||
#define HW_AUDIOIN_CTRL__HPF_ENABLE (1 << 6)
|
|
||||||
#define HW_AUDIOIN_CTRL__OFFSET_ENABLE (1 << 7)
|
|
||||||
#define HW_AUDIOIN_CTRL__INVERT_1BIT (1 << 8)
|
|
||||||
#define HW_AUDIOIN_CTRL__EDGE_SYNC (1 << 9)
|
|
||||||
#define HW_AUDIOIN_CTRL__LR_SWAP (1 << 10)
|
|
||||||
#define HW_AUDIOIN_CTRL__DMAWAIT_COUNT_BP 16
|
|
||||||
#define HW_AUDIOIN_CTRL__DMAWAIT_COUNT_BM (0x1f << 16)
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_STAT (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x10))
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_ADCSRR (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x20))
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_FRAC_BP 0
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_FRAC_BM (0x1ff << 0)
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_INT_BP 16
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_INT_BM (0x1f << 16)
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_HOLD_BP 24
|
|
||||||
#define HW_AUDIOIN_ADCSRR__SRC_HOLD_BM (0x7 << 24)
|
|
||||||
#define HW_AUDIOIN_ADCSRR__BASEMULT_BP 28
|
|
||||||
#define HW_AUDIOIN_ADCSRR__BASEMULT_BM (0x7 << 28)
|
|
||||||
#define HW_AUDIOIN_ADCSRR__OSR (1 << 31)
|
|
||||||
|
|
||||||
/* MUTE_LEFT and MUTE_RIGHT are not documented but present */
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x30))
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_RIGHT_BP 0
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_RIGHT_BM 0xff
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__MUTE_RIGHT (1 << 8)
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_UPDATE_RIGHT (1 << 12)
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_LEFT_BP 16
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_LEFT_BM (0xff << 16)
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__MUTE_LEFT (1 << 24)
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__EN_ZCD (1 << 25)
|
|
||||||
#define HW_AUDIOIN_ADCVOLUME__VOLUME_UPDATE_LEFT (1 << 28)
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_ADCDEBUG (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x40))
|
|
||||||
#define HW_AUDIOIN_ADCDEBUG__FIFO_STATUS 1
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_ADCVOL (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x50))
|
|
||||||
#define HW_AUDIOIN_ADCVOL__GAIN_RIGHT_BP 0
|
|
||||||
#define HW_AUDIOIN_ADCVOL__GAIN_RIGHT_BM (0xf << 0)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__SELECT_RIGHT_BP 4
|
|
||||||
#define HW_AUDIOIN_ADCVOL__SELECT_RIGHT_BM (0x3 << 4)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__GAIN_LEFT_BP 8
|
|
||||||
#define HW_AUDIOIN_ADCVOL__GAIN_LEFT_BM (0xf << 8)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__SELECT_LEFT_BP 12
|
|
||||||
#define HW_AUDIOIN_ADCVOL__SELECT_LEFT_BM (0x3 << 12)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__MUTE (1 << 24)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__EN_ADC_ZCD (1 << 25)
|
|
||||||
#define HW_AUDIOIN_ADCVOL__VOLUME_UPDATE_PENDING (1 << 28)
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_MICLINE (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x60))
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_GAIN_BP 0
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_GAIN_BM 0x3
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_CHOPCLK_BP 4
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_CHOPCLK_BM (0x3 << 4)
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_BIAIS_BP 16
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_BIAIS_BM (0x3 << 16)
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_RESISTOR_BP 20
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_RESISTOR_BM (0x3 << 20)
|
|
||||||
#define HW_AUDIOIN_MICLINE__MIC_SELECT (1 << 24)
|
|
||||||
#define HW_AUDIOIN_MICLINE__DIVIDE_LINE2 (1 << 28)
|
|
||||||
#define HW_AUDIOIN_MICLINE__DIVIDE_LINE1 (1 << 29)
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x70))
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__ADCDIV_BP 0
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__ADCDIV_BM (0x7 << 0)
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__ADCCLK_SHIFT_BP 4
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__ADCCLK_SHIFT_BM (0x3 << 4)
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__INVERT_ADCCLK (1 << 8)
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__SLOW_DITHER (1 << 9)
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__DITHER_OFF (1 << 10)
|
|
||||||
#define HW_AUDIOIN_ANACLKCTRL__CLKGATE (1 << 31)
|
|
||||||
|
|
||||||
#define HW_AUDIOIN_DATA (*(volatile uint32_t *)(HW_AUDIOIN_BASE + 0x80))
|
|
||||||
|
|
||||||
void imx233_audioin_preinit(void);
|
void imx233_audioin_preinit(void);
|
||||||
void imx233_audioin_postinit(void);
|
void imx233_audioin_postinit(void);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue