files.i2c revision 1.111
11.111Smacallan# $NetBSD: files.i2c,v 1.111 2020/04/24 12:38:31 macallan Exp $ 21.1Sthorpej 31.43Sjmcneillobsolete defflag opt_i2cbus.h I2C_SCAN 41.1Sthorpejdefine i2cbus { } 51.1Sthorpejdefine i2cexec 61.1Sthorpej 71.93Sthorpejdevice iic { [addr = -1] } : i2c_bitbang 81.1Sthorpejattach iic at i2cbus 91.44Sjmcneillfile dev/i2c/i2c.c iic 101.1Sthorpejfile dev/i2c/i2c_exec.c iic | i2cbus | i2cexec 111.70Spgoyettefile dev/i2c/i2c_subr.c i2cbus 121.59Sjmcneilldefparam opt_i2c.h I2C_MAX_ADDR 131.1Sthorpej 141.1Sthorpej# Common module for bit-bang'ing an I2C bus 151.1Sthorpejdefine i2c_bitbang 161.1Sthorpejfile dev/i2c/i2c_bitbang.c i2c_bitbang 171.1Sthorpej 181.30Sjmcneill# Auvitek AU8522 decoder 191.30Sjmcneilldefine au8522: i2cexec 201.30Sjmcneillfile dev/i2c/au8522.c au8522 211.30Sjmcneill 221.37Sjmcneill# LG DT3303 decoder 231.42Sjmcneilldefine lg3303: i2cexec, dtv_math 241.37Sjmcneillfile dev/i2c/lg3303.c lg3303 251.37Sjmcneill 261.37Sjmcneill# Xceive XC3028 tuner 271.42Sjmcneilldefine xc3028: i2cexec, firmload 281.37Sjmcneillfile dev/i2c/xc3028.c xc3028 291.37Sjmcneill 301.30Sjmcneill# Xceive XC5000 tuner 311.37Sjmcneilldefine xc5k: i2cexec, firmload 321.30Sjmcneillfile dev/i2c/xc5k.c xc5k 331.30Sjmcneill 341.35Sjakllsch# Generic PLL-based tuners 351.35Sjakllschdefine tvpll: i2cexec 361.35Sjakllschfile dev/i2c/tvpll.c tvpll 371.35Sjakllschfile dev/i2c/tvpll_tuners.c tvpll 381.35Sjakllsch 391.36Sjakllsch# Nextwave NXT200x demodulator 401.38Sjmcneilldefine nxt2k: i2cexec, firmload 411.36Sjakllschfile dev/i2c/nxt2k.c nxt2k 421.36Sjakllsch 431.39Sjakllsch# Microtune MT2131 silicon tuner 441.39Sjakllschdefine mt2131: i2cexec 451.39Sjakllschfile dev/i2c/mt2131.c mt2131 461.39Sjakllsch 471.40Sjakllsch# Conexant/Samsung CX24227/S5H1409 demodulator 481.40Sjakllschdefine cx24227: i2cexec 491.40Sjakllschfile dev/i2c/cx24227.c cx24227 501.40Sjakllsch 511.1Sthorpej# 521.31Smatt# I2C master devices 531.31Smatt# 541.31Smattdefine motoi2c 551.31Smattfile dev/i2c/motoi2c.c motoi2c 561.51Smattdefine mvi2c 571.51Smattfile dev/i2c/gttwsi_core.c mvi2c 581.31Smatt 591.31Smatt# 601.1Sthorpej# I2C client devices 611.1Sthorpej# 621.1Sthorpej 631.1Sthorpej# M41T00 Real Time Clock 641.3Sbriggsdevice m41trtc 651.3Sbriggsattach m41trtc at iic 661.3Sbriggsfile dev/i2c/m41t00.c m41trtc 671.1Sthorpej 681.1Sthorpej# M41ST84 Real Time Clock 691.1Sthorpejdevice strtc 701.1Sthorpejattach strtc at iic 711.1Sthorpejfile dev/i2c/m41st84.c strtc 721.1Sthorpej 731.1Sthorpej# MAX6900 Real Time Clock 741.1Sthorpejdevice maxrtc 751.1Sthorpejattach maxrtc at iic 761.1Sthorpejfile dev/i2c/max6900.c maxrtc 771.1Sthorpej 781.32Sjakllsch# NXP/Philips PCF8563 Real Time Clock 791.32Sjakllschdevice pcf8563rtc 801.32Sjakllschattach pcf8563rtc at iic 811.32Sjakllschfile dev/i2c/pcf8563.c pcf8563rtc 821.32Sjakllsch 831.1Sthorpej# Philips PCF8583 Real Time Clock 841.1Sthorpejdevice pcfrtc 851.1Sthorpejattach pcfrtc at iic 861.1Sthorpejfile dev/i2c/pcf8583.c pcfrtc 871.1Sthorpej 881.34Sphx# Seiko Instruments S-xx390A Real Time Clock 891.34Sphxdevice s390rtc 901.34Sphxattach s390rtc at iic 911.34Sphxfile dev/i2c/s390.c s390rtc 921.34Sphx 931.1Sthorpej# Atmel/Microchip 24Cxx Serial EEPROM 941.1Sthorpejdefine at24cxx_eeprom 951.1Sthorpejdevice seeprom 961.1Sthorpejattach seeprom at iic 971.1Sthorpejfile dev/i2c/at24cxx.c seeprom | at24cxx_eeprom 981.1Sthorpej needs-flag 991.1Sthorpej 1001.1Sthorpej# National Semiconductor LM75 temperature sensor 1011.1Sthorpejdevice lmtemp: sysmon_envsys 1021.1Sthorpejattach lmtemp at iic 1031.1Sthorpejfile dev/i2c/lm75.c lmtemp 1041.1Sthorpej 1051.54Skardel# IST-AG Humidity and Teperature sensor (P14) 1061.54Skardeldevice hythygtemp: sysmon_envsys 1071.54Skardelattach hythygtemp at iic 1081.54Skardelfile dev/i2c/hytp14.c hythygtemp 1091.54Skardel 1101.21Spgoyette# National Semiconductor LM78 temp sensor/fan controller 1111.21Spgoyetteattach lm at iic with lm_iic 1121.21Spgoyettefile dev/i2c/lm_i2c.c lm_iic 1131.21Spgoyette 1141.53Sjdc# National Semiconductor LM87 and clones system hardware monitor 1151.53Sjdcdevice lmenv: sysmon_envsys 1161.53Sjdcattach lmenv at iic 1171.53Sjdcfile dev/i2c/lm87.c lmenv 1181.53Sjdc 1191.1Sthorpej# Dallas DS1307 Real Time Clock 1201.58Suebayasidevice dsrtc: sysmon_envsys 1211.1Sthorpejattach dsrtc at iic 1221.1Sthorpejfile dev/i2c/ds1307.c dsrtc 1231.97Smacallandefflag opt_dsrtc.h DSRTC_YEAR_START_2K 1241.2Sshige 1251.2Sshige# Xicor X1226 Real Time Clock 1261.2Sshigedevice xrtc 1271.2Sshigeattach xrtc at iic 1281.2Sshigefile dev/i2c/x1226.c xrtc 1291.4Smacallan 1301.19Spgoyette# Analog Devices dBCool family of thermal monitors / fan controllers 1311.19Spgoyettedevice dbcool: sysmon_envsys 1321.19Spgoyetteattach dbcool at iic 1331.19Spgoyettefile dev/i2c/dbcool.c dbcool 1341.19Spgoyette 1351.5Snonaka# RICOH RS5C372[AB] Real Time Clock 1361.5Snonakadevice rs5c372rtc 1371.5Snonakaattach rs5c372rtc at iic 1381.5Snonakafile dev/i2c/rs5c372.c rs5c372rtc 1391.8Sshige 1401.8Sshige# RICOH R2025S/D Real Time Clock 1411.8Sshigedevice r2025rtc 1421.8Sshigeattach r2025rtc at iic 1431.8Sshigefile dev/i2c/r2025.c r2025rtc 1441.9Sgdamore 1451.9Sgdamore# VESA Display Data Channel 2 1461.9Sgdamoredevice ddc 1471.10Sgdamoredefine ddc_read_edid 1481.9Sgdamoreattach ddc at iic 1491.10Sgdamorefile dev/i2c/ddc.c ddc | ddc_read_edid 1501.11Sjmcneill 1511.14Smacallan# SGS TDA7433 audio mixer 1521.16Smacallandevice sgsmix 1531.16Smacallanattach sgsmix at iic 1541.14Smacallanfile dev/i2c/sgsmix.c sgsmix needs-flag 1551.16Smacallandefflag opt_sgsmix.h SGSMIX_DEBUG 1561.14Smacallan 1571.15Stnn# Memory Serial Presence Detect 1581.27Spgoyetteattach spdmem at iic with spdmem_iic 1591.27Spgoyettefile dev/i2c/spdmem_i2c.c spdmem_iic 1601.22Sjkunz 1611.24Spgoyette# Memory Temp Sensor 1621.25Spgoyettedevice sdtemp: sysmon_envsys 1631.24Spgoyetteattach sdtemp at iic 1641.24Spgoyettefile dev/i2c/sdtemp.c sdtemp 1651.24Spgoyette 1661.51Smatt# DS1672 Real Time Clock 1671.51Smattdevice ds1672rtc 1681.51Smattattach ds1672rtc at iic 1691.51Smattfile dev/i2c/ds1672.c ds1672rtc 1701.51Smatt 1711.22Sjkunz# ADM1021 1721.23Snakayamadevice admtemp: sysmon_envsys 1731.22Sjkunzattach admtemp at iic 1741.22Sjkunzfile dev/i2c/adm1021.c admtemp 1751.26Spgoyette 1761.69Sjdc# ADM1026 hardware monitor 1771.69Sjdcdevice adm1026hm: sysmon_envsys 1781.69Sjdcattach adm1026hm at iic 1791.69Sjdcfile dev/i2c/adm1026.c adm1026hm 1801.69Sjdc 1811.26Spgoyette# SMSC LPC47M192 hardware monitor 1821.26Spgoyettedevice smscmon: sysmon_envsys 1831.26Spgoyetteattach smscmon at iic 1841.26Spgoyettefile dev/i2c/smscmon.c smscmon 1851.28Skiyohara 1861.28Skiyohara# G760a FAN controller 1871.28Skiyoharadevice g760a: sysmon_envsys 1881.28Skiyoharaattach g760a at iic 1891.28Skiyoharafile dev/i2c/g760a.c g760a 1901.33Shannken 1911.33Shannken# IBM Hawk Integrated Systems Management Processor 1921.33Shannkendevice ibmhawk: sysmon_envsys 1931.33Shannkenattach ibmhawk at iic 1941.33Shannkenfile dev/i2c/ibmhawk.c ibmhawk 1951.46Sjmcneill 1961.48Srkujawa# TI TPS65217 1971.101Sjmcneilldevice tps65217pmic { }: sysmon_envsys 1981.101Sjmcneilldevice tps65217reg: tps65217pmic 1991.48Srkujawaattach tps65217pmic at iic 2001.101Sjmcneillattach tps65217reg at tps65217pmic 2011.72Skiyoharafile dev/i2c/tps65217pmic.c tps65217pmic needs-flag 2021.48Srkujawa 2031.49Srkujawa# Microchip MCP980x 2041.49Srkujawadevice mcp980x: sysmon_envsys 2051.49Srkujawaattach mcp980x at iic 2061.49Srkujawafile dev/i2c/mcp980x.c mcp980x 2071.49Srkujawa 2081.50Ssoren# Nuvoton W83795G/ADG Hardware Monitor 2091.50Ssorendevice w83795g: gpiobus, sysmon_envsys, sysmon_wdog 2101.50Ssorenattach w83795g at iic 2111.50Ssorenfile dev/i2c/w83795g.c w83795g 2121.52Srkujawa 2131.52Srkujawa# Freescale MPL115A2 2141.52Srkujawadevice mpl115a: sysmon_envsys 2151.52Srkujawaattach mpl115a at iic 2161.52Srkujawafile dev/i2c/mpl115a.c mpl115a 2171.52Srkujawa 2181.56Sjmcneill# AXP20x Power Management Unit 2191.78Sjmcneilldevice axp20x { }: sysmon_envsys 2201.78Sjmcneilldevice axp20xreg: axp20x 2211.56Sjmcneillattach axp20x at iic 2221.78Sjmcneillattach axp20xreg at axp20x 2231.66Sjmcneillfile dev/i2c/axp20x.c axp20x needs-flag 2241.57Sjmcneill 2251.57Sjmcneill# AXP22x Power Management Unit 2261.57Sjmcneilldevice axp22x: sysmon_envsys 2271.57Sjmcneillattach axp22x at iic 2281.57Sjmcneillfile dev/i2c/axp22x.c axp22x 2291.60Sjmcneill 2301.90Sjmcneill# X-Powers AXP Power Management IC 2311.91Sjmcneilldevice axppmic { }: sysmon_envsys, sysmon_taskq 2321.90Sjmcneilldevice axpreg: axppmic 2331.90Sjmcneillattach axppmic at iic 2341.90Sjmcneillattach axpreg at axppmic 2351.90Sjmcneillfile dev/i2c/axppmic.c axppmic 2361.60Sjmcneill 2371.60Sjmcneill# AXP809 Power Management Unit 2381.60Sjmcneilldevice axp809pm 2391.60Sjmcneillattach axp809pm at iic 2401.60Sjmcneillfile dev/i2c/axp809.c axp809pm needs-flag 2411.61Sjmcneill 2421.61Sjmcneill# AC100 integrated audio codec and RTC 2431.61Sjmcneilldevice ac100ic 2441.61Sjmcneillattach ac100ic at iic 2451.61Sjmcneillfile dev/i2c/ac100.c ac100ic needs-flag 2461.62Sjmcneill 2471.62Sjmcneill# ACT8846 Power Management Unit 2481.62Sjmcneilldevice act8846pm 2491.62Sjmcneillattach act8846pm at iic 2501.62Sjmcneillfile dev/i2c/act8846.c act8846pm needs-flag 2511.65Sjmcneill 2521.65Sjmcneill# Texas Instruments TMP451 Temperature Sensor 2531.65Sjmcneilldevice titemp: sysmon_envsys 2541.65Sjmcneillattach titemp at iic 2551.65Sjmcneillfile dev/i2c/titemp.c titemp 2561.67Sjmcneill 2571.67Sjmcneill# AMS AS3722 Power Management IC 2581.73Sjmcneilldevice as3722pmic { }: sysmon_wdog 2591.73Sjmcneilldevice as3722reg: as3722pmic 2601.67Sjmcneillattach as3722pmic at iic 2611.73Sjmcneillattach as3722reg at as3722pmic 2621.67Sjmcneillfile dev/i2c/as3722.c as3722pmic needs-flag 2631.74Sjmcneill 2641.74Sjmcneill# Texas Instruments TCA8418 Keypad Scan IC 2651.75Sjmcneilldevice tcakp: wskbddev, linux_keymap 2661.74Sjmcneillattach tcakp at iic 2671.74Sjmcneillfile dev/i2c/tcakp.c tcakp 2681.76Sjmcneill 2691.76Sjmcneill# MAXIM MAX77620 Power Management IC 2701.76Sjmcneilldevice max77620pmic 2711.76Sjmcneillattach max77620pmic at iic 2721.76Sjmcneillfile dev/i2c/max77620.c max77620pmic 2731.76Sjmcneill 2741.76Sjmcneill# Texas Instruments TCA9539 I/O Expander 2751.76Sjmcneilldevice tcagpio 2761.76Sjmcneillattach tcagpio at iic 2771.76Sjmcneillfile dev/i2c/tcagpio.c tcagpio 2781.77Sjmcneill 2791.80Schristos# Silicon Lab SI7013/SI7020/SI7021 Temperature and Humidity sensor 2801.80Schristosdevice si70xxtemp 2811.80Schristosattach si70xxtemp at iic 2821.80Schristosfile dev/i2c/si70xx.c si70xxtemp 2831.80Schristos 2841.80Schristos# Aosong AM2315 Temperature and Humidity sensor 2851.80Schristosdevice am2315temp 2861.80Schristosattach am2315temp at iic 2871.80Schristosfile dev/i2c/am2315.c am2315temp 2881.80Schristos 2891.77Sjmcneill# Silergy SY8106A regulator 2901.77Sjmcneilldevice sy8106a 2911.77Sjmcneillattach sy8106a at iic 2921.77Sjmcneillfile dev/i2c/sy8106a.c sy8106a 2931.79Sbouyer 2941.82Smacallan# Maxim DS1631 High-Precision Digital Thermometer and Thermostat 2951.82Smacallandevice dstemp: sysmon_envsys 2961.82Smacallanattach dstemp at iic 2971.82Smacallanfile dev/i2c/dstemp.c dstemp 2981.82Smacallan 2991.81Suwe# EM3027 Real Time Clock and Temperature Sensor 3001.81Suwedevice em3027rtc: sysmon_envsys 3011.81Suweattach em3027rtc at iic 3021.81Suwefile dev/i2c/em3027.c em3027rtc 3031.81Suwe 3041.85Smacallan# Apple Fan Control Unit found in some G5 3051.85Smacallandevice fcu: sysmon_envsys 3061.85Smacallanattach fcu at iic 3071.87Smacallanfile dev/i2c/fcu.c fcu needs-flag 3081.85Smacallan 3091.86Smacallan# Analog Devices AD7417 thermometer and ADC 3101.86Smacallandevice adadc: sysmon_envsys 3111.86Smacallanattach adadc at iic 3121.86Smacallanfile dev/i2c/adadc.c adadc 3131.86Smacallan 3141.111Smacallan# Apple Sudden Motion Sensor 3151.111Smacallandevice asms: sysmon_envsys 3161.111Smacallanattach asms at iic 3171.111Smacallanfile dev/i2c/asms.c asms 3181.111Smacallan 3191.79Sbouyer# HID over i2c 3201.79Sbouyer# HID "bus" 3211.79Sbouyerdefine ihidbus {[ reportid = -1 ]} 3221.79Sbouyer 3231.79Sbouyer# HID root device for multiple report IDs 3241.79Sbouyerdevice ihidev: hid, ihidbus 3251.79Sbouyerattach ihidev at iic 3261.79Sbouyerfile dev/i2c/ihidev.c ihidev 3271.79Sbouyer 3281.79Sbouyer#HID mice 3291.79Sbouyerdevice ims: hid, hidms, wsmousedev 3301.79Sbouyerattach ims at ihidbus 3311.79Sbouyerfile dev/i2c/ims.c ims 3321.79Sbouyer 3331.79Sbouyer#HID multitouch 3341.79Sbouyerdevice imt: hid, hidmt, wsmousedev 3351.79Sbouyerattach imt at ihidbus 3361.79Sbouyerfile dev/i2c/imt.c imt 3371.92Sthorpej 3381.92Sthorpej# Taos TSL256x ambient light sensor 3391.92Sthorpejdevice tsllux: sysmon_envsys 3401.92Sthorpejattach tsllux at iic 3411.92Sthorpejfile dev/i2c/tsl256x.c tsllux 3421.94Srkujawa 3431.94Srkujawa# Philips/NXP TEA5767 3441.94Srkujawadevice tea5767radio : radiodev 3451.94Srkujawaattach tea5767radio at iic 3461.94Srkujawafile dev/i2c/tea5767.c tea5767radio 3471.94Srkujawa 3481.95Sjmcneill# Fairchild FAN53555 / Silergy SY82x regulator 3491.95Sjmcneilldevice fan53555reg 3501.95Sjmcneillattach fan53555reg at iic 3511.95Sjmcneillfile dev/i2c/fan53555.c fan53555reg 3521.96Sjmcneill 3531.96Sjmcneill# Rockchip Power Management IC 3541.96Sjmcneilldevice rkpmic { } 3551.96Sjmcneilldevice rkreg: rkpmic 3561.96Sjmcneillattach rkpmic at iic 3571.96Sjmcneillattach rkreg at rkpmic 3581.96Sjmcneillfile dev/i2c/rkpmic.c rkpmic 3591.98Sjmcneill 3601.99Stnn# SSD1306 or SH1106 OLED/PLED display 3611.99Stnnattach ssdfb at iic with ssdfb_iic 3621.99Stnnfile dev/i2c/ssdfb_i2c.c ssdfb_iic 3631.99Stnn 3641.98Sjmcneill# Analogix ANX6345 eDP transmitter 3651.98Sjmcneilldevice anxedp: edid, videomode, drmkms, drmkms_i2c 3661.98Sjmcneillattach anxedp at iic 3671.98Sjmcneillfile dev/i2c/anxedp.c anxedp 3681.100Sthorpej 3691.100Sthorpej# NXP PCA9685 16-channel, 12-bit PWM Fm+ LED controller 3701.100Sthorpejdevice pcapwm: pwm 3711.100Sthorpejattach pcapwm at iic 3721.100Sthorpejfile dev/i2c/pca9685.c pcapwm 3731.102Sjmcneill 3741.102Sjmcneill# TI TWL4030 Power Management IC 3751.102Sjmcneilldevice twl 3761.102Sjmcneillattach twl at iic 3771.102Sjmcneillfile dev/i2c/twl4030.c twl 3781.104Sjmcneill 3791.104Sjmcneill# NXP TDA19988 HDMI encoder 3801.104Sjmcneilldevice tdahdmi: edid, videomode, drmkms, drmkms_i2c 3811.104Sjmcneillattach tdahdmi at iic 3821.104Sjmcneillfile dev/i2c/tda19988.c tdahdmi 3831.105Sjmcneill 3841.105Sjmcneill# Everest Semi ES8316 Low Power Audio CODEC 3851.105Sjmcneilldevice es8316ac 3861.105Sjmcneillattach es8316ac at iic 3871.105Sjmcneillfile dev/i2c/es8316ac.c es8316ac 3881.107Sjmcneill 3891.107Sjmcneill# CellWise CW2015 Fuel Gauge IC 3901.107Sjmcneilldevice cwfg: sysmon_envsys 3911.107Sjmcneillattach cwfg at iic 3921.107Sjmcneillfile dev/i2c/cwfg.c cwfg 3931.109Smacallan 3941.109Smacallan# Philips PCA955x GPIO 3951.110Smacallandevice pcagpio: leds 3961.109Smacallanattach pcagpio at iic 3971.109Smacallanfile dev/i2c/pcagpio.c pcagpio 398