1# $NetBSD: files.i2c,v 1.104 2019/11/03 22:57:52 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 TPS65217 200device tps65217pmic { }: sysmon_envsys 201device tps65217reg: tps65217pmic 202attach tps65217pmic at iic 203attach tps65217reg at tps65217pmic 204file dev/i2c/tps65217pmic.c tps65217pmic needs-flag 205 206# Microchip MCP980x 207device mcp980x: sysmon_envsys 208attach mcp980x at iic 209file dev/i2c/mcp980x.c mcp980x 210 211# Nuvoton W83795G/ADG Hardware Monitor 212device w83795g: gpiobus, sysmon_envsys, sysmon_wdog 213attach w83795g at iic 214file dev/i2c/w83795g.c w83795g 215 216# Freescale MPL115A2 217device mpl115a: sysmon_envsys 218attach mpl115a at iic 219file dev/i2c/mpl115a.c mpl115a 220 221# AXP20x Power Management Unit 222device axp20x { }: sysmon_envsys 223device axp20xreg: axp20x 224attach axp20x at iic 225attach axp20xreg at axp20x 226file dev/i2c/axp20x.c axp20x needs-flag 227 228# AXP22x Power Management Unit 229device axp22x: sysmon_envsys 230attach axp22x at iic 231file dev/i2c/axp22x.c axp22x 232 233# X-Powers AXP Power Management IC 234device axppmic { }: sysmon_envsys, sysmon_taskq 235device axpreg: axppmic 236attach axppmic at iic 237attach axpreg at axppmic 238file dev/i2c/axppmic.c axppmic 239 240# AXP809 Power Management Unit 241device axp809pm 242attach axp809pm at iic 243file dev/i2c/axp809.c axp809pm needs-flag 244 245# AC100 integrated audio codec and RTC 246device ac100ic 247attach ac100ic at iic 248file dev/i2c/ac100.c ac100ic needs-flag 249 250# ACT8846 Power Management Unit 251device act8846pm 252attach act8846pm at iic 253file dev/i2c/act8846.c act8846pm needs-flag 254 255# Texas Instruments TMP451 Temperature Sensor 256device titemp: sysmon_envsys 257attach titemp at iic 258file dev/i2c/titemp.c titemp 259 260# AMS AS3722 Power Management IC 261device as3722pmic { }: sysmon_wdog 262device as3722reg: as3722pmic 263attach as3722pmic at iic 264attach as3722reg at as3722pmic 265file dev/i2c/as3722.c as3722pmic needs-flag 266 267# Texas Instruments TCA8418 Keypad Scan IC 268device tcakp: wskbddev, linux_keymap 269attach tcakp at iic 270file dev/i2c/tcakp.c tcakp 271 272# MAXIM MAX77620 Power Management IC 273device max77620pmic 274attach max77620pmic at iic 275file dev/i2c/max77620.c max77620pmic 276 277# Texas Instruments TCA9539 I/O Expander 278device tcagpio 279attach tcagpio at iic 280file dev/i2c/tcagpio.c tcagpio 281 282# Silicon Lab SI7013/SI7020/SI7021 Temperature and Humidity sensor 283device si70xxtemp 284attach si70xxtemp at iic 285file dev/i2c/si70xx.c si70xxtemp 286 287# Aosong AM2315 Temperature and Humidity sensor 288device am2315temp 289attach am2315temp at iic 290file dev/i2c/am2315.c am2315temp 291 292# Silergy SY8106A regulator 293device sy8106a 294attach sy8106a at iic 295file dev/i2c/sy8106a.c sy8106a 296 297# Maxim DS1631 High-Precision Digital Thermometer and Thermostat 298device dstemp: sysmon_envsys 299attach dstemp at iic 300file dev/i2c/dstemp.c dstemp 301 302# EM3027 Real Time Clock and Temperature Sensor 303device em3027rtc: sysmon_envsys 304attach em3027rtc at iic 305file dev/i2c/em3027.c em3027rtc 306 307# Apple Fan Control Unit found in some G5 308device fcu: sysmon_envsys 309attach fcu at iic 310file dev/i2c/fcu.c fcu needs-flag 311 312# Analog Devices AD7417 thermometer and ADC 313device adadc: sysmon_envsys 314attach adadc at iic 315file dev/i2c/adadc.c adadc 316 317# HID over i2c 318# HID "bus" 319define ihidbus {[ reportid = -1 ]} 320 321# HID root device for multiple report IDs 322device ihidev: hid, ihidbus 323attach ihidev at iic 324file dev/i2c/ihidev.c ihidev 325 326#HID mice 327device ims: hid, hidms, wsmousedev 328attach ims at ihidbus 329file dev/i2c/ims.c ims 330 331#HID multitouch 332device imt: hid, hidmt, wsmousedev 333attach imt at ihidbus 334file dev/i2c/imt.c imt 335 336# Taos TSL256x ambient light sensor 337device tsllux: sysmon_envsys 338attach tsllux at iic 339file dev/i2c/tsl256x.c tsllux 340 341# Philips/NXP TEA5767 342device tea5767radio : radiodev 343attach tea5767radio at iic 344file dev/i2c/tea5767.c tea5767radio 345 346# Fairchild FAN53555 / Silergy SY82x regulator 347device fan53555reg 348attach fan53555reg at iic 349file dev/i2c/fan53555.c fan53555reg 350 351# Rockchip Power Management IC 352device rkpmic { } 353device rkreg: rkpmic 354attach rkpmic at iic 355attach rkreg at rkpmic 356file dev/i2c/rkpmic.c rkpmic 357 358# SSD1306 or SH1106 OLED/PLED display 359attach ssdfb at iic with ssdfb_iic 360file dev/i2c/ssdfb_i2c.c ssdfb_iic 361 362# Analogix ANX6345 eDP transmitter 363device anxedp: edid, videomode, drmkms, drmkms_i2c 364attach anxedp at iic 365file dev/i2c/anxedp.c anxedp 366 367# NXP PCA9685 16-channel, 12-bit PWM Fm+ LED controller 368device pcapwm: pwm 369attach pcapwm at iic 370file dev/i2c/pca9685.c pcapwm 371 372# TI TWL4030 Power Management IC 373device twl 374attach twl at iic 375file dev/i2c/twl4030.c twl 376 377# NXP TDA19988 HDMI encoder 378device tdahdmi: edid, videomode, drmkms, drmkms_i2c 379attach tdahdmi at iic 380file dev/i2c/tda19988.c tdahdmi 381