HomeFreeBSD

aw_gpio: support Allwinner D1 GPIO

Description

aw_gpio: support Allwinner D1 GPIO

The GPIO controls the multiplexing of the D1 pins to its peripherals,
so this adds the definitions needed by the aw_gpio driver to support
the D1.

Also, this modifies the aw_gpio driver to support the differences of
the D1 controller:

  • pins can have up to 15 functions
  • each port is mapped with an alignment of 0x30
  • CFG registers have 4 bits per pin
  • DRV registers have 4 bits per pin
  • the offset of PULL registers is 0x24

Signed-off-by: Julien Cassette <julien.cassette@gmail.com>
Reviewed by: mhorne
Differential Revision: https://reviews.freebsd.org/D35593

Details

Provenance
julien.cassette_gmail.comAuthored on Dec 10 2024, 9:22 PM
mhorneCommitted on Dec 10 2024, 9:30 PM
Reviewer
mhorne
Differential Revision
D35593: riscv: support Allwinner D1 GPIO controller
Parents
rG85471971305d: riscv: enable Allwinner if_awg
Branches
Unknown
Tags
Unknown