coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
tsadc.c File Reference
#include <device/mmio.h>
#include <delay.h>
#include <soc/clock.h>
#include <soc/grf.h>
#include <soc/tsadc.h>
#include <stdint.h>
Include dependency graph for tsadc.c:

Go to the source code of this file.

Data Structures

struct  rk3399_tsadc_regs
 

Macros

#define ADC_POWER_CTRL   (1 << 3)
 
#define START_MODE   (1 << 4)
 
#define START_SHIFT   5
 
#define START_MASK   1
 
#define INTER_PD_SHIFT   6
 
#define INTER_PD_MASK   0x3f
 
#define LAST_TSHUT   (1 << 24)
 
#define SRC3_EN   (1 << 7)
 
#define SRC2_EN   (1 << 6)
 
#define SRC1_EN   (1 << 5)
 
#define SRC0_EN   (1 << 4)
 
#define Q_SEL   (1 << 1)
 
#define AUTO_EN   (1 << 0)
 
#define TSHUT_CRU_EN_SRC3   (1 << 11)
 
#define TSHUT_CRU_EN_SRC2   (1 << 10)
 
#define TSHUT_CRU_EN_SRC1   (1 << 9)
 
#define TSHUT_CRU_EN_SRC0   (1 << 8)
 
#define TSHUT_GPIO_EN_SRC3   (1 << 7)
 
#define TSHUT_GPIO_EN_SRC2   (1 << 6)
 
#define TSHUT_GPIO_EN_SRC1   (1 << 5)
 
#define TSHUT_GPIO_EN_SRC0   (1 << 4)
 
#define AUTO_PERIOD   187500 /* 250ms */
 
#define AUTO_DEBOUNCE   4
 
#define AUTO_PERIOD_HT   37500 /* 50ms */
 
#define AUTO_DEBOUNCE_HT   4
 
#define TSADC_CLOCK_HZ   (750 * KHz)
 
#define TSADC_SHUT_VALUE   677
 
#define GRF_TSADC_TSEN_PD0_ON   RK_SETBITS(0)
 
#define GRF_TSADC_TSEN_PD0_OFF   RK_CLRBITS(0)
 
#define GRF_SARADC_TSEN_ON   RK_SETBITS(0)
 

Functions

 check_member (rk3399_tsadc_regs, auto_period_ht, 0x6c)
 
void tsadc_init (uint32_t polarity)
 

Variables

struct rk3399_tsadc_regsrk3399_tsadc = (void *)TSADC_BASE
 

Macro Definition Documentation

◆ ADC_POWER_CTRL

#define ADC_POWER_CTRL   (1 << 3)

Definition at line 37 of file tsadc.c.

◆ AUTO_DEBOUNCE

#define AUTO_DEBOUNCE   4

Definition at line 64 of file tsadc.c.

◆ AUTO_DEBOUNCE_HT

#define AUTO_DEBOUNCE_HT   4

Definition at line 66 of file tsadc.c.

◆ AUTO_EN

#define AUTO_EN   (1 << 0)

Definition at line 51 of file tsadc.c.

◆ AUTO_PERIOD

#define AUTO_PERIOD   187500 /* 250ms */

Definition at line 63 of file tsadc.c.

◆ AUTO_PERIOD_HT

#define AUTO_PERIOD_HT   37500 /* 50ms */

Definition at line 65 of file tsadc.c.

◆ GRF_SARADC_TSEN_ON

#define GRF_SARADC_TSEN_ON   RK_SETBITS(0)

Definition at line 80 of file tsadc.c.

◆ GRF_TSADC_TSEN_PD0_OFF

#define GRF_TSADC_TSEN_PD0_OFF   RK_CLRBITS(0)

Definition at line 79 of file tsadc.c.

◆ GRF_TSADC_TSEN_PD0_ON

#define GRF_TSADC_TSEN_PD0_ON   RK_SETBITS(0)

Definition at line 78 of file tsadc.c.

◆ INTER_PD_MASK

#define INTER_PD_MASK   0x3f

Definition at line 42 of file tsadc.c.

◆ INTER_PD_SHIFT

#define INTER_PD_SHIFT   6

Definition at line 41 of file tsadc.c.

◆ LAST_TSHUT

#define LAST_TSHUT   (1 << 24)

Definition at line 45 of file tsadc.c.

◆ Q_SEL

#define Q_SEL   (1 << 1)

Definition at line 50 of file tsadc.c.

◆ SRC0_EN

#define SRC0_EN   (1 << 4)

Definition at line 49 of file tsadc.c.

◆ SRC1_EN

#define SRC1_EN   (1 << 5)

Definition at line 48 of file tsadc.c.

◆ SRC2_EN

#define SRC2_EN   (1 << 6)

Definition at line 47 of file tsadc.c.

◆ SRC3_EN

#define SRC3_EN   (1 << 7)

Definition at line 46 of file tsadc.c.

◆ START_MASK

#define START_MASK   1

Definition at line 40 of file tsadc.c.

◆ START_MODE

#define START_MODE   (1 << 4)

Definition at line 38 of file tsadc.c.

◆ START_SHIFT

#define START_SHIFT   5

Definition at line 39 of file tsadc.c.

◆ TSADC_CLOCK_HZ

#define TSADC_CLOCK_HZ   (750 * KHz)

Definition at line 67 of file tsadc.c.

◆ TSADC_SHUT_VALUE

#define TSADC_SHUT_VALUE   677

Definition at line 76 of file tsadc.c.

◆ TSHUT_CRU_EN_SRC0

#define TSHUT_CRU_EN_SRC0   (1 << 8)

Definition at line 57 of file tsadc.c.

◆ TSHUT_CRU_EN_SRC1

#define TSHUT_CRU_EN_SRC1   (1 << 9)

Definition at line 56 of file tsadc.c.

◆ TSHUT_CRU_EN_SRC2

#define TSHUT_CRU_EN_SRC2   (1 << 10)

Definition at line 55 of file tsadc.c.

◆ TSHUT_CRU_EN_SRC3

#define TSHUT_CRU_EN_SRC3   (1 << 11)

Definition at line 54 of file tsadc.c.

◆ TSHUT_GPIO_EN_SRC0

#define TSHUT_GPIO_EN_SRC0   (1 << 4)

Definition at line 61 of file tsadc.c.

◆ TSHUT_GPIO_EN_SRC1

#define TSHUT_GPIO_EN_SRC1   (1 << 5)

Definition at line 60 of file tsadc.c.

◆ TSHUT_GPIO_EN_SRC2

#define TSHUT_GPIO_EN_SRC2   (1 << 6)

Definition at line 59 of file tsadc.c.

◆ TSHUT_GPIO_EN_SRC3

#define TSHUT_GPIO_EN_SRC3   (1 << 7)

Definition at line 58 of file tsadc.c.

Function Documentation

◆ check_member()

check_member ( rk3399_tsadc_regs  ,
auto_period_ht  ,
0x6c   
)

◆ tsadc_init()

Variable Documentation

◆ rk3399_tsadc

struct rk3399_tsadc_regs* rk3399_tsadc = (void *)TSADC_BASE

Definition at line 82 of file tsadc.c.

Referenced by tsadc_init().