summaryrefslogtreecommitdiff
path: root/sys/dev/i2c
AgeCommit message (Collapse)Author
2020-01-24ihidev(4): tsleep(9) -> tsleep_nsec(9); ok mpi@ jcs@cheloha
2020-01-11Use block mode for smbus access as required by the IPMI standard andMark Kettenis
implement multi-block transfers. ok claudio@
2020-01-11Add constants to support block mode. Needed to support SMBus block readMark Kettenis
and write. ok claudio@
2020-01-09Convert sleeps of 1sec or more to tsleep_nsec(9).Martin Pieuchot
ok bluhm@
2019-12-16Extend the expected SPD types to include DDR4 and low-power DDR3 & 4.Claudio Jeker
OK deraadt@ kettenis@
2019-10-06Fix month mask.Mark Kettenis
ok deraadt@, patrick@
2019-09-06mcprtc(4), a driver for the Microchip MCP79400 RTC and similar variants.Patrick Wildt
ok kettenis@
2019-09-03Avoid uninitialized variable; using a for loop like in siif_recvmsg() wasMark Kettenis
what I had intended to write anyway. spotted-by & ok jsg@
2019-08-19Add support for SMBus System Interface (SSIF).Mark Kettenis
ok jmatthew@
2019-07-31ihidev: continue doing polling when interrupt setup failsJoshua Stein
2019-07-22Even when polling is requested, install ihidev's interrupt handlerJoshua Stein
If an interrupt is received, turn off polling and rely on interrupts. This may happen after S3 resume. Also properly shut down polling during suspend and start it up again on resume only after dwiic is back in action.
2019-04-08change psize to a signed int to cope with it going negative sinceJoshua Stein
the data read during polling may be junk fixed with Petr Ročkai ok deraadt, mpi, stsp
2019-01-02abcrtc(4), a driver for the Abracon AB1805 RTC and similar variants.Patrick Wildt
ok kettenis@
2018-09-20fix a memory leak in ihidev_hid_command()Jonathan Gray
ok claudio@
2018-09-01Match on interfaces with Digitizers/Touchscreen collections, as longJoshua Stein
as they have an X usage. Should get basic touchscreen functionality on some common HID-over-i2c devices like laptops.
2018-08-25Add umt(4) for USB Windows Precision Touchpad devicesJoshua Stein
Based on imt(4) Rename HIDMT_INPUT_MODE_MT to HIDMT_INPUT_MODE_MT_TOUCHPAD ok deraadt
2018-08-25Move HID->bus constant conversion for HID report types out of ihidevJoshua Stein
into hidmt. The HID code uses hid_feature, hid_input, and hid_output constants to refer to report types internally that then need to be converted to their bus-level counterparts before actually getting sent out (so hid_feature becomes UHID_FEATURE_REPORT for USB, I2C_HID_REPORT_TYPE_FEATURE for i2c). This conversion was hard-coded in ihidev but ihidev_[gs]et_report should assume the type passed is already an i2c-level define, not a hid one. This is how uhidev does it. Add a conversion routine callback that any hidmt callers need to set so that hidmt can convert hid constants to the bus-level versions. Also add a similar conversion function to uhidev. ok deraadt
2018-07-30define WSMOUSE_TYPE_TOUCHPAD so non-elantech drivers can stopJoshua Stein
claiming to be elantech devices
2018-07-09Strip down the (not enabled) pcagpio(4) GPIO extender. This removesPatrick Wildt
the sensors code and user-controllable GPIO bus attachment but at the same time hooks pcagpio(4) into the OFW GPIO framework so that it can be used by other device tree based drivers. Discussed with deraadt@ ok kettenis@
2018-06-22set I2C_F_POLL when acquiring the iic bus in an interrupt handlerJoshua Stein
found by witness, reported and tested by bentley
2018-04-07Add islrtc(4), a driver for the Intersil ISL1208 Real Time Clock.Mark Kettenis
2018-01-12revert previous changes to enable dwiic on Dell precision as it seemsMike Larkin
to cause issues on Dell XPS 15 9560. Will investigate and recommit later if a better fix can be found.
2018-01-08Attach dwiic_pci on Dell Precision 7520. Also restrict ihidev reportsMike Larkin
to those of 3 bytes or more (as per the hid-over-i2c spec). discussed with jcs, kettenis
2017-11-30Add bgw(4), a driver for a family of Bosch acceleration sensors.Mark Kettenis
ok deraadt@, mlarkin@
2017-11-29add an adaptive polling mode when no interrupt handler is available,Joshua Stein
such as on PCI dwiic(4) devices. this is a temporary workaround until the underlying interrupt problem is fixed. tested by various
2017-10-28Add the compat-mode setup for wsmouse.Ulf Brosziewski
2017-07-24pcxrtc(4), a driver for the NXP PCF8563 RTC.Mark Kettenis
ok deraadt@
2017-07-23this is imt, not imsJoshua Stein
2017-04-08A pile of sizes to free(9). In test for a few days in snapshots.Theo de Raadt
Errors will result in nice clean panic messages so we know what's wrong. Reviewed by dhill visa natano jsg.
2016-09-24Don't compare array against null pointer; found by clang.Mark Kettenis
ok jca@, jcs@
2016-09-04correct the size passed to free in iatp_write_regJonathan Gray
ok jcs@
2016-09-03zaurus has been retiredPhilip Guenther
2016-09-01add iatp(4), a driver for the i2c touchpad and touchscreen found onJoshua Stein
the chromebook pixel
2016-06-20I2C driver for the Maxim DS1307 Real Time Clock chip.Marcus Glocker
The chip has been found on a Sun Fire V210 as a second RTC hooked up to the SMU. Setting the time there has the advantage that it remains after a boot since the internal V210 RTC will be synced by the DS1307 at boot time. Not linked to sparc64 yet since it will overwrite the internal RTC handler. ok deraadt
2016-05-20Change the identification string to "nxp,pcf8523" as this is what is storedMark Kettenis
in the FDT.
2016-05-16Attempt to clear the OS flag when we attach.Mark Kettenis
2016-05-16Add pcfrtc(4).Mark Kettenis
2016-05-16Driver for the NXP PCF8523 Real Time Clock.Mark Kettenis
2016-05-12If writing the control register fails, bail out without attaching any sensors.Mark Kettenis
From Marcus Glocker, who has an Apple G5 machine where an advertised sensor isn't there, and plodding on creates annoying dmesg spam.
2016-04-23Print a meaningful interrupt string for i2c devices.Mark Kettenis
2016-04-10Fix layer violation in the ihidev(4) code by implementing a generic mechanismMark Kettenis
that allows the i2c controller implementation to establish interrupts on behalf of i2c slave device drivers. Use this mechanism in dwiic(4) to let it configure the right acpi interrupt (global or gpio). Change the level to IPL_TTY as this is the appropriate level to use for keyboards and other input devices. ok jsg@
2016-04-02Add support for I2C HID devices with GPIO signalled interrupts.Jonathan Gray
Required for the keyboard and touchpad on the ideapad 100s. ok kettenis@
2016-01-31remove old link to documentation, it's in ihidev.cJoshua Stein
2016-01-29use hid_desc fields since we have them, instead of manual offsetsJoshua Stein
into hid_desc_buf tested by jsg
2016-01-20add hidmt, a HID-layer driver for multitouch touchpads that conformJoshua Stein
to the "Windows Precision Touchpad" standard. when a compatible device is found, hidmt claims all report ids and switches the device into multitouch packet mode. add imt, an i2c-HID driver that sits between ihidev and hidmt
2016-01-20add the ability to set and get reportsJoshua Stein
establish interrupt before probing for devices to handle each report id sign an int, found by jsg
2016-01-14Several fixes for dwiic(4).Mark Kettenis
* Properly map bus space; using BUS_SPACE_MAP_PREFATCHABLE is not agood idea as it may lead to reordering or merging of register writes in the store buffer. * Properly implement the iic(4) operations in dwiic_i2c_exec(). * Keep timings set up by the firmware if the SSCN and FMCN methods aren't available. ok jcs@
2016-01-14Use I2C_F_POLL flag when acquiring and releasing the i2c bus in theMark Kettenis
interrupt handler. ok jcs@
2016-01-14When iterating over the report IDs to calculate the maximum size, takeMark Kettenis
into account the 2 bytes needed to store the length. Also make sure that we have at least wMaxInputLength bytes available for reading input reports. ok jcs@
2016-01-14Driver for HID-over-i2c keyboards.Mark Kettenis