Page MenuHomeFreeBSD

Merge the QorIQ GPIO drivers between arm and powerpc
ClosedPublic

Authored by jhibbits on Mar 31 2021, 7:06 PM.

Details

Summary

They're nearly identical, so don't use two copies. Merge the newer
driver into the older one, and move it to a common location.

Add the Semihalf and associated copyrights in addition to mine, since
it's a non-trivial amount of code merged.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Unit Tests Skipped
Build Status
Buildable 38224
Build 35113: arc lint + arc unit

Event Timeline

mw requested changes to this revision.Apr 1 2021, 7:30 AM

Thank you Justin for doing the change!

sys/conf/files.arm64
106

It looks like some conflict resolution remainings slipped into the patch.

216

Please align 'optional' and the actual options with the entries above.

sys/dev/gpio/qoriq_gpio.c
406

(While not having the docs in hand) sys/arm64/qoriq/ls1046_gpio.c did not use GPIO_GPIBE - this could be a bug, but:

  • is above configuration required for the input mode?
  • isn't it problematic in case of non-input modes?
This revision now requires changes to proceed.Apr 1 2021, 7:30 AM
sys/conf/files.arm64
106

Oops. Must've snuck in during a rebase.

sys/dev/gpio/qoriq_gpio.c
406

This is required for LX2160, but may not be required for others.

Every reference I have, for P1022, P5020, and LX2160, any unimplemented registers in this block are ignored, so it's not a problem on other targets. I don't yet have a Honeycomb board, so have only tested on a P1022 board thus far, that it's not broken.

This only affects pins marked as input, it has no effect on other pins.

This is set 'unconditionally' (only conditional on compatible property) in Linux, too.

This revision is now accepted and ready to land.Apr 5 2021, 10:57 AM