Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • L linux
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 146
    • Issues 146
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 23
    • Merge requests 23
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.

  • Librem5
  • linux
  • Merge requests
  • !559

power: supply: bq25890_charger: Throttle ADC to 1 sec

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Sebastian Krzyszkowiak requested to merge sebastian.krzyszkowiak/linux-next:bq-throttle into pureos/byzantium Mar 05, 2022
  • Overview 1
  • Commits 1
  • Pipelines 2
  • Changes 1

When using continuous conversions, the controller provides new data every one second. The driver is using continuous conversions when there's external power available, but switches to one-shot conversions when it's not. One-shot conversion is triggered every time a property that requires ADC is being read, which can trigger several conversions one after another. This turns out to be especially problematic when the battery is too hot, as the controller sends an interrupt after ADC, which triggers the driver to read all properties, which in turn causes several more ADC conversions, taxing the system with unnecessary load.

To solve these issues, throttle triggering ADC to one second, making it behave similarly to continuous conversions done by the controller.

Signed-off-by: Sebastian Krzyszkowiak sebastian.krzyszkowiak@puri.sm

Closes #368 (closed) and #369 (closed)

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: bq-throttle