files.i2c revision 1.89
1#	$NetBSD: files.i2c,v 1.89 2018/05/03 02:10:17 jmcneill Exp $
2
3obsolete defflag	opt_i2cbus.h		I2C_SCAN
4define	i2cbus { }
5define	i2cexec
6
7device	iic { [addr = -1], [size = -1] } : i2c_bitbang
8attach	iic at i2cbus
9file	dev/i2c/i2c.c				iic
10file	dev/i2c/i2c_exec.c			iic | i2cbus | i2cexec
11file	dev/i2c/i2c_subr.c			i2cbus
12defparam opt_i2c.h				I2C_MAX_ADDR
13
14# Common module for bit-bang'ing an I2C bus
15define	i2c_bitbang
16file	dev/i2c/i2c_bitbang.c			i2c_bitbang
17
18# Auvitek AU8522 decoder
19define	au8522: i2cexec
20file	dev/i2c/au8522.c			au8522
21
22# LG DT3303 decoder
23define	lg3303: i2cexec, dtv_math
24file	dev/i2c/lg3303.c			lg3303
25
26# Xceive XC3028 tuner
27define	xc3028: i2cexec, firmload
28file	dev/i2c/xc3028.c			xc3028
29
30# Xceive XC5000 tuner
31define	xc5k: i2cexec, firmload
32file	dev/i2c/xc5k.c				xc5k
33
34# Generic PLL-based tuners
35define	tvpll: i2cexec
36file	dev/i2c/tvpll.c				tvpll
37file	dev/i2c/tvpll_tuners.c			tvpll
38
39# Nextwave NXT200x demodulator
40define	nxt2k: i2cexec, firmload
41file	dev/i2c/nxt2k.c				nxt2k
42
43# Microtune MT2131 silicon tuner
44define	mt2131: i2cexec
45file	dev/i2c/mt2131.c			mt2131
46
47# Conexant/Samsung CX24227/S5H1409 demodulator
48define	cx24227: i2cexec
49file	dev/i2c/cx24227.c			cx24227
50
51#
52# I2C master devices
53#
54define	motoi2c
55file	dev/i2c/motoi2c.c			motoi2c
56define	mvi2c
57file	dev/i2c/gttwsi_core.c			mvi2c
58defflag opt_gttwsi.h				GTTWSI_ALLWINNER
59
60#
61# I2C client devices
62#
63
64# M41T00 Real Time Clock
65device	m41trtc
66attach	m41trtc at iic
67file	dev/i2c/m41t00.c			m41trtc
68
69# M41ST84 Real Time Clock
70device	strtc
71attach	strtc at iic
72file	dev/i2c/m41st84.c			strtc
73defflag	opt_strtc.h				STRTC_NO_USERRAM
74						STRTC_NO_WATCHDOG
75
76# MAX6900 Real Time Clock
77device	maxrtc
78attach	maxrtc at iic
79file	dev/i2c/max6900.c			maxrtc
80
81# NXP/Philips PCF8563 Real Time Clock
82device	pcf8563rtc
83attach	pcf8563rtc at iic
84file	dev/i2c/pcf8563.c			pcf8563rtc
85
86# Philips PCF8583 Real Time Clock
87device	pcfrtc
88attach	pcfrtc at iic
89file	dev/i2c/pcf8583.c			pcfrtc
90
91# Seiko Instruments S-xx390A Real Time Clock
92device	s390rtc
93attach	s390rtc at iic
94file	dev/i2c/s390.c				s390rtc
95
96# Atmel/Microchip 24Cxx Serial EEPROM
97define	at24cxx_eeprom
98device	seeprom
99attach	seeprom at iic
100file	dev/i2c/at24cxx.c			seeprom | at24cxx_eeprom
101						    needs-flag
102
103# National Semiconductor LM75 temperature sensor
104device	lmtemp: sysmon_envsys
105attach	lmtemp at iic
106file	dev/i2c/lm75.c				lmtemp
107
108# IST-AG Humidity and Teperature sensor (P14)
109device	hythygtemp: sysmon_envsys
110attach	hythygtemp at iic
111file	dev/i2c/hytp14.c			hythygtemp
112
113# National Semiconductor LM78 temp sensor/fan controller
114attach	lm at iic with lm_iic
115file	dev/i2c/lm_i2c.c			lm_iic
116
117# National Semiconductor LM87 and clones system hardware monitor
118device	lmenv: sysmon_envsys
119attach	lmenv at iic
120file	dev/i2c/lm87.c				lmenv
121
122# Dallas DS1307 Real Time Clock
123device	dsrtc: sysmon_envsys
124attach	dsrtc at iic
125file	dev/i2c/ds1307.c			dsrtc
126
127# Xicor X1226 Real Time Clock
128device	xrtc
129attach	xrtc at iic
130file	dev/i2c/x1226.c				xrtc
131
132# Analog Devices dBCool family of thermal monitors / fan controllers
133device dbcool: sysmon_envsys
134attach dbcool at iic
135file dev/i2c/dbcool.c			dbcool
136
137# RICOH RS5C372[AB] Real Time Clock
138device	rs5c372rtc
139attach	rs5c372rtc at iic
140file	dev/i2c/rs5c372.c		rs5c372rtc
141
142# RICOH R2025S/D Real Time Clock
143device	r2025rtc
144attach	r2025rtc at iic
145file	dev/i2c/r2025.c			r2025rtc
146
147# VESA Display Data Channel 2
148device	ddc
149define	ddc_read_edid
150attach	ddc at iic
151file	dev/i2c/ddc.c			ddc | ddc_read_edid
152
153# SGS TDA7433 audio mixer
154device	sgsmix
155attach	sgsmix at iic
156file	dev/i2c/sgsmix.c		sgsmix needs-flag
157defflag	opt_sgsmix.h	SGSMIX_DEBUG
158
159# Memory Serial Presence Detect
160attach	spdmem at iic with spdmem_iic
161file	dev/i2c/spdmem_i2c.c		spdmem_iic
162
163# Memory Temp Sensor
164device	sdtemp: sysmon_envsys
165attach	sdtemp at iic
166file	dev/i2c/sdtemp.c		sdtemp
167
168# DS1672 Real Time Clock
169device	ds1672rtc
170attach	ds1672rtc at iic
171file	dev/i2c/ds1672.c		ds1672rtc
172
173# ADM1021
174device	admtemp: sysmon_envsys
175attach	admtemp at iic
176file	dev/i2c/adm1021.c		admtemp
177
178# ADM1026 hardware monitor
179device	adm1026hm: sysmon_envsys
180attach	adm1026hm at iic
181file	dev/i2c/adm1026.c		adm1026hm
182
183# SMSC LPC47M192 hardware monitor
184device	smscmon: sysmon_envsys
185attach	smscmon at iic
186file	dev/i2c/smscmon.c		smscmon
187
188# G760a FAN controller
189device	g760a: sysmon_envsys
190attach	g760a at iic
191file	dev/i2c/g760a.c			g760a
192
193# IBM Hawk Integrated Systems Management Processor
194device	ibmhawk: sysmon_envsys
195attach	ibmhawk at iic
196file	dev/i2c/ibmhawk.c		ibmhawk
197
198# TI TPS65950 OMAP Power Management and System Companion Device
199device	tps65950pm: sysmon_wdog
200attach	tps65950pm at iic
201file	dev/i2c/tps65950.c		tps65950pm
202
203# TI TPS65217
204device	tps65217pmic: sysmon_envsys
205attach	tps65217pmic at iic
206file	dev/i2c/tps65217pmic.c 		tps65217pmic	needs-flag
207
208# Microchip MCP980x
209device	mcp980x: sysmon_envsys
210attach	mcp980x at iic
211file	dev/i2c/mcp980x.c 		mcp980x
212
213# Nuvoton W83795G/ADG Hardware Monitor
214device	w83795g: gpiobus, sysmon_envsys, sysmon_wdog
215attach	w83795g at iic
216file	dev/i2c/w83795g.c 		w83795g
217
218# Freescale MPL115A2
219device  mpl115a: sysmon_envsys
220attach  mpl115a at iic
221file    dev/i2c/mpl115a.c		mpl115a
222
223# AXP20x Power Management Unit
224device	axp20x { }: sysmon_envsys
225device	axp20xreg: axp20x
226attach	axp20x at iic
227attach	axp20xreg at axp20x
228file	dev/i2c/axp20x.c			axp20x		needs-flag
229
230# AXP22x Power Management Unit
231device	axp22x: sysmon_envsys
232attach	axp22x at iic
233file	dev/i2c/axp22x.c			axp22x
234
235# AXP806 Power Management Unit
236device	axp806pmic { }: sysmon_taskq
237device	axp806reg: axp806pmic
238attach	axp806pmic at iic
239attach	axp806reg at axp806pmic
240file	dev/i2c/axp806.c			axp806pmic	needs-flag
241
242# AXP809 Power Management Unit
243device	axp809pm
244attach	axp809pm at iic
245file	dev/i2c/axp809.c			axp809pm	needs-flag
246
247# AC100 integrated audio codec and RTC
248device	ac100ic
249attach	ac100ic at iic
250file	dev/i2c/ac100.c				ac100ic		needs-flag
251
252# ACT8846 Power Management Unit
253device	act8846pm
254attach	act8846pm at iic
255file	dev/i2c/act8846.c			act8846pm	needs-flag
256
257# Texas Instruments TMP451 Temperature Sensor
258device	titemp: sysmon_envsys
259attach	titemp at iic
260file	dev/i2c/titemp.c			titemp
261
262# AMS AS3722 Power Management IC
263device	as3722pmic { }: sysmon_wdog
264device	as3722reg: as3722pmic
265attach	as3722pmic at iic
266attach	as3722reg at as3722pmic
267file	dev/i2c/as3722.c			as3722pmic	needs-flag
268
269# Texas Instruments TCA8418 Keypad Scan IC
270device	tcakp: wskbddev, linux_keymap
271attach	tcakp at iic
272file	dev/i2c/tcakp.c				tcakp
273
274# MAXIM MAX77620 Power Management IC
275device	max77620pmic
276attach	max77620pmic at iic
277file	dev/i2c/max77620.c			max77620pmic
278
279# Texas Instruments TCA9539 I/O Expander
280device	tcagpio
281attach	tcagpio at iic
282file	dev/i2c/tcagpio.c			tcagpio
283
284# Silicon Lab SI7013/SI7020/SI7021 Temperature and Humidity sensor
285device si70xxtemp
286attach si70xxtemp at iic
287file dev/i2c/si70xx.c				si70xxtemp
288
289# Aosong AM2315 Temperature and Humidity sensor
290device am2315temp
291attach am2315temp at iic
292file dev/i2c/am2315.c				am2315temp
293
294# Silergy SY8106A regulator
295device	sy8106a
296attach	sy8106a at iic
297file	dev/i2c/sy8106a.c			sy8106a
298
299# Maxim DS1631 High-Precision Digital Thermometer and Thermostat
300device	dstemp: sysmon_envsys
301attach	dstemp at iic
302file	dev/i2c/dstemp.c			dstemp
303
304# EM3027 Real Time Clock and Temperature Sensor
305device	em3027rtc: sysmon_envsys
306attach	em3027rtc at iic
307file	dev/i2c/em3027.c			em3027rtc
308
309# Apple Fan Control Unit found in some G5
310device	fcu: sysmon_envsys
311attach	fcu at iic
312file	dev/i2c/fcu.c				fcu	needs-flag
313
314# Analog Devices AD7417 thermometer and ADC
315device	adadc: sysmon_envsys
316attach	adadc at iic
317file	dev/i2c/adadc.c				adadc
318
319# HID over i2c
320# HID "bus"
321define  ihidbus {[ reportid = -1 ]}
322
323# HID root device for multiple report IDs
324device  ihidev: hid, ihidbus
325attach  ihidev at iic
326file    dev/i2c/ihidev.c			ihidev
327
328#HID mice
329device	ims: hid, hidms, wsmousedev
330attach	ims at ihidbus
331file	dev/i2c/ims.c				ims
332
333#HID multitouch
334device	imt: hid, hidmt, wsmousedev
335attach	imt at ihidbus
336file	dev/i2c/imt.c				imt
337