diff options
author | Neil Armstrong <narmstrong@baylibre.com> | 2020-09-21 09:34:15 +0200 |
---|---|---|
committer | Neil Armstrong <narmstrong@baylibre.com> | 2020-10-05 17:59:45 +0200 |
commit | adbff64af7b7cee3e0007b75df2644090edaafcb (patch) | |
tree | 8a8129db409b77535e8fa300484acb29300342c3 /doc | |
parent | cb4a7feb54b5143905f720afb582e2aeef4937ef (diff) | |
download | u-boot-adbff64af7b7cee3e0007b75df2644090edaafcb.tar.gz |
board: amlogic: vim3: add support for dynamic PCIe enable
The VIM3 on-board MCU can mux the PCIe/USB3.0 shared differential
lines using a FUSB340TMX USB 3.1 SuperSpeed Data Switch between
an USB3.0 Type A connector and a M.2 Key M slot.
The PHY driving these differential lines is shared between
the USB3.0 controller and the PCIe Controller, thus only
a single controller can use it.
This adds this dynamic switching right before booting Linux
and the configuration steps in the boards documentation.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
Tested-by: Kevin Hilman <khilman@baylibre.com>
[narmstrong: fixed warning by replacing min() by min_t()]
Diffstat (limited to 'doc')
-rw-r--r-- | doc/board/amlogic/khadas-vim3.rst | 27 | ||||
-rw-r--r-- | doc/board/amlogic/khadas-vim3l.rst | 27 |
2 files changed, 54 insertions, 0 deletions
diff --git a/doc/board/amlogic/khadas-vim3.rst b/doc/board/amlogic/khadas-vim3.rst index c1c03212d2..d6a9642ad6 100644 --- a/doc/board/amlogic/khadas-vim3.rst +++ b/doc/board/amlogic/khadas-vim3.rst @@ -18,6 +18,33 @@ Technology Co., Ltd. with the following specifications: Schematics are available on the manufacturer website. +PCIe Setup +---------- +The VIM3 on-board MCU can mux the PCIe/USB3.0 shared differential +lines using a FUSB340TMX USB 3.1 SuperSpeed Data Switch between +an USB3.0 Type A connector and a M.2 Key M slot. +The PHY driving these differential lines is shared between +the USB3.0 controller and the PCIe Controller, thus only +a single controller can use it. + +To setup for PCIe, run the following commands from U-Boot: + +.. code-block:: none + + i2c dev i2c@5000 + i2c mw 0x18 0x33 1 + +Then power-cycle the board. + +To set back to USB3.0, run the following commands from U-Boot: + +.. code-block:: none + + i2c dev i2c@5000 + i2c mw 0x18 0x33 0 + +Then power-cycle the board. + U-Boot compilation ------------------ diff --git a/doc/board/amlogic/khadas-vim3l.rst b/doc/board/amlogic/khadas-vim3l.rst index b380c17456..3c0a415a87 100644 --- a/doc/board/amlogic/khadas-vim3l.rst +++ b/doc/board/amlogic/khadas-vim3l.rst @@ -18,6 +18,33 @@ Technology Co., Ltd. with the following specifications: Schematics are available on the manufacturer website. +PCIe Setup +---------- +The VIM3 on-board MCU can mux the PCIe/USB3.0 shared differential +lines using a FUSB340TMX USB 3.1 SuperSpeed Data Switch between +an USB3.0 Type A connector and a M.2 Key M slot. +The PHY driving these differential lines is shared between +the USB3.0 controller and the PCIe Controller, thus only +a single controller can use it. + +To setup for PCIe, run the following commands from U-Boot: + +.. code-block:: none + + i2c dev i2c@5000 + i2c mw 0x18 0x33 1 + +Then power-cycle the board. + +To set back to USB3.0, run the following commands from U-Boot: + +.. code-block:: none + + i2c dev i2c@5000 + i2c mw 0x18 0x33 0 + +Then power-cycle the board. + U-Boot compilation ------------------ |