162306a36Sopenharmony_ci* Marvell Dove SoC pinctrl driver for mpp
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciPlease refer to marvell,mvebu-pinctrl.txt in this directory for common binding
462306a36Sopenharmony_cipart and usage.
562306a36Sopenharmony_ci
662306a36Sopenharmony_ciRequired properties:
762306a36Sopenharmony_ci- compatible: "marvell,dove-pinctrl"
862306a36Sopenharmony_ci- clocks: (optional) phandle of pdma clock
962306a36Sopenharmony_ci- reg: register specifiers of MPP, MPP4, and PMU MPP registers
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciAvailable mpp pins/groups and functions:
1262306a36Sopenharmony_ciNote: brackets (x) are not part of the mpp name for marvell,function and given
1362306a36Sopenharmony_cionly for more detailed description in this document.
1462306a36Sopenharmony_ciNote: pmu* also allows for Power Management functions listed below
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciname          pins     functions
1762306a36Sopenharmony_ci================================================================================
1862306a36Sopenharmony_cimpp0          0        gpio, pmu, uart2(rts), sdio0(cd), lcd0(pwm), pmu*
1962306a36Sopenharmony_cimpp1          1        gpio, pmu, uart2(cts), sdio0(wp), lcd1(pwm), pmu*
2062306a36Sopenharmony_cimpp2          2        gpio, pmu, uart2(txd), sdio0(buspwr), sata(prsnt),
2162306a36Sopenharmony_ci                       uart1(rts), pmu*
2262306a36Sopenharmony_cimpp3          3        gpio, pmu, uart2(rxd), sdio0(ledctrl), sata(act),
2362306a36Sopenharmony_ci                       uart1(cts), lcd-spi(cs1), pmu*
2462306a36Sopenharmony_cimpp4          4        gpio, pmu, uart3(rts), sdio1(cd), spi1(miso), pmu*
2562306a36Sopenharmony_cimpp5          5        gpio, pmu, uart3(cts), sdio1(wp), spi1(cs), pmu*
2662306a36Sopenharmony_cimpp6          6        gpio, pmu, uart3(txd), sdio1(buspwr), spi1(mosi), pmu*
2762306a36Sopenharmony_cimpp7          7        gpio, pmu, uart3(rxd), sdio1(ledctrl), spi1(sck), pmu*
2862306a36Sopenharmony_cimpp8          8        gpio, pmu, watchdog(rstout), pmu*
2962306a36Sopenharmony_cimpp9          9        gpio, pmu, pex1(clkreq), pmu*
3062306a36Sopenharmony_cimpp10         10       gpio, pmu, ssp(sclk), pmu*
3162306a36Sopenharmony_cimpp11         11       gpio, pmu, sata(prsnt), sata-1(act), sdio0(ledctrl),
3262306a36Sopenharmony_ci                       sdio1(ledctrl), pex0(clkreq), pmu*
3362306a36Sopenharmony_cimpp12         12       gpio, pmu, uart2(rts), audio0(extclk), sdio1(cd),
3462306a36Sopenharmony_ci                       sata(act), pmu*
3562306a36Sopenharmony_cimpp13         13       gpio, pmu, uart2(cts), audio1(extclk), sdio1(wp),
3662306a36Sopenharmony_ci                       ssp(extclk), pmu*
3762306a36Sopenharmony_cimpp14         14       gpio, pmu, uart2(txd), sdio1(buspwr), ssp(rxd), pmu*
3862306a36Sopenharmony_cimpp15         15       gpio, pmu, uart2(rxd), sdio1(ledctrl), ssp(sfrm), pmu*
3962306a36Sopenharmony_cimpp16         16       gpio, uart3(rts), sdio0(cd), ac97(sdi1), lcd-spi(cs1)
4062306a36Sopenharmony_cimpp17         17       gpio, uart3(cts), sdio0(wp), ac97(sdi2), twsi(sda),
4162306a36Sopenharmony_ci                       ac97-1(sysclko)
4262306a36Sopenharmony_cimpp18         18       gpio, uart3(txd), sdio0(buspwr), ac97(sdi3), lcd0(pwm)
4362306a36Sopenharmony_cimpp19         19       gpio, uart3(rxd), sdio0(ledctrl), twsi(sck)
4462306a36Sopenharmony_cimpp20         20       gpio, sdio0(cd), sdio1(cd), spi1(miso), lcd-spi(miso),
4562306a36Sopenharmony_ci                       ac97(sysclko)
4662306a36Sopenharmony_cimpp21         21       gpio, sdio0(wp), sdio1(wp), spi1(cs), lcd-spi(cs0),
4762306a36Sopenharmony_ci                       uart1(cts), ssp(sfrm)
4862306a36Sopenharmony_cimpp22         22       gpio, sdio0(buspwr), sdio1(buspwr), spi1(mosi),
4962306a36Sopenharmony_ci                       lcd-spi(mosi), uart1(cts), ssp(txd)
5062306a36Sopenharmony_cimpp23         23       gpio, sdio0(ledctrl), sdio1(ledctrl), spi1(sck),
5162306a36Sopenharmony_ci                       lcd-spi(sck), ssp(sclk)
5262306a36Sopenharmony_cimpp_camera    24-39    gpio, camera
5362306a36Sopenharmony_cimpp_sdio0     40-45    gpio, sdio0
5462306a36Sopenharmony_cimpp_sdio1     46-51    gpio, sdio1
5562306a36Sopenharmony_cimpp_audio1    52-57    gpio, i2s1/spdifo, i2s1, spdifo, twsi, ssp/spdifo, ssp,
5662306a36Sopenharmony_ci                       ssp/twsi
5762306a36Sopenharmony_cimpp_spi0      58-61    gpio, spi0
5862306a36Sopenharmony_cimpp_uart1     62-63    gpio, uart1
5962306a36Sopenharmony_cimpp_nand      64-71    gpo, nand
6062306a36Sopenharmony_ciaudio0        -        i2s, ac97
6162306a36Sopenharmony_citwsi          -        none, opt1, opt2, opt3
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ciPower Management functions (pmu*):
6462306a36Sopenharmony_cipmu-nc               Pin not driven by any PM function
6562306a36Sopenharmony_cipmu-low              Pin driven low (0)
6662306a36Sopenharmony_cipmu-high             Pin driven high (1)
6762306a36Sopenharmony_cipmic(sdi)            Pin is used for PMIC SDI
6862306a36Sopenharmony_cicpu-pwr-down         Pin is used for CPU_PWRDWN
6962306a36Sopenharmony_cistandby-pwr-down     Pin is used for STBY_PWRDWN
7062306a36Sopenharmony_cicore-pwr-good        Pin is used for CORE_PWR_GOOD (Pins 0-7 only)
7162306a36Sopenharmony_cicpu-pwr-good         Pin is used for CPU_PWR_GOOD (Pins 8-15 only)
7262306a36Sopenharmony_cibat-fault            Pin is used for BATTERY_FAULT
7362306a36Sopenharmony_ciext0-wakeup          Pin is used for EXT0_WU
7462306a36Sopenharmony_ciext1-wakeup          Pin is used for EXT0_WU
7562306a36Sopenharmony_ciext2-wakeup          Pin is used for EXT0_WU
7662306a36Sopenharmony_cipmu-blink            Pin is used for blink function
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ciNotes:
7962306a36Sopenharmony_ci* group "mpp_audio1" allows the following functions and gpio pins:
8062306a36Sopenharmony_ci  - gpio          : gpio on pins 52-57
8162306a36Sopenharmony_ci  - i2s1/spdifo   : audio1 i2s on pins 52-55 and spdifo on 57, no gpios
8262306a36Sopenharmony_ci  - i2s1          : audio1 i2s on pins 52-55, gpio on pins 56,57
8362306a36Sopenharmony_ci  - spdifo        : spdifo on pin 57, gpio on pins 52-55
8462306a36Sopenharmony_ci  - twsi          : twsi on pins 56,57, gpio on pins 52-55
8562306a36Sopenharmony_ci  - ssp/spdifo    : ssp on pins 52-55, spdifo on pin 57, no gpios
8662306a36Sopenharmony_ci  - ssp           : ssp on pins 52-55, gpio on pins 56,57
8762306a36Sopenharmony_ci  - ssp/twsi      : ssp on pins 52-55, twsi on pins 56,57, no gpios
8862306a36Sopenharmony_ci* group "audio0" internally muxes i2s0 or ac97 controller to the dedicated
8962306a36Sopenharmony_ci  audio0 pins.
9062306a36Sopenharmony_ci* group "twsi" internally muxes twsi controller to the dedicated or option pins.
91