aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorNeil Armstrong <narmstrong@baylibre.com>2020-09-21 09:34:15 +0200
committerNeil Armstrong <narmstrong@baylibre.com>2020-10-05 17:59:45 +0200
commitadbff64af7b7cee3e0007b75df2644090edaafcb (patch)
tree8a8129db409b77535e8fa300484acb29300342c3 /doc
parentcb4a7feb54b5143905f720afb582e2aeef4937ef (diff)
downloadu-boot-adbff64af7b7cee3e0007b75df2644090edaafcb.zip
u-boot-adbff64af7b7cee3e0007b75df2644090edaafcb.tar.gz
u-boot-adbff64af7b7cee3e0007b75df2644090edaafcb.tar.bz2
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.rst27
-rw-r--r--doc/board/amlogic/khadas-vim3l.rst27
2 files changed, 54 insertions, 0 deletions
diff --git a/doc/board/amlogic/khadas-vim3.rst b/doc/board/amlogic/khadas-vim3.rst
index c1c0321..d6a9642 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 b380c17..3c0a415 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
------------------