Message ID | 20220302114758.21787-1-pali@kernel.org |
---|---|
Headers | show |
Series | Turris Omnia: Add support for configuring mSATA and WWAN slots via env variables | expand |
On Wednesday 02 March 2022 12:47:50 Pali Rohár wrote: > Some mPCIe cards are broken and their PIN 43 incorrectly that card is > mSATA. U-Boot SPL on Turris Omnia is using PIN 43 for configuring PCIe > vs SATA functionality on SerDes. Allow to configure functionality via > additional env variable "omnia_msata_slot" which may override PIN 43. > > To force PCIe mode for broken MiniPCIe cards, call U-Boot commands: > > => setenv omnia_msata_slot pcie > => saveenv > => reset > > > PCI-SIG in PCIe Mini CEM 2.1 spec added support for USB3.0 mode to mPCIe > cards. PCIe and USB3.0 functions share same pins (like SATA pins on mSATA > with PCIe on mPCIe) and therefore only one function may be active at the > same time. This mode was introduced by PCI-SIG specially for LTE/5G modems. > > One mPCIe slot on Turris Omnia is connected to A385 CPU SerDes which > can be configured for PCIe or USB3.0 function. It is the slot with SIM > card suitable for cellular modems. As PCIe Mini CEM 2.1 spec say that > detection of PCIe vs USB3.0 functionality is platform specific, add a > new U-Boot variable "omnia_wwan_slot" for configuring functionality in > this slot. By default PCIe is used like before. > > To set this WWAN slot to USB3.0 mode, call U-Boot commands: > > => setenv omnia_wwan_slot usb3 > => saveenv > => reset > PING? Any more comments on this patch series? It is there for two months. > Pali Rohár (8): > env: sf: Allow to use env_sf_init_addr() at any stage > arm: mvebu: turris_omnia: Provide env_sf_get_env_addr() function > arm: mvebu: turris_omnia: Enable ENV support in SPL > arm: mvebu: turris_omnia: Define only one serdes map variable > arm: mvebu: turris_omnia: Allow to configure mSATA slot via env > variable > arm: mvebu: turris_omnia: Extract code for disabling sata/pcie > arm: mvebu: turris_omnia: Signal error when sata/pcie DT mode > arm: mvebu: turris_omnia: Add support for USB3.0 mode in WWAN MiniPCIe > slot > > board/CZ.NIC/turris_omnia/turris_omnia.c | 207 +++++++++++++++++------ > configs/turris_omnia_defconfig | 1 + > env/sf.c | 22 +-- > 3 files changed, 163 insertions(+), 67 deletions(-) > > -- > 2.20.1 >
On 02.03.22 12:47, Pali Rohár wrote: > Some mPCIe cards are broken and their PIN 43 incorrectly that card is > mSATA. U-Boot SPL on Turris Omnia is using PIN 43 for configuring PCIe > vs SATA functionality on SerDes. Allow to configure functionality via > additional env variable "omnia_msata_slot" which may override PIN 43. > > To force PCIe mode for broken MiniPCIe cards, call U-Boot commands: > > => setenv omnia_msata_slot pcie > => saveenv > => reset > > > PCI-SIG in PCIe Mini CEM 2.1 spec added support for USB3.0 mode to mPCIe > cards. PCIe and USB3.0 functions share same pins (like SATA pins on mSATA > with PCIe on mPCIe) and therefore only one function may be active at the > same time. This mode was introduced by PCI-SIG specially for LTE/5G modems. > > One mPCIe slot on Turris Omnia is connected to A385 CPU SerDes which > can be configured for PCIe or USB3.0 function. It is the slot with SIM > card suitable for cellular modems. As PCIe Mini CEM 2.1 spec say that > detection of PCIe vs USB3.0 functionality is platform specific, add a > new U-Boot variable "omnia_wwan_slot" for configuring functionality in > this slot. By default PCIe is used like before. > > To set this WWAN slot to USB3.0 mode, call U-Boot commands: > > => setenv omnia_wwan_slot usb3 > => saveenv > => reset > > > Pali Rohár (8): > env: sf: Allow to use env_sf_init_addr() at any stage > arm: mvebu: turris_omnia: Provide env_sf_get_env_addr() function > arm: mvebu: turris_omnia: Enable ENV support in SPL > arm: mvebu: turris_omnia: Define only one serdes map variable > arm: mvebu: turris_omnia: Allow to configure mSATA slot via env > variable > arm: mvebu: turris_omnia: Extract code for disabling sata/pcie > arm: mvebu: turris_omnia: Signal error when sata/pcie DT mode > arm: mvebu: turris_omnia: Add support for USB3.0 mode in WWAN MiniPCIe > slot > > board/CZ.NIC/turris_omnia/turris_omnia.c | 207 +++++++++++++++++------ > configs/turris_omnia_defconfig | 1 + > env/sf.c | 22 +-- > 3 files changed, 163 insertions(+), 67 deletions(-) > Applied to u-boot-marvell/master Thanks, Stefan