Samsung Evo 860 SSD not recognized by ODROID XU4

Post Reply
Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 6:04 am

Hi!

I'm trying to use a Samsung Evo 860 500GB SSD with an ODROID XU4 running Ubuntu 18.04 updated to the latest everything. Unfortunately the SSD is not recognized. If I type "fdisk -l", it shows a bunch of RAM drives and the SD card from which the OS boots, but not the SSD. If I attach a conventional HDD, that one shows up correctly.

Do I need to somehow install some driver? Any idea how to get it working?

Thanks!

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 6:21 am

Well, well... I put the SSD into the exact same type of external HDD enclosure (SATA 3 to USB 3.0 rack) into which I also put the HDDs that were recognized. And now it sees the SSD! so the problem is not with the SD but with the rack. I wonder if I can somehow install or configure something to make it recognize the other rack too...

The successfully detected rack is seen by lsusb as "Innostor Technology Corporation", while the one that was not detected correctly is some JMicron stuff...

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 6:34 am

The chip on the rack says JMS578. If I understand correctly it's the same controller that is employed by the ODROID HC1.

User avatar
odroid
Site Admin
Posts: 32677
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID
Has thanked: 209 times
Been thanked: 364 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by odroid » Tue Nov 06, 2018 3:56 pm

Show us "lsusb" and "lsusb -t" outputs.

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 6:07 pm

Code: Select all

root@ODROID-XU4-02:~# lsusb
Bus 006 Device 002: ID 0bda:8153 Realtek Semiconductor Corp.
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 003: ID 152d:1337 JMicron Technology Corp. / JMicron USA Technology Corp.
Bus 004 Device 002: ID 05e3:0616 Genesys Logic, Inc. hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Code: Select all

root@ODROID-XU4-02:~# lsusb -t
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/2p, 5000M
        |__ Port 1: Dev 3, If 0, Class=Mass Storage, Driver=uas, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/2p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=exynos-ohci/3p, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=exynos-ehci/3p, 480M

Code: Select all

root@ODROID-XU4-02:~# fdisk -l
Disk /dev/ram0: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram1: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram2: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram3: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram4: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram5: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram6: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram7: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram8: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram9: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram10: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram11: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram12: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram13: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram14: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram15: 16 MiB, 16777216 bytes, 32768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/mmcblk1: 14.9 GiB, 15931539456 bytes, 31116288 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3cedfd53

Device         Boot  Start      End  Sectors  Size Id Type
/dev/mmcblk1p1        2048   264191   262144  128M  c W95 FAT32 (LBA)
/dev/mmcblk1p2      264192 31114240 30850049 14.7G 83 Linux

Code: Select all

root@ODROID-XU4-02:~# uname -a
Linux ODROID-XU4-02 4.14.78-150 #1 SMP PREEMPT Tue Oct 23 10:43:36 -03 2018 armv7l armv7l armv7l GNU/Linux

User avatar
odroid
Site Admin
Posts: 32677
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID
Has thanked: 209 times
Been thanked: 364 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by odroid » Tue Nov 06, 2018 6:17 pm

Our JMS578 bridge board works well on Kernel 4.14.x in UAS mode.
But its VID:PID is 152D:0578 which is different from yours.
https://www.hardkernel.com/shop/usb3-0- ... oard-plus/

Try disabling the UAS mode with usb-storage.quirks option as explained in this WiKi page.
https://wiki.odroid.com/odroid-xu4/os_i ... s_and_tips

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 6:25 pm

thank you, I'll try that.
It is a third party SATA3 to USB3.0 external enclosure, not an official ODROID one.

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 7:24 pm

Can you please tell me how to modify the boot.ini to try to make it work with this controller? I read the Wiki, but I don't understand where it's taking those IDs from:
usb-storage.quirks=0x0bc2:0x2322:u

Also you mentioned that for my controller the VID:PID is 152D:0578, but in the lususb output I see 152d:1337, so I don't understand where you found those IDs...
Also I don't understand what the third ID is on the quirks command, because the VID:PID is only two IDs but that quirks thing seems to need 3 IDs...

Can you please make it a bit more clear?

Thank you!

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 8:05 pm

I think what you mean is that 152D:0578 is the ID pair for the official ODROID contorller while my ID pair is 152D:1337.

I've tried replacing this line:

if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi

with this line

if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x152D:0x1337:0x0004"; fi

in boot. ini, but it did not help, fdisk -l still does not show the external drive.

User avatar
tobetter
Posts: 4260
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: X, X2, U2, U3, XU3, C1
Location: Paju, South Korea
Has thanked: 58 times
Been thanked: 234 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by tobetter » Tue Nov 06, 2018 9:36 pm

Your boot.ini should be modified like this, not usbhid.quirks which is for USB input device.
usb-storage.quirks=0x152d:0x1337:u
Please try again to find usb-storage.quirks or post your boot.ini if you are not sure.

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 9:51 pm

Thank you!

There is a single quirks entry in boot.ini, and that is the usbhid.quirks, there is no usb-storage.quirks:

Code: Select all

ODROIDXU-UBOOT-CONFIG

# U-Boot Parameters
setenv initrd_high "0xffffffff"
setenv fdt_high "0xffffffff"

# Mac address configuration
setenv macaddr "00:1e:06:61:7a:39"

# --- Screen Configuration for HDMI --- # 
# ---------------------------------------
# Uncomment only ONE line! Leave all commented for automatic selection.
# Uncomment only the setenv line!
# ---------------------------------------
# ODROID-VU forced resolution
# setenv videoconfig "video=HDMI-A-1:1280x800@60"
# -----------------------------------------------
# ODROID-VU forced EDID
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x800.bin"
# -----------------------------------------------
# 1920x1200 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_60hz.bin"
# -----------------------------------------------
# 1920x1200 30hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_30hz.bin"
# -----------------------------------------------
# 1920x1080 (1080P) with monitor provided EDID information. (1080p-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@60"
# -----------------------------------------------
# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
# -----------------------------------------------
# 1920x1080 50hz (1080P) with monitor provided EDID information. (1080p 50hz-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@50"
# -----------------------------------------------
# 1920x1080 50hz (1080P) without monitor data using generic information (1080p 50hz-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_50hz.bin"
# -----------------------------------------------
# 1920x1080 24Hz (1080P) without monitor data using generic information (1080p 24hz-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_24hz.bin"
# -----------------------------------------------
# 1920x1080 23.976Hz (1080P) without monitor data using generic information (1080p 23.976hz-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_23_976hz.bin"
# -----------------------------------------------
# 1920x800 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x800.bin"
# -----------------------------------------------
# 1792x1344 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1792x1344.bin"
# -----------------------------------------------
# 1680x1050 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1680x1050.bin"
# -----------------------------------------------
# 1600x1200 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x1200.bin"
# -----------------------------------------------
# 1600x900 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x900.bin"
# -----------------------------------------------
# 1400x1050 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1400x1050.bin"
# -----------------------------------------------
# 1440x900 with monitor provided EDID information.
# setenv videoconfig "video=HDMI-A-1:1440x900@60"
# -----------------------------------------------
# 1440x900 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1440x900.bin"
# -----------------------------------------------
# 1366x768 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1366x768.bin"
# -----------------------------------------------
# 1360x768 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1360x768.bin"
# -----------------------------------------------
# 1280x1024 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x1024.bin"
# -----------------------------------------------
# 1280x768 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x768.bin"
# -----------------------------------------------
# 1280x720 (720P) with monitor provided EDID information. (720p-edid)
# setenv videoconfig "video=HDMI-A-1:1280x720@60"
# -----------------------------------------------
# 1280x720 (720P) without monitor data using generic information (720p-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x720.bin"
# -----------------------------------------------
# 1152x864 75hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1152x864_75hz.bin"
# -----------------------------------------------
# 1024x768 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x768.bin"
# -----------------------------------------------
# 1024x600 without monitor data using generic information (ODROID VU7+)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x600.bin"
# -----------------------------------------------
# 800x600 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x600.bin"
# -----------------------------------------------
# 848x480 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/848x480.bin"
# -----------------------------------------------
# 800x480 without monitor data using generic information (ODROID 7")
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x480.bin"
# -----------------------------------------------
# 720x576 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x576.bin"
# -----------------------------------------------
# 720x480 without monitor data using generic information 
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x480.bin"
# -----------------------------------------------
# 640x480 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/640x480.bin"
# -----------------------------------------------
# 480x800 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x800.bin"
# -----------------------------------------------
# 480x320 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x320.bin"

# --- HDMI / DVI Mode Selection ---
# ------------------------------------------
# - HDMI Mode
setenv vout "hdmi"
# - DVI Mode (disables sound over HDMI as per DVI compat)
# setenv vout "dvi"

# --- HDMI CEC Configuration ---
# ------------------------------------------
setenv cecenable "false" # false or true
# set to true to enable HDMI CEC

# Enable/Disable ODROID-VU7 Touchsreen
setenv disable_vu7 "false" # false

# DRAM Frequency
# Sets the LPDDR3 memory frequency
# Supported values: 933 825 728 633 (MHZ)
setenv ddr_freq 825

# External watchdog board enable
setenv external_watchdog "false"
# debounce time set to 3 ~ 10 sec, default 3 sec
setenv external_watchdog_debounce "3"


#------------------------------------------------------------------------------
#
# HDMI Hot Plug detection
#
#------------------------------------------------------------------------------
#
# Forces the HDMI subsystem to ignore the check if the cable is connected or 
# not.
# false : disable the detection and force it as connected.
# true : let cable, board and monitor decide the connection status.
# 
# default: true
# 
#------------------------------------------------------------------------------
setenv HPD "true"

#------------------------------------------------------------------------------------------------------
# Basic Ubuntu Setup. Don't touch unless you know what you are doing.
# --------------------------------
setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro fsck.repair=yes net.ifnames=0"


# Load kernel, initrd and dtb in that sequence
fatload mmc 0:1 0x40008000 zImage
fatload mmc 0:1 0x42000000 uInitrd

setenv fdtloaded "false"
if test "x${board_name}" = "x"; then setenv board_name "xu4"; fi
if test "${board_name}" = "xu4"; then fatload mmc 0:1 0x44000000 exynos5422-odroidxu4.dtb; setenv fdtloaded "true"; fi
if test "${board_name}" = "xu3"; then fatload mmc 0:1 0x44000000 exynos5422-odroidxu3.dtb; setenv fdtloaded "true"; fi
if test "${board_name}" = "xu3l"; then fatload mmc 0:1 0x44000000 exynos5422-odroidxu3-lite.dtb; setenv fdtloaded "true"; fi
if test "${fdtloaded}" = "false"; then fatload mmc 0:1 0x44000000 exynos5422-odroidxu4.dtb; setenv fdtloaded "true"; fi

fdt addr 0x44000000

setenv hdmi_phy_control "HPD=${HPD} vout=${vout}"
if test "${cecenable}" = "false"; then fdt rm /cec@101B0000; fi
if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi
if test "${external_watchdog}" = "true"; then setenv external_watchdog "external_watchdog=${external_watchdog} external_watchdog_debounce=${external_watchdog_debounce}"; fi

# final boot args
setenv bootargs "${bootrootfs} ${videoconfig} ${hdmi_phy_control} ${hid_quirks} smsc95xx.macaddr=${macaddr} ${external_watchdog}"

# set DDR frequency
dmc ${ddr_freq}

# Boot the board
bootz 0x40008000 0x42000000 0x44000000

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Tue Nov 06, 2018 10:15 pm

What is extremely strange is that without any change, if I put a 2.5" HDD into this rack, it is detected and shown by fdisk -l. If I put the Samsung Evo 860 SSD in it, it is not detected. But the same Samsung Evo 860 SSD is detected with another rack... very very strange...

User avatar
tobetter
Posts: 4260
Joined: Mon Feb 25, 2013 10:55 am
languages_spoken: Korean, English
ODROIDs: X, X2, U2, U3, XU3, C1
Location: Paju, South Korea
Has thanked: 58 times
Been thanked: 234 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by tobetter » Tue Nov 06, 2018 10:35 pm

Un4Seen wrote:What is extremely strange is that without any change, if I put a 2.5" HDD into this rack, it is detected and shown by fdisk -l. If I put the Samsung Evo 860 SSD in it, it is not detected. But the same Samsung Evo 860 SSD is detected with another rack... very very strange...
That's strange...
Anyway, you can usb-storage.quirks=0x152d:0x1337:u to the line setenv bootargs.
Eventually, it would be like this...but don't know what this part is missing from your boot.ini.

Code: Select all

setenv bootargs "${bootrootfs} ${videoconfig} ${hdmi_phy_control} ${hid_quirks} smsc95xx.macaddr=${macaddr} usb-storage.quirks=0x152d:0x1337:u ${external_watchdog}"

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Wed Nov 07, 2018 4:27 am

Thank you!

This indeed solves the problem. Now the controller is detected including with the SSD. I wonder what it really does, though... does it somehow change the way the controller is addressed and can it cause performance degradation?

User avatar
mad_ady
Posts: 6861
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1, H2, N2
Location: Bucharest, Romania
Has thanked: 237 times
Been thanked: 177 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by mad_ady » Thu Nov 08, 2018 1:30 am

It forces the disk to work in usb-storage mode instead of uas. It impacts top performance of the disk in some cases.

Un4Seen
Posts: 182
Joined: Thu Apr 10, 2014 6:16 pm
languages_spoken: english, hungarian, romanian
Location: Romania
Has thanked: 0
Been thanked: 0
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by Un4Seen » Thu Nov 08, 2018 2:00 am

Thank you!

I tried testing read speed with "hdparm -Tt /dev/sda", to see what the read speed is for the SSD over USB 3.0 and it gave me values of around 1000MB/s, which seems too high. It also gave me similar values for a HDD attached to the other USB 3.0 for, so the values must be wrong. I looked for read/write speed testing command line utilities under Linux, but they all seem awkward... So I don't really know how the SSD behaves now with the XU4, but it does not matter very much because performance is not my primary concern. Reliability and power usage is. I now have a multi-purpose server made from an XU4, an SSD and a HDD and the total power usage is barely over 6 Watts when there is no read/write going on. It climbs up to around 9 Watts when massive I/O is happening. That's quite an eco-friendly multi-purpose server, I would say!

User avatar
mad_ady
Posts: 6861
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1, H2, N2
Location: Bucharest, Romania
Has thanked: 237 times
Been thanked: 177 times
Contact:

Re: Samsung Evo 860 SSD not recognized by ODROID XU4

Unread post by mad_ady » Thu Nov 08, 2018 3:44 am

Hdparm is no longer reliable for these kinds of measurements. Best tool seems to be iozone, but its output may be difficult to interpret. Even with usb-storage mode you should get around 100MB/s transfer speeds.

Post Reply

Return to “Hardware and peripherals”

Who is online

Users browsing this forum: No registered users and 1 guest