class AmlTdmDevice
Defined at line 18 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
Public Methods
void AmlTdmDevice (AmlTdmDevice && )
Defined at line 20 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
void AmlTdmDevice (const AmlTdmDevice & )
Defined at line 20 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
uint32_t GetBufferAlignment ()
Get HW alignment required in the buffer in bytes.
Defined at line 52 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
std::unique_ptr<AmlTdmDevice> Create (fdf::MmioBuffer mmio, ee_audio_mclk_src_t src, aml_tdm_out_t tdm, aml_frddr_t frddr, aml_tdm_mclk_t mclk, metadata::AmlVersion version)
zx_status_t SetMclkDiv (uint32_t div)
Configure an mclk channel divider
Defined at line 40 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
zx_status_t SetSclkDiv (uint32_t sdiv, uint32_t lrduty, uint32_t lrdiv, bool sclk_invert_ph0)
Configure an sclk/lclk generator block
Defined at line 72 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
zx_status_t SetMClkPad (aml_tdm_mclk_pad_t mclk_pad)
Configures the mclk pad.
Defined at line 99 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
zx_status_t SetSclkPad (aml_tdm_sclk_pad_t sclk_pad, bool is_custom_select)
Configures the sclk / lrclk pad.
zx_status_t SetDatPad (aml_tdm_dat_pad_t tdm_pin, aml_tdm_dat_lane_t dat_lane)
configure the data pad.
void ConfigTdmSlot (uint8_t bit_offset, uint8_t num_slots, uint8_t bits_per_slot, uint8_t bits_per_sample, uint8_t mix_mask, bool i2s_mode)
Configures placement of data on the tdm bus
zx_status_t ConfigTdmLane (size_t lane, uint32_t enable_mask, uint32_t mute_mask)
Configures Lanes.
void ConfigTdmSwaps (uint32_t swaps)
Configures TDM swaps.
zx_status_t SetBuffer (zx_paddr_t buf, size_t len)
Sets the buffer/length pointers for dma engine
must resize in lower 32-bits of address space.
uint32_t GetRingPosition ()
Returns offset of dma pointer in the ring buffer.
uint32_t GetDmaStatus ()
Returns DMA status bits.
uint32_t GetTdmStatus ()
Returns TDM status bits.
uint64_t Start ()
Resets state of dma mechanisms and starts clocking data
onto/from tdm bus with data fetched from beginning of buffer.
void Stop ()
Stops clocking data out/in on/from the TDM bus (physical tdm bus signals remain active).
void Sync ()
Synchronize the state of TDM bus signals with fifo/dma engine.
void Initialize ()
Start clocking, configure the DDR and TDM interfaces.
void Shutdown ()
Stops the clocking data, shuts down the DDR interface, and quiets output signals.
uint32_t fifo_depth ()
const fdf::MmioBuffer & GetMmio ()
AmlTdmDevice & operator= (AmlTdmDevice && )
Defined at line 20 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
AmlTdmDevice & operator= (const AmlTdmDevice & )
Defined at line 20 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
Protected Methods
void AmlTdmDevice (aml_tdm_mclk_t mclk_ch, const ee_audio_mclk_src_t clk_src, const metadata::AmlVersion version)
Defined at line 86 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
void InitMclk ()
Defined at line 11 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
void InitMstPad ()
void ~AmlTdmDevice ()
Defined at line 89 of file ../../src/devices/lib/amlogic/include/soc/aml-common/aml-tdm-audio.h
void AudioClkEna (uint32_t audio_blk_mask)
Defined at line 169 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
void AudioClkDis (uint32_t audio_blk_mask)
Defined at line 173 of file ../../src/devices/lib/amlogic/aml-tdm-audio.cc
Friends
class default_delete