Page MenuHomeFreeBSD

riscv: support Allwinner D1 GPIO controller
ClosedPublic

Authored by julien.cassette_gmail.com on Jun 25 2022, 12:09 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 10 2024, 10:21 PM
Unknown Object (File)
Nov 30 2024, 7:07 PM
Unknown Object (File)
Nov 29 2024, 3:46 PM
Unknown Object (File)
Nov 29 2024, 12:45 AM
Unknown Object (File)
Nov 18 2024, 3:06 AM
Unknown Object (File)
Nov 6 2024, 8:30 PM
Unknown Object (File)
Nov 4 2024, 8:37 AM
Unknown Object (File)
Sep 30 2024, 10:34 AM

Details

Summary

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>

Test Plan

The driver correctly processes FDT pin-config nodes for serial, mmc, spi.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Dec 10 2024, 9:32 PM
This revision was automatically updated to reflect the committed changes.