1# $NetBSD: files.i2c,v 1.93 2018/06/26 06:34:55 thorpej Exp $ 2 3obsolete defflag opt_i2cbus.h I2C_SCAN 4define i2cbus { } 5define i2cexec 6 7device iic { [addr = -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# X-Powers AXP Power Management IC 236device axppmic { }: sysmon_envsys, sysmon_taskq 237device axpreg: axppmic 238attach axppmic at iic 239attach axpreg at axppmic 240file dev/i2c/axppmic.c axppmic 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 338# Taos TSL256x ambient light sensor 339device tsllux: sysmon_envsys 340attach tsllux at iic 341file dev/i2c/tsl256x.c tsllux 342