1# $NetBSD: files.i2c,v 1.101 2019/10/27 20:11:13 jmcneill 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 126defflag opt_dsrtc.h DSRTC_YEAR_START_2K 127 128# Xicor X1226 Real Time Clock 129device xrtc 130attach xrtc at iic 131file dev/i2c/x1226.c xrtc 132 133# Analog Devices dBCool family of thermal monitors / fan controllers 134device dbcool: sysmon_envsys 135attach dbcool at iic 136file dev/i2c/dbcool.c dbcool 137 138# RICOH RS5C372[AB] Real Time Clock 139device rs5c372rtc 140attach rs5c372rtc at iic 141file dev/i2c/rs5c372.c rs5c372rtc 142 143# RICOH R2025S/D Real Time Clock 144device r2025rtc 145attach r2025rtc at iic 146file dev/i2c/r2025.c r2025rtc 147 148# VESA Display Data Channel 2 149device ddc 150define ddc_read_edid 151attach ddc at iic 152file dev/i2c/ddc.c ddc | ddc_read_edid 153 154# SGS TDA7433 audio mixer 155device sgsmix 156attach sgsmix at iic 157file dev/i2c/sgsmix.c sgsmix needs-flag 158defflag opt_sgsmix.h SGSMIX_DEBUG 159 160# Memory Serial Presence Detect 161attach spdmem at iic with spdmem_iic 162file dev/i2c/spdmem_i2c.c spdmem_iic 163 164# Memory Temp Sensor 165device sdtemp: sysmon_envsys 166attach sdtemp at iic 167file dev/i2c/sdtemp.c sdtemp 168 169# DS1672 Real Time Clock 170device ds1672rtc 171attach ds1672rtc at iic 172file dev/i2c/ds1672.c ds1672rtc 173 174# ADM1021 175device admtemp: sysmon_envsys 176attach admtemp at iic 177file dev/i2c/adm1021.c admtemp 178 179# ADM1026 hardware monitor 180device adm1026hm: sysmon_envsys 181attach adm1026hm at iic 182file dev/i2c/adm1026.c adm1026hm 183 184# SMSC LPC47M192 hardware monitor 185device smscmon: sysmon_envsys 186attach smscmon at iic 187file dev/i2c/smscmon.c smscmon 188 189# G760a FAN controller 190device g760a: sysmon_envsys 191attach g760a at iic 192file dev/i2c/g760a.c g760a 193 194# IBM Hawk Integrated Systems Management Processor 195device ibmhawk: sysmon_envsys 196attach ibmhawk at iic 197file dev/i2c/ibmhawk.c ibmhawk 198 199# TI TPS65950 OMAP Power Management and System Companion Device 200device tps65950pm: sysmon_wdog 201attach tps65950pm at iic 202file dev/i2c/tps65950.c tps65950pm 203 204# TI TPS65217 205device tps65217pmic { }: sysmon_envsys 206device tps65217reg: tps65217pmic 207attach tps65217pmic at iic 208attach tps65217reg at tps65217pmic 209file dev/i2c/tps65217pmic.c tps65217pmic needs-flag 210 211# Microchip MCP980x 212device mcp980x: sysmon_envsys 213attach mcp980x at iic 214file dev/i2c/mcp980x.c mcp980x 215 216# Nuvoton W83795G/ADG Hardware Monitor 217device w83795g: gpiobus, sysmon_envsys, sysmon_wdog 218attach w83795g at iic 219file dev/i2c/w83795g.c w83795g 220 221# Freescale MPL115A2 222device mpl115a: sysmon_envsys 223attach mpl115a at iic 224file dev/i2c/mpl115a.c mpl115a 225 226# AXP20x Power Management Unit 227device axp20x { }: sysmon_envsys 228device axp20xreg: axp20x 229attach axp20x at iic 230attach axp20xreg at axp20x 231file dev/i2c/axp20x.c axp20x needs-flag 232 233# AXP22x Power Management Unit 234device axp22x: sysmon_envsys 235attach axp22x at iic 236file dev/i2c/axp22x.c axp22x 237 238# X-Powers AXP Power Management IC 239device axppmic { }: sysmon_envsys, sysmon_taskq 240device axpreg: axppmic 241attach axppmic at iic 242attach axpreg at axppmic 243file dev/i2c/axppmic.c axppmic 244 245# AXP809 Power Management Unit 246device axp809pm 247attach axp809pm at iic 248file dev/i2c/axp809.c axp809pm needs-flag 249 250# AC100 integrated audio codec and RTC 251device ac100ic 252attach ac100ic at iic 253file dev/i2c/ac100.c ac100ic needs-flag 254 255# ACT8846 Power Management Unit 256device act8846pm 257attach act8846pm at iic 258file dev/i2c/act8846.c act8846pm needs-flag 259 260# Texas Instruments TMP451 Temperature Sensor 261device titemp: sysmon_envsys 262attach titemp at iic 263file dev/i2c/titemp.c titemp 264 265# AMS AS3722 Power Management IC 266device as3722pmic { }: sysmon_wdog 267device as3722reg: as3722pmic 268attach as3722pmic at iic 269attach as3722reg at as3722pmic 270file dev/i2c/as3722.c as3722pmic needs-flag 271 272# Texas Instruments TCA8418 Keypad Scan IC 273device tcakp: wskbddev, linux_keymap 274attach tcakp at iic 275file dev/i2c/tcakp.c tcakp 276 277# MAXIM MAX77620 Power Management IC 278device max77620pmic 279attach max77620pmic at iic 280file dev/i2c/max77620.c max77620pmic 281 282# Texas Instruments TCA9539 I/O Expander 283device tcagpio 284attach tcagpio at iic 285file dev/i2c/tcagpio.c tcagpio 286 287# Silicon Lab SI7013/SI7020/SI7021 Temperature and Humidity sensor 288device si70xxtemp 289attach si70xxtemp at iic 290file dev/i2c/si70xx.c si70xxtemp 291 292# Aosong AM2315 Temperature and Humidity sensor 293device am2315temp 294attach am2315temp at iic 295file dev/i2c/am2315.c am2315temp 296 297# Silergy SY8106A regulator 298device sy8106a 299attach sy8106a at iic 300file dev/i2c/sy8106a.c sy8106a 301 302# Maxim DS1631 High-Precision Digital Thermometer and Thermostat 303device dstemp: sysmon_envsys 304attach dstemp at iic 305file dev/i2c/dstemp.c dstemp 306 307# EM3027 Real Time Clock and Temperature Sensor 308device em3027rtc: sysmon_envsys 309attach em3027rtc at iic 310file dev/i2c/em3027.c em3027rtc 311 312# Apple Fan Control Unit found in some G5 313device fcu: sysmon_envsys 314attach fcu at iic 315file dev/i2c/fcu.c fcu needs-flag 316 317# Analog Devices AD7417 thermometer and ADC 318device adadc: sysmon_envsys 319attach adadc at iic 320file dev/i2c/adadc.c adadc 321 322# HID over i2c 323# HID "bus" 324define ihidbus {[ reportid = -1 ]} 325 326# HID root device for multiple report IDs 327device ihidev: hid, ihidbus 328attach ihidev at iic 329file dev/i2c/ihidev.c ihidev 330 331#HID mice 332device ims: hid, hidms, wsmousedev 333attach ims at ihidbus 334file dev/i2c/ims.c ims 335 336#HID multitouch 337device imt: hid, hidmt, wsmousedev 338attach imt at ihidbus 339file dev/i2c/imt.c imt 340 341# Taos TSL256x ambient light sensor 342device tsllux: sysmon_envsys 343attach tsllux at iic 344file dev/i2c/tsl256x.c tsllux 345 346# Philips/NXP TEA5767 347device tea5767radio : radiodev 348attach tea5767radio at iic 349file dev/i2c/tea5767.c tea5767radio 350 351# Fairchild FAN53555 / Silergy SY82x regulator 352device fan53555reg 353attach fan53555reg at iic 354file dev/i2c/fan53555.c fan53555reg 355 356# Rockchip Power Management IC 357device rkpmic { } 358device rkreg: rkpmic 359attach rkpmic at iic 360attach rkreg at rkpmic 361file dev/i2c/rkpmic.c rkpmic 362 363# SSD1306 or SH1106 OLED/PLED display 364attach ssdfb at iic with ssdfb_iic 365file dev/i2c/ssdfb_i2c.c ssdfb_iic 366 367# Analogix ANX6345 eDP transmitter 368device anxedp: edid, videomode, drmkms, drmkms_i2c 369attach anxedp at iic 370file dev/i2c/anxedp.c anxedp 371 372# NXP PCA9685 16-channel, 12-bit PWM Fm+ LED controller 373device pcapwm: pwm 374attach pcapwm at iic 375file dev/i2c/pca9685.c pcapwm 376