Hi,
I found all eSATA ports on devkit are only accessible to xavier B in Linux. is it possible to assign some eSATA ports to Xavier A? I need to mount one ssd directly in Linux on Xavier A.
Thanks
Jerry
Hi,
I found all eSATA ports on devkit are only accessible to xavier B in Linux. is it possible to assign some eSATA ports to Xavier A? I need to mount one ssd directly in Linux on Xavier A.
Thanks
Jerry
Dear jerryc_sf,
Could you please help to check it with the following command?
I can access eSATA device no TegraA.
nvidia@tegra-ubuntu:~$ cat /proc/partitions
major minor #blocks name
254 0 31490048 vblkdev0
254 1 31471360 vblkdev0p1
254 16 75119616 vblkdev1
254 32 4194304 vblkdev2
179 0 7634944 mmcblk0
179 24 4096 mmcblk0rpmb
179 16 8192 mmcblk0boot1
179 8 8192 mmcblk0boot0
31 0 65536 mtdblock0
8 0 58615704 sda
8 1 58612736 sda1
8 16 58615704 sdb
8 17 58612736 sdb1
nvidia@tegra-ubuntu:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vblkdev0p1 30845624 16076156 13179524 55% /
none 24805120 0 24805120 0% /dev
tmpfs 25339552 12 25339540 1% /dev/shm
tmpfs 25339552 181520 25158032 1% /run
tmpfs 5120 0 5120 0% /run/lock
tmpfs 25339552 0 25339552 0% /sys/fs/cgroup
/dev/vblkdev2 4186108 16 4186092 1% /storage
tmpfs 2533956 72 2533884 1% /run/user/1001
/dev/vblkdev1 73808088 53012 69982712 1% /media/nvidia/b89296a6-850b-4e06-82cb-36f927241cb5
/dev/sda1 57560316 725064 53888232 2% /media/nvidia/6659fd54-0ad8-4ee2-a1f6-aaa39bef9766
nvidia@tegra-ubuntu:~$
Hi SteveNV,
I knew how these commands work. /dev/sda and /dev/sdb etc. only show up in Linux on XavierB for ssd sata drives connected to eSATA ports. I saw /dev/sda on xavierA only if a usb drive is connected to a XavierA usb port.
Thanks
Jerry
please kindly let us know what could be the issue not seeing it on Xavier A (or Tegra a).
Also, On Xavier B(Tegra B), dmesg outputs the following for the samsung ssd driver connected at eSATA port 0. please let us know if it is using at least SATA 3Gb/s speed? I feel it is kind of slow (not like a ssd but a hard drive)
[ 27.389127] scsi host0: mvsas
[ 27.738898] sas: phy-0:0 added to port-0:0, phy_mask:0x1 ( 0)
[ 27.738961] sas: DOING DISCOVERY on port 0, pid:214
[ 27.738982] sas: DONE DISCOVERY on port 0, pid:214, result:0
[ 27.739046] sas: Enter sas_scsi_recover_host busy: 0 failed: 0
[ 27.739091] sas: ata1: end_device-0:0: dev error handler
[ 27.897739] ata1.00: supports DRM functions and may not be fully accessible
[ 27.898796] ata1.00: ATA-11: Samsung SSD 860 EVO 1TB, RVT02B6Q, max UDMA/133
[ 27.898807] ata1.00: 1953525168 sectors, multi 1: LBA48 NCQ (depth 31/32)
[ 27.900110] ata1.00: supports DRM functions and may not be fully accessible
[ 27.901905] ata1.00: configured for UDMA/133
[ 27.901978] sas: --- Exit sas_scsi_recover_host: busy: 0 failed: 0 tries: 1
[ 27.948373] scsi 0:0:0:0: Direct-Access ATA Samsung SSD 860 2B6Q PQ: 0 ANSI: 5
[ 28.044370] ata1.00: Enabling discard_zeroes_data
[ 28.044471] sd 0:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[ 28.044822] sd 0:0:0:0: [sda] Write Protect is off
[ 28.044827] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[ 28.044979] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 28.046353] carmel_ras carmel_ras: Deferring probe, arm64_ras hasnt been probed yet
[ 28.079992] carmel_ras carmel_ras: Deferring probe, arm64_ras hasnt been probed yet
[ 28.096356] ata1.00: Enabling discard_zeroes_data
[ 28.101311] sda: sda1
[ 28.175245] ata1.00: Enabling discard_zeroes_data
[ 28.175555] sd 0:0:0:0: [sda] Attached SCSI disk
[ 30.633087] sas: Enter sas_scsi_recover_host busy: 1 failed: 1
[ 30.633097] sas: ata1: end_device-0:0: cmd error handler
[ 30.633148] sas: ata1: end_device-0:0: dev error handler
[ 30.633221] sas: --- Exit sas_scsi_recover_host: busy: 0 failed: 1 tries: 1
[ 30.645100] sas: Enter sas_scsi_recover_host busy: 1 failed: 1
[ 30.645109] sas: ata1: end_device-0:0: cmd error handler
[ 30.645151] sas: ata1: end_device-0:0: dev error handler
[ 30.645247] sas: --- Exit sas_scsi_recover_host: busy: 0 failed: 1 tries: 1
[ 31.474494] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[ 31.474671] systemd[1]: Started CUPS Scheduler.
[ 31.479278] systemd[1]: Found device Samsung_SSD_860_EVO_1TB primary.
[ 31.642157] systemd[1]: Started CUPS Scheduler.
Dear Jerryc_sf,
Could you please let me know the DriveAGX PDK version?
Could you please try to run below commands to check the enumeration?
================
cat /proc/partition
lsblk
ls /dev/sd*
Mount the eSATA drive on Tegra to /media/
NOTE1 - create /media/sdd1
Regarding eSATA speed, could you please help to check below commands?
dd if=/dev/zero of=/media/sdd1/80gb bs=260M count=320 &
DriveAGX PDK S/N: E3550-B03-S0886
Firmware/OS: Linux DriveAGX Software 8.0
Samsung SSD connected at eSATA port 0
On Xavier A:
nvidia@tegra-ubuntu:~$ cat /proc/partitions
major minor #blocks name
254 0 31490048 vblkdev0
254 1 31471360 vblkdev0p1
254 16 75119616 vblkdev1
254 32 4194304 vblkdev2
179 0 7634944 mmcblk0
179 24 4096 mmcblk0rpmb
179 16 8192 mmcblk0boot1
179 8 8192 mmcblk0boot0
31 0 65536 mtdblock0
nvidia@tegra-ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0rpmb 179:24 0 4M 0 disk
mtdblock0 31:0 0 64M 0 disk
vblkdev2 254:32 0 4G 0 disk /storage
mmcblk0boot0 179:8 0 8M 1 disk
vblkdev0 254:0 0 30G 0 disk
└─vblkdev0p1 254:1 0 30G 0 part /
mmcblk0boot1 179:16 0 8M 1 disk
mmcblk0 179:0 0 7.3G 0 disk
vblkdev1 254:16 0 71.7G 0 disk
nvidia@tegra-ubuntu:~$ ls /dev/sd*
ls: cannot access '/dev/sd*': No such file or directory
On Xavier B:
nvidia@tegra-ubuntu:~$ cat /proc/partitions
major minor #blocks name
254 0 31490048 vblkdev0
254 1 31471360 vblkdev0p1
254 16 75119616 vblkdev1
254 32 4194304 vblkdev2
179 0 7634944 mmcblk0
179 24 4096 mmcblk0rpmb
179 16 8192 mmcblk0boot1
179 8 8192 mmcblk0boot0
31 0 65536 mtdblock0
8 0 976762584 sda
8 1 976700872 sda1
nvidia@tegra-ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0rpmb 179:24 0 4M 0 disk
mtdblock0 31:0 0 64M 0 disk
vblkdev2 254:32 0 4G 0 disk /storage
mmcblk0boot0 179:8 0 8M 1 disk
vblkdev0 254:0 0 30G 0 disk
└─vblkdev0p1 254:1 0 30G 0 part /
sda 8:0 0 931.5G 0 disk
└─sda1 8:1 0 931.5G 0 part /mnt/SSD1
mmcblk0boot1 179:16 0 8M 1 disk
mmcblk0 179:0 0 7.3G 0 disk
vblkdev1 254:16 0 71.7G 0 disk
nvidia@tegra-ubuntu:~$ ls /dev/sd*
/dev/sda /dev/sda1
will do dd command performance test later
could you please kindly update the status on this issue?
Dear jerryc_sf,
This is the default PEX switch config we ship with all the boards – you can use the instructions in the standard docs (Flashing Basics → Flashing the PCIe Switch and Configuration File) to do this.
https://www.nvidia.com/en-us/nvdocs/drive/5_1/linux/DRIVE_Linux_AGX_PDK_Development_Guide/Flashing_Basics/flash_pcie_uart/
However DriveSW assumes the ssd on Xavier B so if this is changed some samples/apps may break.
Could you let me know why you want to change the ssd making? Thanks.
Dear SteveNV
I want to see below URL.
https://www.nvidia.com/en-us/nvdocs/drive/5_1/linux/DRIVE_Linux_AGX_PDK_Development_Guide/Flashing_Basics/flash_pcie_uart/
But I couldn’t see the page, maybe broken link.
Would you tell us right URL? Or contents of the page via pdf or something like that?
Thank you in advance for your cooperation.
Dear okada-ki9vsnr,
Please refer to the link. Thanks.
Were any of you able to get the eSATA ports working on Xavier A?
I am using DRIVE OS v5.1.6.1
PCIe switch flashing instructions for my version of DRIVE OS are here: DRIVE OS Linux
According to the document, switch configuration files should be present in this location:
Switch Configuration File
The switch configuration files are preset at:
•For PCIe switch-1:
drive-t186ref-foundation/firmwares/bin/t19x/microsemi/pcie/bins/e3550/config_files/pm8534/
•For PCIe switch-2:
drive-t186ref-foundation/firmwares/bin/t19x/microsemi/pcie/bins/e3550/config_files/pm8533/
Details on each configuration file, for example partition and ownership details, are provided in the README file available at:
drive-t186ref-foundation/firmwares/bin/t19x/microsemi/pcie/bins/e3550/config_files/pm8534/README
But I do not have the microsemi directory or anything below it under drive-t186ref-foundation/firmwares/bin/t19x
Please follow NVIDIA DRIVE Downloads | NVIDIA Developer → Installation Notes (Click to toggle open/close) → “3. UPDATE the PCIe SWITCH FIRMWARE” to get its run file. Thanks!
Thanks for the link @VickNV, I downloaded the pcie switch config files but ran into some issues while updating the firmware.
nvidia@tegra-ubuntu:/lib/firmware/pcie-switch/tools/prebuilt$ lsmod | grep switchtec
ntb_hw_switchtec 24576 0
ntb 16384 1 ntb_hw_switchtec
switchtec 32768 1 ntb_hw_switchtec
nvidia@tegra-ubuntu:/lib/firmware/pcie-switch/tools/prebuilt$ lspci
0000:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad0 (rev a1)
0000:01:00.0 PCI bridge: PMC-Sierra Inc. Device 8534
0000:01:00.1 Bridge: PMC-Sierra Inc. Device 8534
0000:02:00.0 PCI bridge: PMC-Sierra Inc. Device 8534
0000:02:01.0 PCI bridge: PMC-Sierra Inc. Device 8534
0000:04:00.0 Ethernet controller: Aquantia Corp. AQC107 NBase-T/IEEE 802.3bz Ethernet Controller [AQtion] (rev 02)
0001:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad2 (rev a1)
0004:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad1 (rev a1)
0004:01:00.0 Ethernet controller: Aquantia Corp. AQC107 NBase-T/IEEE 802.3bz Ethernet Controller [AQtion] (rev 02)
nvidia@tegra-ubuntu:/lib/firmware/pcie-switch/tools/prebuilt$
nvidia@tegra-ubuntu:/lib/firmware/pcie-switch/tools/prebuilt$ sudo ./switchtec fw-update /home/nvidia/drive-t186ref-foundation/firmwares/bin/t19x/microsemi/pcie/bins/e3550/config_files/pm8534/usecase4.0.pmc /dev/switchtec0
/home/nvidia/drive-t186ref-foundation/firmwares/bin/t19x/microsemi/pcie/bins/e3550/config_files/pm8534/usecase4.0.pmc: Inappropriate ioctl for device
Would really appreciate if you can provide some help/insight.
Please try with “./switchtec fw-update <img_file>”. Below is the details usage of the command.
$ ./switchtec help fw-update
Usage: ./switchtec help./switchtec fw-update <device> <img_file> [OPTIONS]
Flash the firmware with a new image
Positional Arguments:
<device> --- switchtec device to operate on.
can be a device path
(/dev/switchtec0), an index (0,
1, 2) or a pci address (3:00.1)
<img_file> --- image file to use as the new
firmware
Environment Variables:
SWITCHTEC_DEV --- if set, the value will be used
for the <device> argument
Options:
[ --yes, -y ] --- assume yes when prompted
[ --dont-activate, -A ] --- don't activate the new image, use
fw-toggle to do so when it is
safe
[ --force, -f ] --- force interrupting an existing
fw-update command in case
firmware is stuck in the busy
state
[ --set-boot-rw, -W ] --- set the bootloader partition as
RW (only valid for BOOT images)
thanks that worked