From b63a8b58ef7dffa6bfe9e04e1a56ab48de28e3c9 Mon Sep 17 00:00:00 2001 From: Michael Schaffner Date: Mon, 2 Aug 2021 17:44:42 -0700 Subject: [PATCH] [topgen/pinmux/doc] Autogen target pinout / pinmux connectivity tables This adds a top-level doc generation function which currently generates pinout and pinmux connectivity tables for all targets (ASIC, CW310 etc) of a specific top-level. More documentation generation functions can be added in the future, if needed. Signed-off-by: Michael Schaffner --- hw/ip/pinmux/doc/_index.md | 6 +- hw/ip/pinmux/doc/targets.md | 12 + .../data/autogen/top_earlgrey.gen.hjson | 112 ++++++++++ .../ip/pinmux/doc/autogen/pinout_asic.md | 200 +++++++++++++++++ .../ip/pinmux/doc/autogen/pinout_cw310.md | 179 +++++++++++++++ .../pinmux/doc/autogen/pinout_nexysvideo.md | 179 +++++++++++++++ util/topgen.py | 4 + util/topgen/gen_top_docs.py | 207 ++++++++++++++++++ util/topgen/merge.py | 9 +- 9 files changed, 904 insertions(+), 4 deletions(-) create mode 100644 hw/ip/pinmux/doc/targets.md create mode 100644 hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_asic.md create mode 100644 hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_cw310.md create mode 100644 hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_nexysvideo.md create mode 100644 util/topgen/gen_top_docs.py diff --git a/hw/ip/pinmux/doc/_index.md b/hw/ip/pinmux/doc/_index.md index 176aad56054262..465e322e575e43 100644 --- a/hw/ip/pinmux/doc/_index.md +++ b/hw/ip/pinmux/doc/_index.md @@ -382,7 +382,11 @@ A typical programming sequence for the wakeup detectors looks as follows: ## Pinout and Pinmux Mapping -**TODO: generate tables for top-earlgrey** +The tables below summarize the pinout and pinmux connectivity for certain top-level designs. + +### Top Earlgrey + +{{< snippet "./targets.md" >}} ## Register Table diff --git a/hw/ip/pinmux/doc/targets.md b/hw/ip/pinmux/doc/targets.md new file mode 100644 index 00000000000000..39bd961c55b666 --- /dev/null +++ b/hw/ip/pinmux/doc/targets.md @@ -0,0 +1,12 @@ + + +| Target Name | #IO Banks | #Muxed Pads | #Direct Pads | #Manual Pads | #Total Pads | Pinout / Pinmux Tables | +|:-------------:|:-----------:|:-------------:|:--------------:|:--------------:|:-------------:|:----------------------------------------------------------------------------------------:| +| ASIC | 4 | 47 | 14 | 9 | 70 | [Pinout Table](../../../top_earlgrey/ip/pinmux/doc/autogen/pinout_asic/index.html) | +| CW310 | 4 | 29 | 4 | 16 | 49 | [Pinout Table](../../../top_earlgrey/ip/pinmux/doc/autogen/pinout_cw310/index.html) | +| NEXYSVIDEO | 4 | 29 | 4 | 16 | 49 | [Pinout Table](../../../top_earlgrey/ip/pinmux/doc/autogen/pinout_nexysvideo/index.html) | \ No newline at end of file diff --git a/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson b/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson index 51eafe86bc2550..da72539ad9eb66 100644 --- a/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson +++ b/hw/top_earlgrey/data/autogen/top_earlgrey.gen.hjson @@ -9980,6 +9980,7 @@ pad: SPI_HOST_D0 attr: BidirStd connection: direct + desc: "" glob_idx: 0 } { @@ -9990,6 +9991,7 @@ pad: SPI_HOST_D1 attr: BidirStd connection: direct + desc: "" glob_idx: 1 } { @@ -10000,6 +10002,7 @@ pad: SPI_HOST_D2 attr: BidirStd connection: direct + desc: "" glob_idx: 2 } { @@ -10010,6 +10013,7 @@ pad: SPI_HOST_D3 attr: BidirStd connection: direct + desc: "" glob_idx: 3 } { @@ -10020,6 +10024,7 @@ pad: SPI_DEV_D0 attr: BidirStd connection: direct + desc: "" glob_idx: 4 } { @@ -10030,6 +10035,7 @@ pad: SPI_DEV_D1 attr: BidirStd connection: direct + desc: "" glob_idx: 5 } { @@ -10040,6 +10046,7 @@ pad: SPI_DEV_D2 attr: BidirStd connection: direct + desc: "" glob_idx: 6 } { @@ -10050,6 +10057,7 @@ pad: SPI_DEV_D3 attr: BidirStd connection: direct + desc: "" glob_idx: 7 } { @@ -10060,6 +10068,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 8 } { @@ -10070,6 +10079,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 9 } { @@ -10080,6 +10090,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 10 } { @@ -10090,6 +10101,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 0 } { @@ -10100,6 +10112,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 1 } { @@ -10110,6 +10123,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 2 } { @@ -10120,6 +10134,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 3 } { @@ -10130,6 +10145,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 4 } { @@ -10140,6 +10156,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 5 } { @@ -10150,6 +10167,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 6 } { @@ -10160,6 +10178,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 7 } { @@ -10170,6 +10189,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 8 } { @@ -10180,6 +10200,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 9 } { @@ -10190,6 +10211,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 10 } { @@ -10200,6 +10222,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 11 } { @@ -10210,6 +10233,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 12 } { @@ -10220,6 +10244,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 13 } { @@ -10230,6 +10255,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 14 } { @@ -10240,6 +10266,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 15 } { @@ -10250,6 +10277,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 16 } { @@ -10260,6 +10288,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 17 } { @@ -10270,6 +10299,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 18 } { @@ -10280,6 +10310,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 19 } { @@ -10290,6 +10321,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 20 } { @@ -10300,6 +10332,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 21 } { @@ -10310,6 +10343,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 22 } { @@ -10320,6 +10354,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 23 } { @@ -10330,6 +10365,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 24 } { @@ -10340,6 +10376,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 25 } { @@ -10350,6 +10387,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 26 } { @@ -10360,6 +10398,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 27 } { @@ -10370,6 +10409,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 28 } { @@ -10380,6 +10420,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 29 } { @@ -10390,6 +10431,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 30 } { @@ -10400,6 +10442,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 31 } { @@ -10410,6 +10453,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 32 } { @@ -10420,6 +10464,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 33 } { @@ -10430,6 +10475,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 34 } { @@ -10440,6 +10486,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 35 } { @@ -10450,6 +10497,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 36 } { @@ -10460,6 +10508,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 37 } { @@ -10470,6 +10519,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 38 } { @@ -10480,6 +10530,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 39 } { @@ -10490,6 +10541,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 40 } { @@ -10500,6 +10552,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 41 } { @@ -10510,6 +10563,7 @@ pad: SPI_DEV_CLK attr: InputStd connection: direct + desc: "" glob_idx: 11 } { @@ -10520,6 +10574,7 @@ pad: SPI_DEV_CS_L attr: InputStd connection: direct + desc: "" glob_idx: 12 } { @@ -10530,6 +10585,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 13 } { @@ -10540,6 +10596,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 42 } { @@ -10550,6 +10607,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 43 } { @@ -10560,6 +10618,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 44 } { @@ -10570,6 +10629,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 45 } { @@ -10580,6 +10640,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 46 } { @@ -10590,6 +10651,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 47 } { @@ -10600,6 +10662,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 48 } { @@ -10610,6 +10673,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 49 } { @@ -10620,6 +10684,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 50 } { @@ -10630,6 +10695,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 51 } { @@ -10640,6 +10706,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 52 } { @@ -10650,6 +10717,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 53 } { @@ -10660,6 +10728,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 54 } { @@ -10670,6 +10739,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 55 } { @@ -10680,6 +10750,7 @@ pad: SPI_HOST_CLK attr: BidirStd connection: direct + desc: "" glob_idx: 14 } { @@ -10690,6 +10761,7 @@ pad: SPI_HOST_CS_L attr: BidirStd connection: direct + desc: "" glob_idx: 15 } { @@ -10700,6 +10772,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 16 } { @@ -10710,6 +10783,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 17 } { @@ -10720,6 +10794,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 18 } { @@ -10730,6 +10805,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 19 } { @@ -10740,6 +10816,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 20 } { @@ -10750,6 +10827,7 @@ pad: "" attr: BidirTol connection: manual + desc: "" glob_idx: 21 } { @@ -10760,6 +10838,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 42 } { @@ -10770,6 +10849,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 43 } { @@ -10780,6 +10860,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 44 } { @@ -10790,6 +10871,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 45 } { @@ -10800,6 +10882,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 46 } { @@ -10810,6 +10893,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 47 } { @@ -10820,6 +10904,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 48 } { @@ -10830,6 +10915,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 49 } { @@ -10840,6 +10926,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 50 } { @@ -10850,6 +10937,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 51 } { @@ -10860,6 +10948,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 52 } { @@ -10870,6 +10959,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 53 } { @@ -10880,6 +10970,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 54 } { @@ -10890,6 +10981,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 55 } { @@ -10900,6 +10992,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 56 } { @@ -10910,6 +11003,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 57 } { @@ -10920,6 +11014,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 58 } { @@ -10930,6 +11025,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 59 } { @@ -10940,6 +11036,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 60 } { @@ -10950,6 +11047,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 61 } { @@ -10960,6 +11058,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 62 } { @@ -10970,6 +11069,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 63 } { @@ -10980,6 +11080,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 64 } { @@ -10990,6 +11091,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 65 } { @@ -11000,6 +11102,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 66 } { @@ -11010,6 +11113,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 67 } { @@ -11020,6 +11124,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 68 } { @@ -11030,6 +11135,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 69 } { @@ -11040,6 +11146,7 @@ pad: IOR8 attr: BidirOd connection: direct + desc: "" glob_idx: 22 } { @@ -11050,6 +11157,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 70 } { @@ -11060,6 +11168,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 71 } { @@ -11070,6 +11179,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 72 } { @@ -11080,6 +11190,7 @@ pad: IOR9 attr: BidirOd connection: direct + desc: "" glob_idx: 23 } { @@ -11090,6 +11201,7 @@ pad: "" attr: "" connection: muxed + desc: "" glob_idx: 73 } ] diff --git a/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_asic.md b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_asic.md new file mode 100644 index 00000000000000..675843d1ddcf8d --- /dev/null +++ b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_asic.md @@ -0,0 +1,200 @@ +--- +title: ASIC Target Pinout and Pinmux Connectivity +--- + + +## Pinout Table + +|

Pad Name

|

Type

|

Bank

|

Connection

|

Special Function

|

Pinmux Insel Constant / Muxed Output Index

|

Description

| +|:-------------------------------------------------:|:------------------------------------------:|:---------------------------------------:|:---------------------------------------------:|:---------------------------------------------------:|:---------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------:| +|

POR_N

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

System reset

| +|

USB_P

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB P signal

| +|

USB_N

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB N signal

| +|

CC1

|

InputStd

|

AVCC

|

manual

|

-

|

- / -

|

ADC input 1

| +|

CC2

|

InputStd

|

AVCC

|

manual

|

-

|

- / -

|

ADC input 2

| +|

FLASH_TEST_VOLT

|

AnalogIn0

|

VCC

|

manual

|

-

|

- / -

|

Flash test voltage input

| +|

FLASH_TEST_MODE0

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Flash test mode signal

| +|

FLASH_TEST_MODE1

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Flash test mode signal

| +|

OTP_EXT_VOLT

|

AnalogIn1

|

VCC

|

manual

|

-

|

- / -

|

OTP external voltage input

| +|

SPI_HOST_D0

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host data

| +|

SPI_HOST_D1

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host data

| +|

SPI_HOST_D2

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host data

| +|

SPI_HOST_D3

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host data

| +|

SPI_HOST_CLK

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host clock

| +|

SPI_HOST_CS_L

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI host chip select

| +|

SPI_DEV_D0

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device data

| +|

SPI_DEV_D1

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device data

| +|

SPI_DEV_D2

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device data

| +|

SPI_DEV_D3

|

BidirStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device data

| +|

SPI_DEV_CLK

|

InputStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device clock

| +|

SPI_DEV_CS_L

|

InputStd

|

VIOA

|

direct

|

-

|

- / -

|

SPI device chip select

| +|

IOA0

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa0 / kTopEarlgreyPinmuxMioOutIoa0

|

Muxed IO pad

| +|

IOA1

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa1 / kTopEarlgreyPinmuxMioOutIoa1

|

Muxed IO pad

| +|

IOA2

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa2 / kTopEarlgreyPinmuxMioOutIoa2

|

Muxed IO pad

| +|

IOA3

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa3 / kTopEarlgreyPinmuxMioOutIoa3

|

Muxed IO pad

| +|

IOA4

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa4 / kTopEarlgreyPinmuxMioOutIoa4

|

Muxed IO pad

| +|

IOA5

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa5 / kTopEarlgreyPinmuxMioOutIoa5

|

Muxed IO pad

| +|

IOA6

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa6 / kTopEarlgreyPinmuxMioOutIoa6

|

Muxed IO pad

| +|

IOA7

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa7 / kTopEarlgreyPinmuxMioOutIoa7

|

Muxed IO pad

| +|

IOA8

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa8 / kTopEarlgreyPinmuxMioOutIoa8

|

Muxed IO pad

| +|

IOB0

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob0 / kTopEarlgreyPinmuxMioOutIob0

|

Muxed IO pad

| +|

IOB1

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob1 / kTopEarlgreyPinmuxMioOutIob1

|

Muxed IO pad

| +|

IOB2

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob2 / kTopEarlgreyPinmuxMioOutIob2

|

Muxed IO pad

| +|

IOB3

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob3 / kTopEarlgreyPinmuxMioOutIob3

|

Muxed IO pad

| +|

IOB4

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob4 / kTopEarlgreyPinmuxMioOutIob4

|

Muxed IO pad

| +|

IOB5

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob5 / kTopEarlgreyPinmuxMioOutIob5

|

Muxed IO pad

| +|

IOB6

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob6 / kTopEarlgreyPinmuxMioOutIob6

|

Muxed IO pad

| +|

IOB7

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob7 / kTopEarlgreyPinmuxMioOutIob7

|

Muxed IO pad

| +|

IOB8

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob8 / kTopEarlgreyPinmuxMioOutIob8

|

Muxed IO pad

| +|

IOB9

|

BidirOd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob9 / kTopEarlgreyPinmuxMioOutIob9

|

Muxed IO pad

| +|

IOB10

|

BidirOd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob10 / kTopEarlgreyPinmuxMioOutIob10

|

Muxed IO pad

| +|

IOB11

|

BidirOd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob11 / kTopEarlgreyPinmuxMioOutIob11

|

Muxed IO pad

| +|

IOB12

|

BidirOd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob12 / kTopEarlgreyPinmuxMioOutIob12

|

Muxed IO pad

| +|

IOC0

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc0 / kTopEarlgreyPinmuxMioOutIoc0

|

Muxed IO pad

| +|

IOC1

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc1 / kTopEarlgreyPinmuxMioOutIoc1

|

Muxed IO pad

| +|

IOC2

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc2 / kTopEarlgreyPinmuxMioOutIoc2

|

Muxed IO pad

| +|

IOC3

|

BidirStd

|

VCC

|

muxed

|

dft0

|

kTopEarlgreyPinmuxInselIoc3 / kTopEarlgreyPinmuxMioOutIoc3

|

Muxed IO pad / DFT strap signal.

| +|

IOC4

|

BidirStd

|

VCC

|

muxed

|

dft1

|

kTopEarlgreyPinmuxInselIoc4 / kTopEarlgreyPinmuxMioOutIoc4

|

Muxed IO pad / DFT strap signal.

| +|

IOC5

|

BidirStd

|

VCC

|

muxed

|

tap1

|

kTopEarlgreyPinmuxInselIoc5 / kTopEarlgreyPinmuxMioOutIoc5

|

Muxed IO pad / TAP strap signal.

| +|

IOC6

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc6 / kTopEarlgreyPinmuxMioOutIoc6

|

Muxed IO pad

| +|

IOC7

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc7 / kTopEarlgreyPinmuxMioOutIoc7

|

Muxed IO pad

| +|

IOC8

|

BidirStd

|

VCC

|

muxed

|

tap0

|

kTopEarlgreyPinmuxInselIoc8 / kTopEarlgreyPinmuxMioOutIoc8

|

Muxed IO pad / TAP strap signal.

| +|

IOC9

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc9 / kTopEarlgreyPinmuxMioOutIoc9

|

Muxed IO pad

| +|

IOC10

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc10 / kTopEarlgreyPinmuxMioOutIoc10

|

Muxed IO pad

| +|

IOC11

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc11 / kTopEarlgreyPinmuxMioOutIoc11

|

Muxed IO pad

| +|

IOC12

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc12 / kTopEarlgreyPinmuxMioOutIoc12

|

Muxed IO pad

| +|

IOR0

|

BidirStd

|

VCC

|

muxed

|

tms

|

kTopEarlgreyPinmuxInselIor0 / kTopEarlgreyPinmuxMioOutIor0

|

Muxed IO pad / JTAG tms signal.

| +|

IOR1

|

BidirStd

|

VCC

|

muxed

|

tdo

|

kTopEarlgreyPinmuxInselIor1 / kTopEarlgreyPinmuxMioOutIor1

|

Muxed IO pad / JTAG tdo signal.

| +|

IOR2

|

BidirStd

|

VCC

|

muxed

|

tdi

|

kTopEarlgreyPinmuxInselIor2 / kTopEarlgreyPinmuxMioOutIor2

|

Muxed IO pad / JTAG tdi signal.

| +|

IOR3

|

BidirStd

|

VCC

|

muxed

|

tck

|

kTopEarlgreyPinmuxInselIor3 / kTopEarlgreyPinmuxMioOutIor3

|

Muxed IO pad / JTAG tck signal.

| +|

IOR4

|

BidirStd

|

VCC

|

muxed

|

trst_n

|

kTopEarlgreyPinmuxInselIor4 / kTopEarlgreyPinmuxMioOutIor4

|

Muxed IO pad / JTAG trst_n signal.

| +|

IOR5

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor5 / kTopEarlgreyPinmuxMioOutIor5

|

Muxed IO pad

| +|

IOR6

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor6 / kTopEarlgreyPinmuxMioOutIor6

|

Muxed IO pad

| +|

IOR7

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor7 / kTopEarlgreyPinmuxMioOutIor7

|

Muxed IO pad

| +|

IOR8

|

BidirOd

|

VCC

|

direct

|

-

|

- / -

|

Dedicated sysrst_ctrl output (ec_rst_l)

| +|

IOR9

|

BidirOd

|

VCC

|

direct

|

-

|

- / -

|

Dedicated sysrst_ctrl output (pwrb_out)

| +|

IOR10

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor10 / kTopEarlgreyPinmuxMioOutIor10

|

Muxed IO pad

| +|

IOR11

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor11 / kTopEarlgreyPinmuxMioOutIor11

|

Muxed IO pad

| +|

IOR12

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor12 / kTopEarlgreyPinmuxMioOutIor12

|

Muxed IO pad

| +|

IOR13

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIor13 / kTopEarlgreyPinmuxMioOutIor13

|

Muxed IO pad

| +## Pinmux Connectivity + +|

Module / Signal

|

Connection

|

Pad

|

Pinmux Outsel Constant / Peripheral Input Index

|

Description

| +|:-----------------------------------------------------------------:|:---------------------------------------------:|:----------------------------------------------:|:----------------------------------------------------------------------------------------------------------------:|:----------------------------------------------:| +|

spi_host0_sd[0]

|

direct

|

SPI_HOST_D0

|

- / -

|

| +|

spi_host0_sd[1]

|

direct

|

SPI_HOST_D1

|

- / -

|

| +|

spi_host0_sd[2]

|

direct

|

SPI_HOST_D2

|

- / -

|

| +|

spi_host0_sd[3]

|

direct

|

SPI_HOST_D3

|

- / -

|

| +|

spi_device_sd[0]

|

direct

|

SPI_DEV_D0

|

- / -

|

| +|

spi_device_sd[1]

|

direct

|

SPI_DEV_D1

|

- / -

|

| +|

spi_device_sd[2]

|

direct

|

SPI_DEV_D2

|

- / -

|

| +|

spi_device_sd[3]

|

direct

|

SPI_DEV_D3

|

- / -

|

| +|

usbdev_d

|

manual

|

-

|

- / -

|

| +|

usbdev_dp

|

manual

|

-

|

- / -

|

| +|

usbdev_dn

|

manual

|

-

|

- / -

|

| +|

gpio_gpio[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio0 / kTopEarlgreyPinmuxPeripheralInGpioGpio0

|

| +|

gpio_gpio[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio1 / kTopEarlgreyPinmuxPeripheralInGpioGpio1

|

| +|

gpio_gpio[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio2 / kTopEarlgreyPinmuxPeripheralInGpioGpio2

|

| +|

gpio_gpio[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio3 / kTopEarlgreyPinmuxPeripheralInGpioGpio3

|

| +|

gpio_gpio[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio4 / kTopEarlgreyPinmuxPeripheralInGpioGpio4

|

| +|

gpio_gpio[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio5 / kTopEarlgreyPinmuxPeripheralInGpioGpio5

|

| +|

gpio_gpio[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio6 / kTopEarlgreyPinmuxPeripheralInGpioGpio6

|

| +|

gpio_gpio[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio7 / kTopEarlgreyPinmuxPeripheralInGpioGpio7

|

| +|

gpio_gpio[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio8 / kTopEarlgreyPinmuxPeripheralInGpioGpio8

|

| +|

gpio_gpio[9]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio9 / kTopEarlgreyPinmuxPeripheralInGpioGpio9

|

| +|

gpio_gpio[10]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio10 / kTopEarlgreyPinmuxPeripheralInGpioGpio10

|

| +|

gpio_gpio[11]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio11 / kTopEarlgreyPinmuxPeripheralInGpioGpio11

|

| +|

gpio_gpio[12]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio12 / kTopEarlgreyPinmuxPeripheralInGpioGpio12

|

| +|

gpio_gpio[13]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio13 / kTopEarlgreyPinmuxPeripheralInGpioGpio13

|

| +|

gpio_gpio[14]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio14 / kTopEarlgreyPinmuxPeripheralInGpioGpio14

|

| +|

gpio_gpio[15]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio15 / kTopEarlgreyPinmuxPeripheralInGpioGpio15

|

| +|

gpio_gpio[16]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio16 / kTopEarlgreyPinmuxPeripheralInGpioGpio16

|

| +|

gpio_gpio[17]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio17 / kTopEarlgreyPinmuxPeripheralInGpioGpio17

|

| +|

gpio_gpio[18]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio18 / kTopEarlgreyPinmuxPeripheralInGpioGpio18

|

| +|

gpio_gpio[19]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio19 / kTopEarlgreyPinmuxPeripheralInGpioGpio19

|

| +|

gpio_gpio[20]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio20 / kTopEarlgreyPinmuxPeripheralInGpioGpio20

|

| +|

gpio_gpio[21]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio21 / kTopEarlgreyPinmuxPeripheralInGpioGpio21

|

| +|

gpio_gpio[22]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio22 / kTopEarlgreyPinmuxPeripheralInGpioGpio22

|

| +|

gpio_gpio[23]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio23 / kTopEarlgreyPinmuxPeripheralInGpioGpio23

|

| +|

gpio_gpio[24]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio24 / kTopEarlgreyPinmuxPeripheralInGpioGpio24

|

| +|

gpio_gpio[25]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio25 / kTopEarlgreyPinmuxPeripheralInGpioGpio25

|

| +|

gpio_gpio[26]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio26 / kTopEarlgreyPinmuxPeripheralInGpioGpio26

|

| +|

gpio_gpio[27]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio27 / kTopEarlgreyPinmuxPeripheralInGpioGpio27

|

| +|

gpio_gpio[28]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio28 / kTopEarlgreyPinmuxPeripheralInGpioGpio28

|

| +|

gpio_gpio[29]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio29 / kTopEarlgreyPinmuxPeripheralInGpioGpio29

|

| +|

gpio_gpio[30]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio30 / kTopEarlgreyPinmuxPeripheralInGpioGpio30

|

| +|

gpio_gpio[31]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio31 / kTopEarlgreyPinmuxPeripheralInGpioGpio31

|

| +|

i2c0_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Sda / kTopEarlgreyPinmuxPeripheralInI2c0Sda

|

| +|

i2c0_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Scl / kTopEarlgreyPinmuxPeripheralInI2c0Scl

|

| +|

i2c1_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Sda / kTopEarlgreyPinmuxPeripheralInI2c1Sda

|

| +|

i2c1_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Scl / kTopEarlgreyPinmuxPeripheralInI2c1Scl

|

| +|

i2c2_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Sda / kTopEarlgreyPinmuxPeripheralInI2c2Sda

|

| +|

i2c2_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Scl / kTopEarlgreyPinmuxPeripheralInI2c2Scl

|

| +|

spi_host1_sd[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd0 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd0

|

| +|

spi_host1_sd[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd1 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd1

|

| +|

spi_host1_sd[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd2 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd2

|

| +|

spi_host1_sd[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd3 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd3

|

| +|

spi_device_sck

|

direct

|

SPI_DEV_CLK

|

- / -

|

| +|

spi_device_csb

|

direct

|

SPI_DEV_CS_L

|

- / -

|

| +|

usbdev_sense

|

manual

|

-

|

- / -

|

| +|

uart0_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart0Rx

|

| +|

uart1_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart1Rx

|

| +|

uart2_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart2Rx

|

| +|

uart3_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart3Rx

|

| +|

flash_ctrl_tck

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTck

|

| +|

flash_ctrl_tms

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTms

|

| +|

flash_ctrl_tdi

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTdi

|

| +|

sysrst_ctrl_aon_ac_present

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonAcPresent

|

| +|

sysrst_ctrl_aon_ec_rst_in_l

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonEcRstInL

|

| +|

sysrst_ctrl_aon_key0_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey0In

|

| +|

sysrst_ctrl_aon_key1_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey1In

|

| +|

sysrst_ctrl_aon_key2_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey2In

|

| +|

sysrst_ctrl_aon_pwrb_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonPwrbIn

|

| +|

sysrst_ctrl_aon_lid_open

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonLidOpen

|

| +|

spi_host0_sck

|

direct

|

SPI_HOST_CLK

|

- / -

|

| +|

spi_host0_csb

|

direct

|

SPI_HOST_CS_L

|

- / -

|

| +|

usbdev_se0

|

manual

|

-

|

- / -

|

| +|

usbdev_dp_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_dn_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_tx_mode_se

|

manual

|

-

|

- / -

|

| +|

usbdev_suspend

|

manual

|

-

|

- / -

|

| +|

usbdev_rx_enable

|

manual

|

-

|

- / -

|

| +|

uart0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart0Tx / -

|

| +|

uart1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart1Tx / -

|

| +|

uart2_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart2Tx / -

|

| +|

uart3_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart3Tx / -

|

| +|

pattgen_pda0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda0Tx / -

|

| +|

pattgen_pcl0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl0Tx / -

|

| +|

pattgen_pda1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda1Tx / -

|

| +|

pattgen_pcl1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl1Tx / -

|

| +|

spi_host1_sck

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sck / -

|

| +|

spi_host1_csb

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Csb / -

|

| +|

flash_ctrl_tdo

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselFlashCtrlTdo / -

|

| +|

sensor_ctrl_aon_ast_debug_out[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut0 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut1 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut2 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut3 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut4 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut5 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut6 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut7 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut8 / -

|

| +|

pwm_aon_pwm[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm0 / -

|

| +|

pwm_aon_pwm[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm1 / -

|

| +|

pwm_aon_pwm[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm2 / -

|

| +|

pwm_aon_pwm[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm3 / -

|

| +|

pwm_aon_pwm[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm4 / -

|

| +|

pwm_aon_pwm[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm5 / -

|

| +|

otp_ctrl_test[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselOtpCtrlTest0 / -

|

| +|

sysrst_ctrl_aon_bat_disable

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonBatDisable / -

|

| +|

sysrst_ctrl_aon_ec_rst_out_l

|

direct

|

IOR8

|

- / -

|

| +|

sysrst_ctrl_aon_key0_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey0Out / -

|

| +|

sysrst_ctrl_aon_key1_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey1Out / -

|

| +|

sysrst_ctrl_aon_key2_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey2Out / -

|

| +|

sysrst_ctrl_aon_pwrb_out

|

direct

|

IOR9

|

- / -

|

| +|

sysrst_ctrl_aon_z3_wakeup

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonZ3Wakeup / -

|

| \ No newline at end of file diff --git a/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_cw310.md b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_cw310.md new file mode 100644 index 00000000000000..d9d596d1261b51 --- /dev/null +++ b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_cw310.md @@ -0,0 +1,179 @@ +--- +title: CW310 Target Pinout and Pinmux Connectivity +--- + + +## Pinout Table + +|

Pad Name

|

Type

|

Bank

|

Connection

|

Special Function

|

Pinmux Insel Constant / Muxed Output Index

|

Description

| +|:-------------------------------------------------:|:-----------------------------------------:|:---------------------------------------:|:---------------------------------------------:|:---------------------------------------------------:|:---------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------:| +|

POR_N

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

System reset

| +|

USB_P

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB P signal

| +|

USB_N

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB N signal

| +|

SPI_DEV_D0

|

BidirStd

|

VIOA

|

direct

|

tdi

|

- / -

|

SPI device data / JTAG tdi signal, overlaid on SPI_DEV.

| +|

SPI_DEV_D1

|

BidirStd

|

VIOA

|

direct

|

tdo

|

- / -

|

SPI device data / JTAG tdo signal, overlaid on SPI_DEV.

| +|

SPI_DEV_CLK

|

InputStd

|

VIOA

|

direct

|

tck

|

- / -

|

SPI device clock / JTAG tck signal, overlaid on SPI_DEV.

| +|

SPI_DEV_CS_L

|

InputStd

|

VIOA

|

direct

|

tms

|

- / -

|

SPI device chip select / JTAG tms signal, overlaid on SPI_DEV.

| +|

IOA0

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa0 / kTopEarlgreyPinmuxMioOutIoa0

|

Muxed IO pad

| +|

IOA1

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa1 / kTopEarlgreyPinmuxMioOutIoa1

|

Muxed IO pad

| +|

IOA2

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa2 / kTopEarlgreyPinmuxMioOutIoa2

|

Muxed IO pad

| +|

IOA3

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa3 / kTopEarlgreyPinmuxMioOutIoa3

|

Muxed IO pad

| +|

IOA4

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa4 / kTopEarlgreyPinmuxMioOutIoa4

|

Muxed IO pad

| +|

IOA5

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa5 / kTopEarlgreyPinmuxMioOutIoa5

|

Muxed IO pad

| +|

IOA6

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa6 / kTopEarlgreyPinmuxMioOutIoa6

|

Muxed IO pad

| +|

IOA7

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa7 / kTopEarlgreyPinmuxMioOutIoa7

|

Muxed IO pad

| +|

IOA8

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa8 / kTopEarlgreyPinmuxMioOutIoa8

|

Muxed IO pad

| +|

IOB0

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob0 / kTopEarlgreyPinmuxMioOutIob0

|

Muxed IO pad

| +|

IOB1

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob1 / kTopEarlgreyPinmuxMioOutIob1

|

Muxed IO pad

| +|

IOB2

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob2 / kTopEarlgreyPinmuxMioOutIob2

|

Muxed IO pad

| +|

IOB3

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob3 / kTopEarlgreyPinmuxMioOutIob3

|

Muxed IO pad

| +|

IOB4

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob4 / kTopEarlgreyPinmuxMioOutIob4

|

Muxed IO pad

| +|

IOB5

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob5 / kTopEarlgreyPinmuxMioOutIob5

|

Muxed IO pad

| +|

IOB6

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob6 / kTopEarlgreyPinmuxMioOutIob6

|

Muxed IO pad

| +|

IOB7

|

BidirStd

|

VIOB

|

muxed

|

tap1

|

kTopEarlgreyPinmuxInselIob7 / kTopEarlgreyPinmuxMioOutIob7

|

Muxed IO pad / TAP strap signal, maps to MIO pad 16.

| +|

IOB8

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob8 / kTopEarlgreyPinmuxMioOutIob8

|

Muxed IO pad

| +|

IOB9

|

BidirOd

|

VIOB

|

muxed

|

trst_n

|

kTopEarlgreyPinmuxInselIob9 / kTopEarlgreyPinmuxMioOutIob9

|

Muxed IO pad / JTAG trst_n signal, maps to MIO pad 18.

| +|

IOC2

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc2 / kTopEarlgreyPinmuxMioOutIoc2

|

Muxed IO pad

| +|

IOC3

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc3 / kTopEarlgreyPinmuxMioOutIoc3

|

Muxed IO pad

| +|

IOC4

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc4 / kTopEarlgreyPinmuxMioOutIoc4

|

Muxed IO pad

| +|

IOC5

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc5 / kTopEarlgreyPinmuxMioOutIoc5

|

Muxed IO pad

| +|

IOC6

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc6 / kTopEarlgreyPinmuxMioOutIoc6

|

Muxed IO pad

| +|

IOC7

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc7 / kTopEarlgreyPinmuxMioOutIoc7

|

Muxed IO pad

| +|

IOC8

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc8 / kTopEarlgreyPinmuxMioOutIoc8

|

Muxed IO pad

| +|

IOC9

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc9 / kTopEarlgreyPinmuxMioOutIoc9

|

Muxed IO pad

| +|

IOC10

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc10 / kTopEarlgreyPinmuxMioOutIoc10

|

Muxed IO pad

| +|

IOC11

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc11 / kTopEarlgreyPinmuxMioOutIoc11

|

Muxed IO pad

| +|

IO_CLK

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Extra clock input for FPGA target

| +|

IO_JSRST_N

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Dedicated JTAG system reset input

| +|

IO_USB_SENSE0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_USB_DNPULLUP0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_USB_DPPULLUP0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_UPHY_DP_TX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DN_TX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DP_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DN_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_D_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_OE_N

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_SENSE

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DPPULLUP

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +## Pinmux Connectivity + +|

Module / Signal

|

Connection

|

Pad

|

Pinmux Outsel Constant / Peripheral Input Index

|

Description

| +|:-----------------------------------------------------------------:|:---------------------------------------------:|:----------------------------------------------:|:----------------------------------------------------------------------------------------------------------------:|:----------------------------------------------:| +|

spi_host0_sd[0]

|

direct

|

SPI_HOST_D0

|

- / -

|

| +|

spi_host0_sd[1]

|

direct

|

SPI_HOST_D1

|

- / -

|

| +|

spi_host0_sd[2]

|

direct

|

SPI_HOST_D2

|

- / -

|

| +|

spi_host0_sd[3]

|

direct

|

SPI_HOST_D3

|

- / -

|

| +|

spi_device_sd[0]

|

direct

|

SPI_DEV_D0

|

- / -

|

| +|

spi_device_sd[1]

|

direct

|

SPI_DEV_D1

|

- / -

|

| +|

spi_device_sd[2]

|

direct

|

SPI_DEV_D2

|

- / -

|

| +|

spi_device_sd[3]

|

direct

|

SPI_DEV_D3

|

- / -

|

| +|

usbdev_d

|

manual

|

-

|

- / -

|

| +|

usbdev_dp

|

manual

|

-

|

- / -

|

| +|

usbdev_dn

|

manual

|

-

|

- / -

|

| +|

gpio_gpio[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio0 / kTopEarlgreyPinmuxPeripheralInGpioGpio0

|

| +|

gpio_gpio[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio1 / kTopEarlgreyPinmuxPeripheralInGpioGpio1

|

| +|

gpio_gpio[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio2 / kTopEarlgreyPinmuxPeripheralInGpioGpio2

|

| +|

gpio_gpio[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio3 / kTopEarlgreyPinmuxPeripheralInGpioGpio3

|

| +|

gpio_gpio[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio4 / kTopEarlgreyPinmuxPeripheralInGpioGpio4

|

| +|

gpio_gpio[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio5 / kTopEarlgreyPinmuxPeripheralInGpioGpio5

|

| +|

gpio_gpio[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio6 / kTopEarlgreyPinmuxPeripheralInGpioGpio6

|

| +|

gpio_gpio[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio7 / kTopEarlgreyPinmuxPeripheralInGpioGpio7

|

| +|

gpio_gpio[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio8 / kTopEarlgreyPinmuxPeripheralInGpioGpio8

|

| +|

gpio_gpio[9]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio9 / kTopEarlgreyPinmuxPeripheralInGpioGpio9

|

| +|

gpio_gpio[10]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio10 / kTopEarlgreyPinmuxPeripheralInGpioGpio10

|

| +|

gpio_gpio[11]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio11 / kTopEarlgreyPinmuxPeripheralInGpioGpio11

|

| +|

gpio_gpio[12]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio12 / kTopEarlgreyPinmuxPeripheralInGpioGpio12

|

| +|

gpio_gpio[13]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio13 / kTopEarlgreyPinmuxPeripheralInGpioGpio13

|

| +|

gpio_gpio[14]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio14 / kTopEarlgreyPinmuxPeripheralInGpioGpio14

|

| +|

gpio_gpio[15]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio15 / kTopEarlgreyPinmuxPeripheralInGpioGpio15

|

| +|

gpio_gpio[16]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio16 / kTopEarlgreyPinmuxPeripheralInGpioGpio16

|

| +|

gpio_gpio[17]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio17 / kTopEarlgreyPinmuxPeripheralInGpioGpio17

|

| +|

gpio_gpio[18]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio18 / kTopEarlgreyPinmuxPeripheralInGpioGpio18

|

| +|

gpio_gpio[19]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio19 / kTopEarlgreyPinmuxPeripheralInGpioGpio19

|

| +|

gpio_gpio[20]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio20 / kTopEarlgreyPinmuxPeripheralInGpioGpio20

|

| +|

gpio_gpio[21]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio21 / kTopEarlgreyPinmuxPeripheralInGpioGpio21

|

| +|

gpio_gpio[22]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio22 / kTopEarlgreyPinmuxPeripheralInGpioGpio22

|

| +|

gpio_gpio[23]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio23 / kTopEarlgreyPinmuxPeripheralInGpioGpio23

|

| +|

gpio_gpio[24]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio24 / kTopEarlgreyPinmuxPeripheralInGpioGpio24

|

| +|

gpio_gpio[25]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio25 / kTopEarlgreyPinmuxPeripheralInGpioGpio25

|

| +|

gpio_gpio[26]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio26 / kTopEarlgreyPinmuxPeripheralInGpioGpio26

|

| +|

gpio_gpio[27]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio27 / kTopEarlgreyPinmuxPeripheralInGpioGpio27

|

| +|

gpio_gpio[28]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio28 / kTopEarlgreyPinmuxPeripheralInGpioGpio28

|

| +|

gpio_gpio[29]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio29 / kTopEarlgreyPinmuxPeripheralInGpioGpio29

|

| +|

gpio_gpio[30]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio30 / kTopEarlgreyPinmuxPeripheralInGpioGpio30

|

| +|

gpio_gpio[31]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio31 / kTopEarlgreyPinmuxPeripheralInGpioGpio31

|

| +|

i2c0_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Sda / kTopEarlgreyPinmuxPeripheralInI2c0Sda

|

| +|

i2c0_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Scl / kTopEarlgreyPinmuxPeripheralInI2c0Scl

|

| +|

i2c1_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Sda / kTopEarlgreyPinmuxPeripheralInI2c1Sda

|

| +|

i2c1_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Scl / kTopEarlgreyPinmuxPeripheralInI2c1Scl

|

| +|

i2c2_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Sda / kTopEarlgreyPinmuxPeripheralInI2c2Sda

|

| +|

i2c2_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Scl / kTopEarlgreyPinmuxPeripheralInI2c2Scl

|

| +|

spi_host1_sd[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd0 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd0

|

| +|

spi_host1_sd[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd1 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd1

|

| +|

spi_host1_sd[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd2 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd2

|

| +|

spi_host1_sd[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd3 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd3

|

| +|

spi_device_sck

|

direct

|

SPI_DEV_CLK

|

- / -

|

| +|

spi_device_csb

|

direct

|

SPI_DEV_CS_L

|

- / -

|

| +|

usbdev_sense

|

manual

|

-

|

- / -

|

| +|

uart0_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart0Rx

|

| +|

uart1_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart1Rx

|

| +|

uart2_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart2Rx

|

| +|

uart3_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart3Rx

|

| +|

flash_ctrl_tck

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTck

|

| +|

flash_ctrl_tms

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTms

|

| +|

flash_ctrl_tdi

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTdi

|

| +|

sysrst_ctrl_aon_ac_present

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonAcPresent

|

| +|

sysrst_ctrl_aon_ec_rst_in_l

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonEcRstInL

|

| +|

sysrst_ctrl_aon_key0_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey0In

|

| +|

sysrst_ctrl_aon_key1_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey1In

|

| +|

sysrst_ctrl_aon_key2_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey2In

|

| +|

sysrst_ctrl_aon_pwrb_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonPwrbIn

|

| +|

sysrst_ctrl_aon_lid_open

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonLidOpen

|

| +|

spi_host0_sck

|

direct

|

SPI_HOST_CLK

|

- / -

|

| +|

spi_host0_csb

|

direct

|

SPI_HOST_CS_L

|

- / -

|

| +|

usbdev_se0

|

manual

|

-

|

- / -

|

| +|

usbdev_dp_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_dn_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_tx_mode_se

|

manual

|

-

|

- / -

|

| +|

usbdev_suspend

|

manual

|

-

|

- / -

|

| +|

usbdev_rx_enable

|

manual

|

-

|

- / -

|

| +|

uart0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart0Tx / -

|

| +|

uart1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart1Tx / -

|

| +|

uart2_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart2Tx / -

|

| +|

uart3_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart3Tx / -

|

| +|

pattgen_pda0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda0Tx / -

|

| +|

pattgen_pcl0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl0Tx / -

|

| +|

pattgen_pda1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda1Tx / -

|

| +|

pattgen_pcl1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl1Tx / -

|

| +|

spi_host1_sck

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sck / -

|

| +|

spi_host1_csb

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Csb / -

|

| +|

flash_ctrl_tdo

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselFlashCtrlTdo / -

|

| +|

sensor_ctrl_aon_ast_debug_out[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut0 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut1 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut2 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut3 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut4 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut5 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut6 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut7 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut8 / -

|

| +|

pwm_aon_pwm[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm0 / -

|

| +|

pwm_aon_pwm[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm1 / -

|

| +|

pwm_aon_pwm[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm2 / -

|

| +|

pwm_aon_pwm[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm3 / -

|

| +|

pwm_aon_pwm[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm4 / -

|

| +|

pwm_aon_pwm[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm5 / -

|

| +|

otp_ctrl_test[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselOtpCtrlTest0 / -

|

| +|

sysrst_ctrl_aon_bat_disable

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonBatDisable / -

|

| +|

sysrst_ctrl_aon_ec_rst_out_l

|

direct

|

IOR8

|

- / -

|

| +|

sysrst_ctrl_aon_key0_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey0Out / -

|

| +|

sysrst_ctrl_aon_key1_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey1Out / -

|

| +|

sysrst_ctrl_aon_key2_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey2Out / -

|

| +|

sysrst_ctrl_aon_pwrb_out

|

direct

|

IOR9

|

- / -

|

| +|

sysrst_ctrl_aon_z3_wakeup

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonZ3Wakeup / -

|

| \ No newline at end of file diff --git a/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_nexysvideo.md b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_nexysvideo.md new file mode 100644 index 00000000000000..51deb086696bb6 --- /dev/null +++ b/hw/top_earlgrey/ip/pinmux/doc/autogen/pinout_nexysvideo.md @@ -0,0 +1,179 @@ +--- +title: NEXYSVIDEO Target Pinout and Pinmux Connectivity +--- + + +## Pinout Table + +|

Pad Name

|

Type

|

Bank

|

Connection

|

Special Function

|

Pinmux Insel Constant / Muxed Output Index

|

Description

| +|:-------------------------------------------------:|:-----------------------------------------:|:---------------------------------------:|:---------------------------------------------:|:---------------------------------------------------:|:---------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------:| +|

POR_N

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

System reset

| +|

USB_P

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB P signal

| +|

USB_N

|

BidirTol

|

VCC

|

manual

|

-

|

- / -

|

USB N signal

| +|

SPI_DEV_D0

|

BidirStd

|

VIOA

|

direct

|

tdi

|

- / -

|

SPI device data / JTAG tdi signal, overlaid on SPI_DEV.

| +|

SPI_DEV_D1

|

BidirStd

|

VIOA

|

direct

|

tdo

|

- / -

|

SPI device data / JTAG tdo signal, overlaid on SPI_DEV.

| +|

SPI_DEV_CLK

|

InputStd

|

VIOA

|

direct

|

tck

|

- / -

|

SPI device clock / JTAG tck signal, overlaid on SPI_DEV.

| +|

SPI_DEV_CS_L

|

InputStd

|

VIOA

|

direct

|

tms

|

- / -

|

SPI device chip select / JTAG tms signal, overlaid on SPI_DEV.

| +|

IOA0

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa0 / kTopEarlgreyPinmuxMioOutIoa0

|

Muxed IO pad

| +|

IOA1

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa1 / kTopEarlgreyPinmuxMioOutIoa1

|

Muxed IO pad

| +|

IOA2

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa2 / kTopEarlgreyPinmuxMioOutIoa2

|

Muxed IO pad

| +|

IOA3

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa3 / kTopEarlgreyPinmuxMioOutIoa3

|

Muxed IO pad

| +|

IOA4

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa4 / kTopEarlgreyPinmuxMioOutIoa4

|

Muxed IO pad

| +|

IOA5

|

BidirStd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa5 / kTopEarlgreyPinmuxMioOutIoa5

|

Muxed IO pad

| +|

IOA6

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa6 / kTopEarlgreyPinmuxMioOutIoa6

|

Muxed IO pad

| +|

IOA7

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa7 / kTopEarlgreyPinmuxMioOutIoa7

|

Muxed IO pad

| +|

IOA8

|

BidirOd

|

VIOA

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoa8 / kTopEarlgreyPinmuxMioOutIoa8

|

Muxed IO pad

| +|

IOB0

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob0 / kTopEarlgreyPinmuxMioOutIob0

|

Muxed IO pad

| +|

IOB1

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob1 / kTopEarlgreyPinmuxMioOutIob1

|

Muxed IO pad

| +|

IOB2

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob2 / kTopEarlgreyPinmuxMioOutIob2

|

Muxed IO pad

| +|

IOB3

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob3 / kTopEarlgreyPinmuxMioOutIob3

|

Muxed IO pad

| +|

IOB4

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob4 / kTopEarlgreyPinmuxMioOutIob4

|

Muxed IO pad

| +|

IOB5

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob5 / kTopEarlgreyPinmuxMioOutIob5

|

Muxed IO pad

| +|

IOB6

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob6 / kTopEarlgreyPinmuxMioOutIob6

|

Muxed IO pad

| +|

IOB7

|

BidirStd

|

VIOB

|

muxed

|

tap1

|

kTopEarlgreyPinmuxInselIob7 / kTopEarlgreyPinmuxMioOutIob7

|

Muxed IO pad / TAP strap signal, maps to MIO pad 16.

| +|

IOB8

|

BidirStd

|

VIOB

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIob8 / kTopEarlgreyPinmuxMioOutIob8

|

Muxed IO pad

| +|

IOB9

|

BidirOd

|

VIOB

|

muxed

|

trst_n

|

kTopEarlgreyPinmuxInselIob9 / kTopEarlgreyPinmuxMioOutIob9

|

Muxed IO pad / JTAG trst_n signal, maps to MIO pad 18.

| +|

IOC2

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc2 / kTopEarlgreyPinmuxMioOutIoc2

|

Muxed IO pad

| +|

IOC3

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc3 / kTopEarlgreyPinmuxMioOutIoc3

|

Muxed IO pad

| +|

IOC4

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc4 / kTopEarlgreyPinmuxMioOutIoc4

|

Muxed IO pad

| +|

IOC5

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc5 / kTopEarlgreyPinmuxMioOutIoc5

|

Muxed IO pad

| +|

IOC6

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc6 / kTopEarlgreyPinmuxMioOutIoc6

|

Muxed IO pad

| +|

IOC7

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc7 / kTopEarlgreyPinmuxMioOutIoc7

|

Muxed IO pad

| +|

IOC8

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc8 / kTopEarlgreyPinmuxMioOutIoc8

|

Muxed IO pad

| +|

IOC9

|

BidirStd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc9 / kTopEarlgreyPinmuxMioOutIoc9

|

Muxed IO pad

| +|

IOC10

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc10 / kTopEarlgreyPinmuxMioOutIoc10

|

Muxed IO pad

| +|

IOC11

|

BidirOd

|

VCC

|

muxed

|

-

|

kTopEarlgreyPinmuxInselIoc11 / kTopEarlgreyPinmuxMioOutIoc11

|

Muxed IO pad

| +|

IO_CLK

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Extra clock input for FPGA target

| +|

IO_JSRST_N

|

InputStd

|

VCC

|

manual

|

-

|

- / -

|

Dedicated JTAG system reset input

| +|

IO_USB_SENSE0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_USB_DNPULLUP0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_USB_DPPULLUP0

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB signal for FPGA target

| +|

IO_UPHY_DP_TX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DN_TX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DP_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DN_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_D_RX

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_OE_N

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_SENSE

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +|

IO_UPHY_DPPULLUP

|

BidirStd

|

VCC

|

manual

|

-

|

- / -

|

Manual USB UPHY signal for FPGA target

| +## Pinmux Connectivity + +|

Module / Signal

|

Connection

|

Pad

|

Pinmux Outsel Constant / Peripheral Input Index

|

Description

| +|:-----------------------------------------------------------------:|:---------------------------------------------:|:----------------------------------------------:|:----------------------------------------------------------------------------------------------------------------:|:----------------------------------------------:| +|

spi_host0_sd[0]

|

direct

|

SPI_HOST_D0

|

- / -

|

| +|

spi_host0_sd[1]

|

direct

|

SPI_HOST_D1

|

- / -

|

| +|

spi_host0_sd[2]

|

direct

|

SPI_HOST_D2

|

- / -

|

| +|

spi_host0_sd[3]

|

direct

|

SPI_HOST_D3

|

- / -

|

| +|

spi_device_sd[0]

|

direct

|

SPI_DEV_D0

|

- / -

|

| +|

spi_device_sd[1]

|

direct

|

SPI_DEV_D1

|

- / -

|

| +|

spi_device_sd[2]

|

direct

|

SPI_DEV_D2

|

- / -

|

| +|

spi_device_sd[3]

|

direct

|

SPI_DEV_D3

|

- / -

|

| +|

usbdev_d

|

manual

|

-

|

- / -

|

| +|

usbdev_dp

|

manual

|

-

|

- / -

|

| +|

usbdev_dn

|

manual

|

-

|

- / -

|

| +|

gpio_gpio[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio0 / kTopEarlgreyPinmuxPeripheralInGpioGpio0

|

| +|

gpio_gpio[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio1 / kTopEarlgreyPinmuxPeripheralInGpioGpio1

|

| +|

gpio_gpio[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio2 / kTopEarlgreyPinmuxPeripheralInGpioGpio2

|

| +|

gpio_gpio[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio3 / kTopEarlgreyPinmuxPeripheralInGpioGpio3

|

| +|

gpio_gpio[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio4 / kTopEarlgreyPinmuxPeripheralInGpioGpio4

|

| +|

gpio_gpio[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio5 / kTopEarlgreyPinmuxPeripheralInGpioGpio5

|

| +|

gpio_gpio[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio6 / kTopEarlgreyPinmuxPeripheralInGpioGpio6

|

| +|

gpio_gpio[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio7 / kTopEarlgreyPinmuxPeripheralInGpioGpio7

|

| +|

gpio_gpio[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio8 / kTopEarlgreyPinmuxPeripheralInGpioGpio8

|

| +|

gpio_gpio[9]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio9 / kTopEarlgreyPinmuxPeripheralInGpioGpio9

|

| +|

gpio_gpio[10]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio10 / kTopEarlgreyPinmuxPeripheralInGpioGpio10

|

| +|

gpio_gpio[11]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio11 / kTopEarlgreyPinmuxPeripheralInGpioGpio11

|

| +|

gpio_gpio[12]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio12 / kTopEarlgreyPinmuxPeripheralInGpioGpio12

|

| +|

gpio_gpio[13]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio13 / kTopEarlgreyPinmuxPeripheralInGpioGpio13

|

| +|

gpio_gpio[14]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio14 / kTopEarlgreyPinmuxPeripheralInGpioGpio14

|

| +|

gpio_gpio[15]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio15 / kTopEarlgreyPinmuxPeripheralInGpioGpio15

|

| +|

gpio_gpio[16]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio16 / kTopEarlgreyPinmuxPeripheralInGpioGpio16

|

| +|

gpio_gpio[17]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio17 / kTopEarlgreyPinmuxPeripheralInGpioGpio17

|

| +|

gpio_gpio[18]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio18 / kTopEarlgreyPinmuxPeripheralInGpioGpio18

|

| +|

gpio_gpio[19]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio19 / kTopEarlgreyPinmuxPeripheralInGpioGpio19

|

| +|

gpio_gpio[20]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio20 / kTopEarlgreyPinmuxPeripheralInGpioGpio20

|

| +|

gpio_gpio[21]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio21 / kTopEarlgreyPinmuxPeripheralInGpioGpio21

|

| +|

gpio_gpio[22]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio22 / kTopEarlgreyPinmuxPeripheralInGpioGpio22

|

| +|

gpio_gpio[23]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio23 / kTopEarlgreyPinmuxPeripheralInGpioGpio23

|

| +|

gpio_gpio[24]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio24 / kTopEarlgreyPinmuxPeripheralInGpioGpio24

|

| +|

gpio_gpio[25]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio25 / kTopEarlgreyPinmuxPeripheralInGpioGpio25

|

| +|

gpio_gpio[26]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio26 / kTopEarlgreyPinmuxPeripheralInGpioGpio26

|

| +|

gpio_gpio[27]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio27 / kTopEarlgreyPinmuxPeripheralInGpioGpio27

|

| +|

gpio_gpio[28]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio28 / kTopEarlgreyPinmuxPeripheralInGpioGpio28

|

| +|

gpio_gpio[29]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio29 / kTopEarlgreyPinmuxPeripheralInGpioGpio29

|

| +|

gpio_gpio[30]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio30 / kTopEarlgreyPinmuxPeripheralInGpioGpio30

|

| +|

gpio_gpio[31]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselGpioGpio31 / kTopEarlgreyPinmuxPeripheralInGpioGpio31

|

| +|

i2c0_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Sda / kTopEarlgreyPinmuxPeripheralInI2c0Sda

|

| +|

i2c0_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c0Scl / kTopEarlgreyPinmuxPeripheralInI2c0Scl

|

| +|

i2c1_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Sda / kTopEarlgreyPinmuxPeripheralInI2c1Sda

|

| +|

i2c1_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c1Scl / kTopEarlgreyPinmuxPeripheralInI2c1Scl

|

| +|

i2c2_sda

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Sda / kTopEarlgreyPinmuxPeripheralInI2c2Sda

|

| +|

i2c2_scl

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselI2c2Scl / kTopEarlgreyPinmuxPeripheralInI2c2Scl

|

| +|

spi_host1_sd[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd0 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd0

|

| +|

spi_host1_sd[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd1 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd1

|

| +|

spi_host1_sd[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd2 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd2

|

| +|

spi_host1_sd[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sd3 / kTopEarlgreyPinmuxPeripheralInSpiHost1Sd3

|

| +|

spi_device_sck

|

direct

|

SPI_DEV_CLK

|

- / -

|

| +|

spi_device_csb

|

direct

|

SPI_DEV_CS_L

|

- / -

|

| +|

usbdev_sense

|

manual

|

-

|

- / -

|

| +|

uart0_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart0Rx

|

| +|

uart1_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart1Rx

|

| +|

uart2_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart2Rx

|

| +|

uart3_rx

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInUart3Rx

|

| +|

flash_ctrl_tck

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTck

|

| +|

flash_ctrl_tms

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTms

|

| +|

flash_ctrl_tdi

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInFlashCtrlTdi

|

| +|

sysrst_ctrl_aon_ac_present

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonAcPresent

|

| +|

sysrst_ctrl_aon_ec_rst_in_l

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonEcRstInL

|

| +|

sysrst_ctrl_aon_key0_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey0In

|

| +|

sysrst_ctrl_aon_key1_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey1In

|

| +|

sysrst_ctrl_aon_key2_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonKey2In

|

| +|

sysrst_ctrl_aon_pwrb_in

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonPwrbIn

|

| +|

sysrst_ctrl_aon_lid_open

|

muxed

|

-

|

- / kTopEarlgreyPinmuxPeripheralInSysrstCtrlAonLidOpen

|

| +|

spi_host0_sck

|

direct

|

SPI_HOST_CLK

|

- / -

|

| +|

spi_host0_csb

|

direct

|

SPI_HOST_CS_L

|

- / -

|

| +|

usbdev_se0

|

manual

|

-

|

- / -

|

| +|

usbdev_dp_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_dn_pullup

|

manual

|

-

|

- / -

|

| +|

usbdev_tx_mode_se

|

manual

|

-

|

- / -

|

| +|

usbdev_suspend

|

manual

|

-

|

- / -

|

| +|

usbdev_rx_enable

|

manual

|

-

|

- / -

|

| +|

uart0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart0Tx / -

|

| +|

uart1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart1Tx / -

|

| +|

uart2_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart2Tx / -

|

| +|

uart3_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselUart3Tx / -

|

| +|

pattgen_pda0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda0Tx / -

|

| +|

pattgen_pcl0_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl0Tx / -

|

| +|

pattgen_pda1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPda1Tx / -

|

| +|

pattgen_pcl1_tx

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPattgenPcl1Tx / -

|

| +|

spi_host1_sck

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Sck / -

|

| +|

spi_host1_csb

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSpiHost1Csb / -

|

| +|

flash_ctrl_tdo

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselFlashCtrlTdo / -

|

| +|

sensor_ctrl_aon_ast_debug_out[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut0 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut1 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut2 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut3 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut4 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut5 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[6]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut6 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[7]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut7 / -

|

| +|

sensor_ctrl_aon_ast_debug_out[8]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSensorCtrlAonAstDebugOut8 / -

|

| +|

pwm_aon_pwm[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm0 / -

|

| +|

pwm_aon_pwm[1]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm1 / -

|

| +|

pwm_aon_pwm[2]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm2 / -

|

| +|

pwm_aon_pwm[3]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm3 / -

|

| +|

pwm_aon_pwm[4]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm4 / -

|

| +|

pwm_aon_pwm[5]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselPwmAonPwm5 / -

|

| +|

otp_ctrl_test[0]

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselOtpCtrlTest0 / -

|

| +|

sysrst_ctrl_aon_bat_disable

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonBatDisable / -

|

| +|

sysrst_ctrl_aon_ec_rst_out_l

|

direct

|

IOR8

|

- / -

|

| +|

sysrst_ctrl_aon_key0_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey0Out / -

|

| +|

sysrst_ctrl_aon_key1_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey1Out / -

|

| +|

sysrst_ctrl_aon_key2_out

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonKey2Out / -

|

| +|

sysrst_ctrl_aon_pwrb_out

|

direct

|

IOR9

|

- / -

|

| +|

sysrst_ctrl_aon_z3_wakeup

|

muxed

|

-

|

kTopEarlgreyPinmuxOutselSysrstCtrlAonZ3Wakeup / -

|

| \ No newline at end of file diff --git a/util/topgen.py b/util/topgen.py index 9a8d486bcf6b18..54166e63361a08 100755 --- a/util/topgen.py +++ b/util/topgen.py @@ -30,6 +30,7 @@ from topgen import merge_top, search_ips, validate_top from topgen.c import TopGenC from topgen.gen_dv import gen_dv +from topgen.gen_top_docs import gen_top_docs from topgen.top import Top from topgen.clocks import Clocks from topgen.merge import extract_clocks, connect_clocks @@ -1146,6 +1147,9 @@ def render_template(template_path: str, rendered_path: Path, **other_info): with rendered_path.open(mode='w', encoding='UTF-8') as fout: fout.write(template_contents) + # generate documentation for toplevel + gen_top_docs(completecfg, c_helper, out_path) + if __name__ == "__main__": main() diff --git a/util/topgen/gen_top_docs.py b/util/topgen/gen_top_docs.py new file mode 100644 index 00000000000000..e1309c6523fb87 --- /dev/null +++ b/util/topgen/gen_top_docs.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python3 +# Copyright lowRISC contributors. +# Licensed under the Apache License, Version 2.0, see LICENSE for details. +# SPDX-License-Identifier: Apache-2.0 +r"""Top Module Documentation Generator +""" +import os +from tabulate import tabulate + +TABLE_HEADER = '''\n\n" + pinout_table += '## Pinout Table\n\n' + table_str, stats = create_pinout_table(top, c_helper, target) + pinout_table += table_str + '\n' + pinout_table += '## Pinmux Connectivity\n\n' + pinout_table += create_pinmux_table(top, c_helper) + + pinout_table_path = doc_path / ("pinout_" + target['name'] + ".md") + with open(pinout_table_path, 'w') as outfile: + outfile.write(pinout_table) + + # gather some statistics + num_banks = len(top['pinout']['banks']) + # create summary table entry + pinout_table_relpath = relpath_prefix + "/pinout_" + target['name'] + "/index.html" + row = [ + target['name'].upper(), + num_banks, + stats['muxed'], + stats['direct'], + stats['manual'], + stats['muxed'] + stats['direct'] + stats['manual'], + "[Pinout Table](" + str(pinout_table_relpath) + ")" + ] + table_rows.append(row) + + summary_table = tabulate(table_rows, + headers="firstrow", + tablefmt="pipe", + colalign=colalign) + summary_table = TABLE_HEADER + gencmd + "-->\n\n" + summary_table + + target_table_path = pinmux_path / "targets.md" + with open(target_table_path, 'w') as target_outfile: + target_outfile.write(summary_table) + + +def gen_top_docs(top, c_helper, out_path): + # create pinout / pinmux specific tables for all targets + gen_pinmux_docs(top, c_helper, out_path) diff --git a/util/topgen/merge.py b/util/topgen/merge.py index c1f6701043b7e0..a606b29afb970d 100644 --- a/util/topgen/merge.py +++ b/util/topgen/merge.py @@ -992,7 +992,8 @@ def amend_pinmux_io(top: Dict, name_to_block: Dict[str, IpBlock]): sig_inst.update({'idx': idx, 'pad': sig['pad'], 'attr': sig['attr'], - 'connection': sig['connection']}) + 'connection': sig['connection'], + 'desc': sig['desc']}) sig_inst['name'] = mod_name + '_' + sig_inst['name'] append_io_signal(temp, sig_inst) @@ -1010,14 +1011,16 @@ def amend_pinmux_io(top: Dict, name_to_block: Dict[str, IpBlock]): sig_inst_copy.update({'idx': idx, 'pad': sig['pad'], 'attr': sig['attr'], - 'connection': sig['connection']}) + 'connection': sig['connection'], + 'desc': sig['desc']}) sig_inst_copy['name'] = sig['instance'] + '_' + sig_inst_copy['name'] append_io_signal(temp, sig_inst_copy) else: sig_inst.update({'idx': -1, 'pad': sig['pad'], 'attr': sig['attr'], - 'connection': sig['connection']}) + 'connection': sig['connection'], + 'desc': sig['desc']}) sig_inst['name'] = sig['instance'] + '_' + sig_inst['name'] append_io_signal(temp, sig_inst)