Classes | Macros | Typedefs | Functions
pcm.h File Reference
#include <stdint.h>
Include dependency graph for pcm.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  __attribute__
 
struct  pcm_pin_table_t
 
struct  pcm_pin_tables_t
 

Macros

#define NUM_PCMFUNS   4
 
#define PCM_OFFSET   (0x00203000)
 
#define PCM_PERIPH_PHYS   (0x7e203000)
 
#define PCMFUN_CLK   0
 
#define PCMFUN_DIN   2
 
#define PCMFUN_DOUT   3
 
#define PCMFUN_FS   1
 
#define RPI_PCM_CS_DMAEN   (1 << 9)
 
#define RPI_PCM_CS_EN   (1 << 0)
 
#define RPI_PCM_CS_RXCLR   (1 << 4)
 
#define RPI_PCM_CS_RXD   (1 << 20)
 
#define RPI_PCM_CS_RXERR   (1 << 16)
 
#define RPI_PCM_CS_RXF   (1 << 22)
 
#define RPI_PCM_CS_RXON   (1 << 1)
 
#define RPI_PCM_CS_RXR   (1 << 18)
 
#define RPI_PCM_CS_RXSEX   (1 << 23)
 
#define RPI_PCM_CS_RXSYNC   (1 << 14)
 
#define RPI_PCM_CS_RXTHR(val)   ((val & 0x03) << 7)
 
#define RPI_PCM_CS_STBY   (1 << 25)
 
#define RPI_PCM_CS_SYNC   (1 << 24)
 
#define RPI_PCM_CS_TXCLR   (1 << 3)
 
#define RPI_PCM_CS_TXD   (1 << 19)
 
#define RPI_PCM_CS_TXE   (1 << 21)
 
#define RPI_PCM_CS_TXERR   (1 << 15)
 
#define RPI_PCM_CS_TXON   (1 << 2)
 
#define RPI_PCM_CS_TXSYNC   (1 << 13)
 
#define RPI_PCM_CS_TXTHR(val)   ((val & 0x03) << 5)
 
#define RPI_PCM_CS_TXW   (1 << 17)
 
#define RPI_PCM_DREQ_RX(val)   ((val & 0x7f) << 0)
 
#define RPI_PCM_DREQ_RX_PANIC(val)   ((val & 0x7f) << 16)
 
#define RPI_PCM_DREQ_TX(val)   ((val & 0x7f) << 8)
 
#define RPI_PCM_DREQ_TX_PANIC(val)   ((val & 0x7f) << 24)
 
#define RPI_PCM_GRAY_CLR   (1 << 1)
 
#define RPI_PCM_GRAY_EN   (1 << 0)
 
#define RPI_PCM_GRAY_FLUSH   (1 << 2)
 
#define RPI_PCM_GRAY_FLUSHED(val)   ((val & 0x3f) << 10
 
#define RPI_PCM_GRAY_RXFIFOLEVEL(val)   ((val & 0x3f) << 16)
 
#define RPI_PCM_GRAY_RXLEVEL(val)   ((val & 0x3f) << 4)
 
#define RPI_PCM_INTEN_RXERR   (1 << 3)
 
#define RPI_PCM_INTEN_RXR   (1 << 1)
 
#define RPI_PCM_INTEN_TXERR   (1 << 2)
 
#define RPI_PCM_INTEN_TXW   (1 << 0)
 
#define RPI_PCM_INTSTC_RXERR   (1 << 3)
 
#define RPI_PCM_INTSTC_RXR   (1 << 1)
 
#define RPI_PCM_INTSTC_TXERR   (1 << 2)
 
#define RPI_PCM_INTSTC_TXW   (1 << 0)
 
#define RPI_PCM_MODE_CLK_DIS   (1 << 28)
 
#define RPI_PCM_MODE_CLKI   (1 << 22)
 
#define RPI_PCM_MODE_CLKM   (1 << 23)
 
#define RPI_PCM_MODE_FLEN(val)   ((val & 0x3ff) << 10)
 
#define RPI_PCM_MODE_FRXP   (1 << 25)
 
#define RPI_PCM_MODE_FSI   (1 << 20)
 
#define RPI_PCM_MODE_FSLEN(val)   ((val & 0x3ff) << 0)
 
#define RPI_PCM_MODE_FSM   (1 << 21)
 
#define RPI_PCM_MODE_FTXP   (1 << 24)
 
#define RPI_PCM_MODE_PDME   (1 << 26)
 
#define RPI_PCM_MODE_PDMN   (1 << 27)
 
#define RPI_PCM_RXC_CH1EN   (1 << 30)
 
#define RPI_PCM_RXC_CH1POS(val)   ((val & 0x3ff) << 20)
 
#define RPI_PCM_RXC_CH1WEX   (1 << 31)
 
#define RPI_PCM_RXC_CH1WID(val)   ((val & 0x0f) << 16)
 
#define RPI_PCM_RXC_CH2EN   (1 << 14)
 
#define RPI_PCM_RXC_CH2POS(val)   ((val & 0x3ff) << 4)
 
#define RPI_PCM_RXC_CH2WEX   (1 << 15)
 
#define RPI_PCM_RXC_CH2WID(val)   ((val & 0x0f) << 0)
 
#define RPI_PCM_TXC_CH1EN   (1 << 30)
 
#define RPI_PCM_TXC_CH1POS(val)   ((val & 0x3ff) << 20)
 
#define RPI_PCM_TXC_CH1WEX   (1 << 31)
 
#define RPI_PCM_TXC_CH1WID(val)   ((val & 0x0f) << 16)
 
#define RPI_PCM_TXC_CH2EN   (1 << 14)
 
#define RPI_PCM_TXC_CH2POS(val)   ((val & 0x3ff) << 4)
 
#define RPI_PCM_TXC_CH2WEX   (1 << 15)
 
#define RPI_PCM_TXC_CH2WID(val)   ((val & 0x0f) << 0)
 

Typedefs

typedef struct __attribute__ aligned
 

Functions

 aligned (4))) pcm_t
 
int pcm_pin_alt (int pcmfun, int pinnum)
 

Macro Definition Documentation

◆ NUM_PCMFUNS

#define NUM_PCMFUNS   4

Definition at line 137 of file pcm.h.

◆ PCM_OFFSET

#define PCM_OFFSET   (0x00203000)

Definition at line 134 of file pcm.h.

◆ PCM_PERIPH_PHYS

#define PCM_PERIPH_PHYS   (0x7e203000)

Definition at line 135 of file pcm.h.

◆ PCMFUN_CLK

#define PCMFUN_CLK   0

Definition at line 138 of file pcm.h.

◆ PCMFUN_DIN

#define PCMFUN_DIN   2

Definition at line 140 of file pcm.h.

◆ PCMFUN_DOUT

#define PCMFUN_DOUT   3

Definition at line 141 of file pcm.h.

◆ PCMFUN_FS

#define PCMFUN_FS   1

Definition at line 139 of file pcm.h.

◆ RPI_PCM_CS_DMAEN

#define RPI_PCM_CS_DMAEN   (1 << 9)

Definition at line 70 of file pcm.h.

◆ RPI_PCM_CS_EN

#define RPI_PCM_CS_EN   (1 << 0)

Definition at line 77 of file pcm.h.

◆ RPI_PCM_CS_RXCLR

#define RPI_PCM_CS_RXCLR   (1 << 4)

Definition at line 73 of file pcm.h.

◆ RPI_PCM_CS_RXD

#define RPI_PCM_CS_RXD   (1 << 20)

Definition at line 62 of file pcm.h.

◆ RPI_PCM_CS_RXERR

#define RPI_PCM_CS_RXERR   (1 << 16)

Definition at line 66 of file pcm.h.

◆ RPI_PCM_CS_RXF

#define RPI_PCM_CS_RXF   (1 << 22)

Definition at line 60 of file pcm.h.

◆ RPI_PCM_CS_RXON

#define RPI_PCM_CS_RXON   (1 << 1)

Definition at line 76 of file pcm.h.

◆ RPI_PCM_CS_RXR

#define RPI_PCM_CS_RXR   (1 << 18)

Definition at line 64 of file pcm.h.

◆ RPI_PCM_CS_RXSEX

#define RPI_PCM_CS_RXSEX   (1 << 23)

Definition at line 59 of file pcm.h.

◆ RPI_PCM_CS_RXSYNC

#define RPI_PCM_CS_RXSYNC   (1 << 14)

Definition at line 68 of file pcm.h.

◆ RPI_PCM_CS_RXTHR

#define RPI_PCM_CS_RXTHR (   val)    ((val & 0x03) << 7)

Definition at line 71 of file pcm.h.

◆ RPI_PCM_CS_STBY

#define RPI_PCM_CS_STBY   (1 << 25)

Definition at line 57 of file pcm.h.

◆ RPI_PCM_CS_SYNC

#define RPI_PCM_CS_SYNC   (1 << 24)

Definition at line 58 of file pcm.h.

◆ RPI_PCM_CS_TXCLR

#define RPI_PCM_CS_TXCLR   (1 << 3)

Definition at line 74 of file pcm.h.

◆ RPI_PCM_CS_TXD

#define RPI_PCM_CS_TXD   (1 << 19)

Definition at line 63 of file pcm.h.

◆ RPI_PCM_CS_TXE

#define RPI_PCM_CS_TXE   (1 << 21)

Definition at line 61 of file pcm.h.

◆ RPI_PCM_CS_TXERR

#define RPI_PCM_CS_TXERR   (1 << 15)

Definition at line 67 of file pcm.h.

◆ RPI_PCM_CS_TXON

#define RPI_PCM_CS_TXON   (1 << 2)

Definition at line 75 of file pcm.h.

◆ RPI_PCM_CS_TXSYNC

#define RPI_PCM_CS_TXSYNC   (1 << 13)

Definition at line 69 of file pcm.h.

◆ RPI_PCM_CS_TXTHR

#define RPI_PCM_CS_TXTHR (   val)    ((val & 0x03) << 5)

Definition at line 72 of file pcm.h.

◆ RPI_PCM_CS_TXW

#define RPI_PCM_CS_TXW   (1 << 17)

Definition at line 65 of file pcm.h.

◆ RPI_PCM_DREQ_RX

#define RPI_PCM_DREQ_RX (   val)    ((val & 0x7f) << 0)

Definition at line 113 of file pcm.h.

◆ RPI_PCM_DREQ_RX_PANIC

#define RPI_PCM_DREQ_RX_PANIC (   val)    ((val & 0x7f) << 16)

Definition at line 111 of file pcm.h.

◆ RPI_PCM_DREQ_TX

#define RPI_PCM_DREQ_TX (   val)    ((val & 0x7f) << 8)

Definition at line 112 of file pcm.h.

◆ RPI_PCM_DREQ_TX_PANIC

#define RPI_PCM_DREQ_TX_PANIC (   val)    ((val & 0x7f) << 24)

Definition at line 110 of file pcm.h.

◆ RPI_PCM_GRAY_CLR

#define RPI_PCM_GRAY_CLR   (1 << 1)

Definition at line 129 of file pcm.h.

◆ RPI_PCM_GRAY_EN

#define RPI_PCM_GRAY_EN   (1 << 0)

Definition at line 130 of file pcm.h.

◆ RPI_PCM_GRAY_FLUSH

#define RPI_PCM_GRAY_FLUSH   (1 << 2)

Definition at line 128 of file pcm.h.

◆ RPI_PCM_GRAY_FLUSHED

#define RPI_PCM_GRAY_FLUSHED (   val)    ((val & 0x3f) << 10

Definition at line 126 of file pcm.h.

◆ RPI_PCM_GRAY_RXFIFOLEVEL

#define RPI_PCM_GRAY_RXFIFOLEVEL (   val)    ((val & 0x3f) << 16)

Definition at line 125 of file pcm.h.

◆ RPI_PCM_GRAY_RXLEVEL

#define RPI_PCM_GRAY_RXLEVEL (   val)    ((val & 0x3f) << 4)

Definition at line 127 of file pcm.h.

◆ RPI_PCM_INTEN_RXERR

#define RPI_PCM_INTEN_RXERR   (1 << 3)

Definition at line 115 of file pcm.h.

◆ RPI_PCM_INTEN_RXR

#define RPI_PCM_INTEN_RXR   (1 << 1)

Definition at line 117 of file pcm.h.

◆ RPI_PCM_INTEN_TXERR

#define RPI_PCM_INTEN_TXERR   (1 << 2)

Definition at line 116 of file pcm.h.

◆ RPI_PCM_INTEN_TXW

#define RPI_PCM_INTEN_TXW   (1 << 0)

Definition at line 118 of file pcm.h.

◆ RPI_PCM_INTSTC_RXERR

#define RPI_PCM_INTSTC_RXERR   (1 << 3)

Definition at line 120 of file pcm.h.

◆ RPI_PCM_INTSTC_RXR

#define RPI_PCM_INTSTC_RXR   (1 << 1)

Definition at line 122 of file pcm.h.

◆ RPI_PCM_INTSTC_TXERR

#define RPI_PCM_INTSTC_TXERR   (1 << 2)

Definition at line 121 of file pcm.h.

◆ RPI_PCM_INTSTC_TXW

#define RPI_PCM_INTSTC_TXW   (1 << 0)

Definition at line 123 of file pcm.h.

◆ RPI_PCM_MODE_CLK_DIS

#define RPI_PCM_MODE_CLK_DIS   (1 << 28)

Definition at line 80 of file pcm.h.

◆ RPI_PCM_MODE_CLKI

#define RPI_PCM_MODE_CLKI   (1 << 22)

Definition at line 86 of file pcm.h.

◆ RPI_PCM_MODE_CLKM

#define RPI_PCM_MODE_CLKM   (1 << 23)

Definition at line 85 of file pcm.h.

◆ RPI_PCM_MODE_FLEN

#define RPI_PCM_MODE_FLEN (   val)    ((val & 0x3ff) << 10)

Definition at line 89 of file pcm.h.

◆ RPI_PCM_MODE_FRXP

#define RPI_PCM_MODE_FRXP   (1 << 25)

Definition at line 83 of file pcm.h.

◆ RPI_PCM_MODE_FSI

#define RPI_PCM_MODE_FSI   (1 << 20)

Definition at line 88 of file pcm.h.

◆ RPI_PCM_MODE_FSLEN

#define RPI_PCM_MODE_FSLEN (   val)    ((val & 0x3ff) << 0)

Definition at line 90 of file pcm.h.

◆ RPI_PCM_MODE_FSM

#define RPI_PCM_MODE_FSM   (1 << 21)

Definition at line 87 of file pcm.h.

◆ RPI_PCM_MODE_FTXP

#define RPI_PCM_MODE_FTXP   (1 << 24)

Definition at line 84 of file pcm.h.

◆ RPI_PCM_MODE_PDME

#define RPI_PCM_MODE_PDME   (1 << 26)

Definition at line 82 of file pcm.h.

◆ RPI_PCM_MODE_PDMN

#define RPI_PCM_MODE_PDMN   (1 << 27)

Definition at line 81 of file pcm.h.

◆ RPI_PCM_RXC_CH1EN

#define RPI_PCM_RXC_CH1EN   (1 << 30)

Definition at line 93 of file pcm.h.

◆ RPI_PCM_RXC_CH1POS

#define RPI_PCM_RXC_CH1POS (   val)    ((val & 0x3ff) << 20)

Definition at line 94 of file pcm.h.

◆ RPI_PCM_RXC_CH1WEX

#define RPI_PCM_RXC_CH1WEX   (1 << 31)

Definition at line 92 of file pcm.h.

◆ RPI_PCM_RXC_CH1WID

#define RPI_PCM_RXC_CH1WID (   val)    ((val & 0x0f) << 16)

Definition at line 95 of file pcm.h.

◆ RPI_PCM_RXC_CH2EN

#define RPI_PCM_RXC_CH2EN   (1 << 14)

Definition at line 97 of file pcm.h.

◆ RPI_PCM_RXC_CH2POS

#define RPI_PCM_RXC_CH2POS (   val)    ((val & 0x3ff) << 4)

Definition at line 98 of file pcm.h.

◆ RPI_PCM_RXC_CH2WEX

#define RPI_PCM_RXC_CH2WEX   (1 << 15)

Definition at line 96 of file pcm.h.

◆ RPI_PCM_RXC_CH2WID

#define RPI_PCM_RXC_CH2WID (   val)    ((val & 0x0f) << 0)

Definition at line 99 of file pcm.h.

◆ RPI_PCM_TXC_CH1EN

#define RPI_PCM_TXC_CH1EN   (1 << 30)

Definition at line 102 of file pcm.h.

◆ RPI_PCM_TXC_CH1POS

#define RPI_PCM_TXC_CH1POS (   val)    ((val & 0x3ff) << 20)

Definition at line 103 of file pcm.h.

◆ RPI_PCM_TXC_CH1WEX

#define RPI_PCM_TXC_CH1WEX   (1 << 31)

Definition at line 101 of file pcm.h.

◆ RPI_PCM_TXC_CH1WID

#define RPI_PCM_TXC_CH1WID (   val)    ((val & 0x0f) << 16)

Definition at line 104 of file pcm.h.

◆ RPI_PCM_TXC_CH2EN

#define RPI_PCM_TXC_CH2EN   (1 << 14)

Definition at line 106 of file pcm.h.

◆ RPI_PCM_TXC_CH2POS

#define RPI_PCM_TXC_CH2POS (   val)    ((val & 0x3ff) << 4)

Definition at line 107 of file pcm.h.

◆ RPI_PCM_TXC_CH2WEX

#define RPI_PCM_TXC_CH2WEX   (1 << 15)

Definition at line 105 of file pcm.h.

◆ RPI_PCM_TXC_CH2WID

#define RPI_PCM_TXC_CH2WID (   val)    ((val & 0x0f) << 0)

Definition at line 108 of file pcm.h.

Typedef Documentation

◆ aligned

Function Documentation

◆ aligned()

aligned ( )

◆ pcm_pin_alt()

int pcm_pin_alt ( int  pcmfun,
int  pinnum 
)

Definition at line 109 of file pcm.c.



ws281x
Author(s): Alexey Rogachevskiy , Oleg Kalachev
autogenerated on Wed Jun 15 2022 02:21:36