/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
* comparator . h - - Comparator Aux ADC for Wolfson WM8350 PMIC
*
* Copyright 2007 Wolfson Microelectronics PLC
*/
#ifndef __LINUX_MFD_WM8350_COMPARATOR_H_
#define __LINUX_MFD_WM8350_COMPARATOR_H_
/*
* Registers
*/
#define WM8350_DIGITISER_CONTROL_1 0 x90
#define WM8350_DIGITISER_CONTROL_2 0 x91
#define WM8350_AUX1_READBACK 0 x98
#define WM8350_AUX2_READBACK 0 x99
#define WM8350_AUX3_READBACK 0 x9A
#define WM8350_AUX4_READBACK 0 x9B
#define WM8350_CHIP_TEMP_READBACK 0 x9F
#define WM8350_GENERIC_COMPARATOR_CONTROL 0 xA3
#define WM8350_GENERIC_COMPARATOR_1 0 xA4
#define WM8350_GENERIC_COMPARATOR_2 0 xA5
#define WM8350_GENERIC_COMPARATOR_3 0 xA6
#define WM8350_GENERIC_COMPARATOR_4 0 xA7
/*
* R144 ( 0 x90 ) - Digitiser Control ( 1 )
*/
#define WM8350_AUXADC_CTC 0 x4000
#define WM8350_AUXADC_POLL 0 x2000
#define WM8350_AUXADC_HIB_MODE 0 x1000
#define WM8350_AUXADC_SEL8 0 x0080
#define WM8350_AUXADC_SEL7 0 x0040
#define WM8350_AUXADC_SEL6 0 x0020
#define WM8350_AUXADC_SEL5 0 x0010
#define WM8350_AUXADC_SEL4 0 x0008
#define WM8350_AUXADC_SEL3 0 x0004
#define WM8350_AUXADC_SEL2 0 x0002
#define WM8350_AUXADC_SEL1 0 x0001
/*
* R145 ( 0 x91 ) - Digitiser Control ( 2 )
*/
#define WM8350_AUXADC_MASKMODE_MASK 0 x3000
#define WM8350_AUXADC_CRATE_MASK 0 x0700
#define WM8350_AUXADC_CAL 0 x0004
#define WM8350_AUX_RBMODE 0 x0002
#define WM8350_AUXADC_WAIT 0 x0001
/*
* R152 ( 0 x98 ) - AUX1 Readback
*/
#define WM8350_AUXADC_SCALE1_MASK 0 x6000
#define WM8350_AUXADC_REF1 0 x1000
#define WM8350_AUXADC_DATA1_MASK 0 x0FFF
/*
* R153 ( 0 x99 ) - AUX2 Readback
*/
#define WM8350_AUXADC_SCALE2_MASK 0 x6000
#define WM8350_AUXADC_REF2 0 x1000
#define WM8350_AUXADC_DATA2_MASK 0 x0FFF
/*
* R154 ( 0 x9A ) - AUX3 Readback
*/
#define WM8350_AUXADC_SCALE3_MASK 0 x6000
#define WM8350_AUXADC_REF3 0 x1000
#define WM8350_AUXADC_DATA3_MASK 0 x0FFF
/*
* R155 ( 0 x9B ) - AUX4 Readback
*/
#define WM8350_AUXADC_SCALE4_MASK 0 x6000
#define WM8350_AUXADC_REF4 0 x1000
#define WM8350_AUXADC_DATA4_MASK 0 x0FFF
/*
* R156 ( 0 x9C ) - USB Voltage Readback
*/
#define WM8350_AUXADC_DATA_USB_MASK 0 x0FFF
/*
* R157 ( 0 x9D ) - LINE Voltage Readback
*/
#define WM8350_AUXADC_DATA_LINE_MASK 0 x0FFF
/*
* R158 ( 0 x9E ) - BATT Voltage Readback
*/
#define WM8350_AUXADC_DATA_BATT_MASK 0 x0FFF
/*
* R159 ( 0 x9F ) - Chip Temp Readback
*/
#define WM8350_AUXADC_DATA_CHIPTEMP_MASK 0 x0FFF
/*
* R163 ( 0 xA3 ) - Generic Comparator Control
*/
#define WM8350_DCMP4_ENA 0 x0008
#define WM8350_DCMP3_ENA 0 x0004
#define WM8350_DCMP2_ENA 0 x0002
#define WM8350_DCMP1_ENA 0 x0001
/*
* R164 ( 0 xA4 ) - Generic comparator 1
*/
#define WM8350_DCMP1_SRCSEL_MASK 0 xE000
#define WM8350_DCMP1_GT 0 x1000
#define WM8350_DCMP1_THR_MASK 0 x0FFF
/*
* R165 ( 0 xA5 ) - Generic comparator 2
*/
#define WM8350_DCMP2_SRCSEL_MASK 0 xE000
#define WM8350_DCMP2_GT 0 x1000
#define WM8350_DCMP2_THR_MASK 0 x0FFF
/*
* R166 ( 0 xA6 ) - Generic comparator 3
*/
#define WM8350_DCMP3_SRCSEL_MASK 0 xE000
#define WM8350_DCMP3_GT 0 x1000
#define WM8350_DCMP3_THR_MASK 0 x0FFF
/*
* R167 ( 0 xA7 ) - Generic comparator 4
*/
#define WM8350_DCMP4_SRCSEL_MASK 0 xE000
#define WM8350_DCMP4_GT 0 x1000
#define WM8350_DCMP4_THR_MASK 0 x0FFF
/*
* Interrupts .
*/
#define WM8350_IRQ_AUXADC_DATARDY 16
#define WM8350_IRQ_AUXADC_DCOMP4 17
#define WM8350_IRQ_AUXADC_DCOMP3 18
#define WM8350_IRQ_AUXADC_DCOMP2 19
#define WM8350_IRQ_AUXADC_DCOMP1 20
#define WM8350_IRQ_SYS_HYST_COMP_FAIL 21
#define WM8350_IRQ_SYS_CHIP_GT115 22
#define WM8350_IRQ_SYS_CHIP_GT140 23
/*
* USB / 2 , LINE & BATT = ( ( VRTC * 2 ) / 4095 ) ) * 10 e6 uV
* Where VRTC = 2 . 7 V
*/
#define WM8350_AUX_COEFF 1319
#define WM8350_AUXADC_AUX1 0
#define WM8350_AUXADC_AUX2 1
#define WM8350_AUXADC_AUX3 2
#define WM8350_AUXADC_AUX4 3
#define WM8350_AUXADC_USB 4
#define WM8350_AUXADC_LINE 5
#define WM8350_AUXADC_BATT 6
#define WM8350_AUXADC_TEMP 7
struct wm8350;
/*
* AUX ADC Readback
*/
int wm8350_read_auxadc(struct wm8350 *wm8350, int channel, int scale,
int vref);
#endif
Messung V0.5 in Prozent C=90 H=100 G=95
¤ Dauer der Verarbeitung: 0.8 Sekunden
(vorverarbeitet am 2026-09-30)
¤
*© Formatika GbR, Deutschland