The NetBSD Project

CVS log for src/sys/dev/i2c/ihidev.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / i2c

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.6 / (download) - annotate - [select for diffs], Fri Jan 14 22:25:49 2022 UTC (2 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.5: +6 -3 lines
Diff to previous 1.5 (colored)

ihidev(4): Fix locking and interrupt handler.

- Can't run iic_exec in softint because it does cv_wait, at least on
  some i2c controllers -- defer to workqueue instead.

- Fix violations of locking rules:
  . Do not take a lock at higher IPL than it is defined at!
  . Do not sleep under a lock!
  . Definitely do not sleep under a spin lock!
  In this case, sc_intr_lock was defined at IPL_VM but used at IPL_TTY,
  and i2c transactions -- possibly causing sleep for cv_wait -- were
  issued under it.

  But in this case, the interrupt handler needs only a single bit to
  mark whether the work is pending, so just use atomic_swap for that.

- Use an adaptive lock (IPL_NONE) for i2c transactions.

- Detach children, and do so before freeing anything.

Revision 1.5 / (download) - annotate - [select for diffs], Fri Jan 14 21:32:27 2022 UTC (2 years, 1 month ago) by riastradh
Branch: MAIN
Changes since 1.4: +18 -1 lines
Diff to previous 1.4 (colored)

ihidev(4): Add missing includes and header guard.

Mark the sections that are conventionally separate files for hardware
interface (*reg.h) versus software state (*var.h).

Revision 1.4.20.1 / (download) - annotate - [select for diffs], Mon Aug 9 00:30:09 2021 UTC (2 years, 6 months ago) by thorpej
Branch: thorpej-i2c-spi-conf2
Changes since 1.4: +1 -2 lines
Diff to previous 1.4 (colored) next main 1.5 (colored)

Port over the changes from thorpej-i2c-spi-conf to thorpej-i2c-spi-conf2,
which is based on a newer HEAD revision.

Revision 1.4.10.1 / (download) - annotate - [select for diffs], Sat May 8 15:44:12 2021 UTC (2 years, 9 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.4: +1 -2 lines
Diff to previous 1.4 (colored) next main 1.5 (colored)

Rather than using the "cookie" from the i2c_attach_args, use the
device handle that's already associated with our device_t.

Revision 1.1.4.1 / (download) - annotate - [select for diffs], Wed Apr 8 14:08:05 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored) next main 1.2 (colored)

Merge changes from current as of 20200406

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Fri Jan 17 21:47:31 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.3: +3 -1 lines
Diff to previous 1.3 (colored) next main 1.4 (colored)

Sync with head.

Revision 1.4 / (download) - annotate - [select for diffs], Thu Jan 9 04:04:01 2020 UTC (4 years, 1 month ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1
Branch point for: thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf
Changes since 1.3: +3 -1 lines
Diff to previous 1.3 (colored)

Re-enable the intr / mask / softint / unmask dance now that the x86
interrupt issue is fixed.  Verified working by ryoon@ (thanks!).

Revision 1.3 / (download) - annotate - [select for diffs], Wed Dec 25 01:19:56 2019 UTC (4 years, 1 month ago) by thorpej
Branch: MAIN
CVS Tags: ad-namecache-base
Branch point for: ad-namecache
Changes since 1.2: +0 -2 lines
Diff to previous 1.2 (colored)

Revert previous until issues can be sorted out.

Revision 1.2 / (download) - annotate - [select for diffs], Sun Dec 22 16:44:35 2019 UTC (4 years, 2 months ago) by thorpej
Branch: MAIN
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored)

The hid-over-i2c spec specifies that compliant devices use level-sensitive
interrupts.  However, it's not safe to do i2c bus access in hard interrupt
context, and we must read the event data off the device in order to clear
the interrupt condition.

Address this by using acpi_intr_mask() to mask off the interrupt source
while a softint is pending to service the events, re-enabling it once
servicing is completed.

While here, re-factor the interrupt setup / tear-down code a bit to
eventually once day simplify supporting the FDT bindings for hid-over-i2c.

Revision 1.1 / (download) - annotate - [select for diffs], Sun Dec 10 17:05:54 2017 UTC (6 years, 2 months ago) by bouyer
Branch: MAIN
CVS Tags: phil-wifi-base, phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, jdolecek-ncqfixes-base, jdolecek-ncqfixes, isaki-audio2-base, isaki-audio2
Branch point for: phil-wifi

Add drivers for HID over I2C devices, and a driver for I2C mices.
From OpenBSD.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>