Page MenuHomeFreeBSD

ads111x: Convert driver to CTLFLAG_MPSAFE
ClosedPublic

Authored by seuros on Jan 9 2026, 3:53 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Aug 24, 11:56 PM
Unknown Object (File)
Tue, Aug 18, 9:09 PM
Unknown Object (File)
Tue, Aug 18, 3:42 PM
Unknown Object (File)
Thu, Aug 13, 1:46 AM
Unknown Object (File)
Tue, Aug 11, 6:10 PM
Unknown Object (File)
Mon, Aug 10, 10:49 AM
Unknown Object (File)
Mon, Aug 10, 10:49 AM
Unknown Object (File)
Mon, Aug 10, 10:47 AM
Subscribers
None

Details

Summary

Replace CTLFLAG_NEEDGIANT with CTLFLAG_MPSAFE for all ADC sensor
sysctls. The driver uses I2C bus transfers which handle locking
internally via the I2C bus layer.

Sysctls converted:

  • dev.ads111x.X.channelN.gain_index (PGA setting)
  • dev.ads111x.X.channelN.rate_index (sample rate)
  • dev.ads111x.X.channelN.voltage (sampled voltage)
  • dev.ads111x.X.config (configuration register)
  • dev.ads111x.X.lo_thresh (comparator low threshold)
  • dev.ads111x.X.hi_thresh (comparator high threshold)

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 69755
Build 66638: arc lint + arc unit

Event Timeline

seuros held this revision as a draft.
seuros published this revision for review.Jan 9 2026, 3:58 PM

The driver uses I2C bus transfers which handle locking internally via the I2C bus layer.

Well, really it serializes all of the sysctl handlers using an internal lock.

This revision is now accepted and ready to land.Jan 12 2026, 12:50 AM
This revision was automatically updated to reflect the committed changes.