All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 11 posts ] 
Author Message
 Post subject: SanDisk Terminal Commands
PostPosted: October 6th, 2017, 15:08 
Offline
User avatar

Joined: December 8th, 2013, 4:48
Posts: 641
Location: Pakistan
Hi, anyone familiar with terminal commands for Sandisk with Marvel Controller ?

Quote:
debug> ?
--- internal commands ---
dumpstack Download stack dump
setstr Device Self-Throttle enable / disable
setgpio Set GPIO pin to output and configure it as HIGH / LOW
devsleep Set GPIO pin 3 to input and configure it as LOW, GPIO pin 4 to output and configure it as HIGH
showhistory Prints cyclic 10KB UART buffer of the last commands
loghistory Device history logging enable / disable
hndlSTDecom Handle Self-Test Decomission by PS
readmp Read star meta page
writemp Write star meta page
setpscnt Set OS counter for test purpose
dstmode Retreive device selftest mode status
test a short description of the command
esc ANSI Escape Sequences
format Format flash
flash_id Flash ID
setfparam Set flash parameters
readmpecc Read MPECC for given buffer address
dppsynd Print DPP syndrome pointer and value for 512 block data.
show Show internal variables of a module
chkbblimit Verify bad block limit
dump Show content of Error Buffer
load Load binary file to specified address
save Save number of bytes from specified address
tmGetPlc Get PLC in test mode
tmGetElc Get ELC in test mode
readmem Dump memory
writemem Write to memory
setup Setup UART hardware
setmode Set mode of Monitor
setddr Set DDR Mode
setfeat Set Features
getfeat Get Features
getdiefeat Get Features
execcmd Execute simple command
spmDDR spmDDR
regfuse Read regfuse
pulldownpins Pull down all VG Ctrl and IO Pins
ersblks Erase Blocks on all planes
iersblks Direct mode Erase Blocks on all planes
write Write starting at the ce, die, block, page, channel, and plane specified for the requested # of AUs with 00 or AA pattern
read Read starting at the Die, Block, Page, Channel, CEn, Plane, and AU specified for the requested # of AUs
flgp Perform FLGP
fold Fold metapage from X3
romfuse Erase/Reset XDL or Write Romfuse table of channel, CEn and Die
bblatch Check Bad Block Latch NAND issue
readbadcol Read bad block column data from Flash
starRead Read vba+star from flash
stariRead Read vba+star from flash
iread indirect Read page
iwrite indirect Write page
readdeviceid Read the device ID from channel 0 Chip 0
loopback set loopback on NAND flashs
ecu change ecu configuration
MEM Send Command byte to Flash
mbbt Show factory Bad Block list
AddPhyBlkToGBBT Add physical block to the grown defect list with an option to save to the flash
gbbt Show Grown Bad Block list
getpowertokens Print the used active power tokens
toggleGPIOs Toggle GPIOs based on input data
readreg read register
writereg write register
convert convert hex/dec value to hex/dec/bin
getCBRConfig Displays CBR (Cold Block Replacement) configuration Parameters
SecureErase to test secure erase
vba2pba convert VBA to PBA
event raise event
setStopOnUECC Enable / Disable Stop on UECC
starpm activate power management for STAR
starEraseLogs Erase STAR LOG blocks to force format
eraseWA nullify WA counters
raidparity dump parity data in RAID buffer
setraidflag dump XOR information
XferNonOverlap_UT Unit Test for PS_EH_XOR_XferNonOverlap()
preventdipmslumber Enable internal DIPM slumber transition ability
setxortrap Enable internal trap for XOR miscompare on Python test
forcefatal Force Fatal Failure on the device at a given time/state
ddl Allocates buffer and download data to the device
freebuf Frees buffer previously allocated buffer. Command frees memory allocated by data transfer command (see ddl)
wsflash Writes previously allocated and filled buffer to serial flash
rsflash Read data from serial flash
esflash Erases specifid count of sectors starting from given address
gettemp Get device temperature
psuecclistenable Uecc List - enable
psut PS UT
rdfile Download file from FS
wrfile Upload file to FS
encdis Enable / Diable output encoding
mstdis Disable MST test
ffdumpdis Enable / Disable FF Dump
psgetec PS get star information on physical block
SetPSLoggingLevel set PS Error log logging level
cvd Get Vt Distribution
setpsdelay set delay for PS operation
calsensor Calibrates sensors offsets
stddr Calibrates sensor offset
getEfuse9 getEfuse9
ctest Connectivity test for flash and DDR
ONFITiming Switch I/F timing mode
setBBM setBBM
getBBM getBBM
MetaData_check Perform Metadata check
setbackground Enable / Diable STAR background operations
--- diagnostic commands ---
eraseblock 81 Erase number of blocks per plane
testdiag1 f0 dummy diagnostic command for testing
testdiag2 f1 dummy diagnostic command for testing (long cmd)
testdiag3 f2 dummy diagnostic command for testing (write cmd)
testdiag4 f3 dummy diagnostic command for testing (read cmd)

Usage of any diagnostic command:
[opcode/name] [total_count] [direction] [client_ID] [CDB]

[total_count] - size of transmitted/received data in sectors
[direction] - direction of the transfer
(0 - write, 1 - read, 2 - no data transfer)
[client_ID] - ID of the Command Dispatcher client
[CDB] - comma separated array of 16 bytes.
The first byte is opcode of the command.
Meaning of the rest bytes is command depended.

If the command issued without arguments Xmodem receiving will be
started to receive from host SCTP Command Frame.

OK
debug>


The said SSD is Sandisk m.2 2280 512GB with Marvel controller, it does respond via terminal else no ID.
any guidance will be highly appreciated.

thanks in advance.

_________________
Data Recovery Pakistan


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 6th, 2017, 17:16 
Offline

Joined: October 24th, 2014, 4:57
Posts: 212
Location: Remote Raid Help on planet Earth
List of terminal commands are able to get by terminal.

_________________
http://www.alfadatarecovery.com


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 6th, 2017, 17:51 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 9783
Location: Australia
You might like to analyse some firmware updates. There may be some useful documentation embedded in the code.

SanDisk Ultra+ SSD Manual Firmware update version X2316RL:
https://kb.sandisk.com/app/answers/detail/a_id/12762/~/sandisk-ultra%2B-ssd-manual-firmware-update-version-x2316rl
http://downloads.sandisk.com/downloads/ssd/iso/SDSSDH2-128G.iso

You might find this info useful:
http://forum.hddguru.com/download/file.php?id=14183

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 6th, 2017, 20:17 
Offline

Banned User

Joined: May 11th, 2017, 17:10
Posts: 236
Location: Iran
MindMergepk wrote:
Hi, anyone familiar with terminal commands for Sandisk with Marvel Controller ?

Quote:
debug> ?
--- internal commands ---
dumpstack Download stack dump
setstr Device Self-Throttle enable / disable
setgpio Set GPIO pin to output and configure it as HIGH / LOW
devsleep Set GPIO pin 3 to input and configure it as LOW, GPIO pin 4 to output and configure it as HIGH
showhistory Prints cyclic 10KB UART buffer of the last commands
loghistory Device history logging enable / disable
hndlSTDecom Handle Self-Test Decomission by PS
readmp Read star meta page
writemp Write star meta page
setpscnt Set OS counter for test purpose
dstmode Retreive device selftest mode status
test a short description of the command
esc ANSI Escape Sequences
format Format flash
flash_id Flash ID
setfparam Set flash parameters
readmpecc Read MPECC for given buffer address
dppsynd Print DPP syndrome pointer and value for 512 block data.
show Show internal variables of a module
chkbblimit Verify bad block limit
dump Show content of Error Buffer
load Load binary file to specified address
save Save number of bytes from specified address
tmGetPlc Get PLC in test mode
tmGetElc Get ELC in test mode
readmem Dump memory
writemem Write to memory
setup Setup UART hardware
setmode Set mode of Monitor
setddr Set DDR Mode
setfeat Set Features
getfeat Get Features
getdiefeat Get Features
execcmd Execute simple command
spmDDR spmDDR
regfuse Read regfuse
pulldownpins Pull down all VG Ctrl and IO Pins
ersblks Erase Blocks on all planes
iersblks Direct mode Erase Blocks on all planes
write Write starting at the ce, die, block, page, channel, and plane specified for the requested # of AUs with 00 or AA pattern
read Read starting at the Die, Block, Page, Channel, CEn, Plane, and AU specified for the requested # of AUs
flgp Perform FLGP
fold Fold metapage from X3
romfuse Erase/Reset XDL or Write Romfuse table of channel, CEn and Die
bblatch Check Bad Block Latch NAND issue
readbadcol Read bad block column data from Flash
starRead Read vba+star from flash
stariRead Read vba+star from flash
iread indirect Read page
iwrite indirect Write page
readdeviceid Read the device ID from channel 0 Chip 0
loopback set loopback on NAND flashs
ecu change ecu configuration
MEM Send Command byte to Flash
mbbt Show factory Bad Block list
AddPhyBlkToGBBT Add physical block to the grown defect list with an option to save to the flash
gbbt Show Grown Bad Block list
getpowertokens Print the used active power tokens
toggleGPIOs Toggle GPIOs based on input data
readreg read register
writereg write register
convert convert hex/dec value to hex/dec/bin
getCBRConfig Displays CBR (Cold Block Replacement) configuration Parameters
SecureErase to test secure erase
vba2pba convert VBA to PBA
event raise event
setStopOnUECC Enable / Disable Stop on UECC
starpm activate power management for STAR
starEraseLogs Erase STAR LOG blocks to force format
eraseWA nullify WA counters
raidparity dump parity data in RAID buffer
setraidflag dump XOR information
XferNonOverlap_UT Unit Test for PS_EH_XOR_XferNonOverlap()
preventdipmslumber Enable internal DIPM slumber transition ability
setxortrap Enable internal trap for XOR miscompare on Python test
forcefatal Force Fatal Failure on the device at a given time/state
ddl Allocates buffer and download data to the device
freebuf Frees buffer previously allocated buffer. Command frees memory allocated by data transfer command (see ddl)
wsflash Writes previously allocated and filled buffer to serial flash
rsflash Read data from serial flash
esflash Erases specifid count of sectors starting from given address
gettemp Get device temperature
psuecclistenable Uecc List - enable
psut PS UT
rdfile Download file from FS
wrfile Upload file to FS
encdis Enable / Diable output encoding
mstdis Disable MST test
ffdumpdis Enable / Disable FF Dump
psgetec PS get star information on physical block
SetPSLoggingLevel set PS Error log logging level
cvd Get Vt Distribution
setpsdelay set delay for PS operation
calsensor Calibrates sensors offsets
stddr Calibrates sensor offset
getEfuse9 getEfuse9
ctest Connectivity test for flash and DDR
ONFITiming Switch I/F timing mode
setBBM setBBM
getBBM getBBM
MetaData_check Perform Metadata check
setbackground Enable / Diable STAR background operations
--- diagnostic commands ---
eraseblock 81 Erase number of blocks per plane
testdiag1 f0 dummy diagnostic command for testing
testdiag2 f1 dummy diagnostic command for testing (long cmd)
testdiag3 f2 dummy diagnostic command for testing (write cmd)
testdiag4 f3 dummy diagnostic command for testing (read cmd)

Usage of any diagnostic command:
[opcode/name] [total_count] [direction] [client_ID] [CDB]

[total_count] - size of transmitted/received data in sectors
[direction] - direction of the transfer
(0 - write, 1 - read, 2 - no data transfer)
[client_ID] - ID of the Command Dispatcher client
[CDB] - comma separated array of 16 bytes.
The first byte is opcode of the command.
Meaning of the rest bytes is command depended.

If the command issued without arguments Xmodem receiving will be
started to receive from host SCTP Command Frame.

OK
debug>


The said SSD is Sandisk m.2 2280 512GB with Marvel controller, it does respond via terminal else no ID.
any guidance will be highly appreciated.

thanks in advance.


thanks

_________________
Mohammad Mazaheri

Email: mazaheri.online@gmail.com

Mobile: +989185005214


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 7th, 2017, 16:36 
Offline
User avatar

Joined: December 8th, 2013, 4:48
Posts: 641
Location: Pakistan
Martin wrote:
List of terminal commands are able to get by terminal.


already posted the available commands in my post, cant find anything for Translators...

_________________
Data Recovery Pakistan


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 7th, 2017, 16:57 
Offline

Joined: October 24th, 2014, 4:57
Posts: 212
Location: Remote Raid Help on planet Earth
MindMergepk wrote:
Martin wrote:
List of terminal commands are able to get by terminal.


already posted the available commands in my post, cant find anything for Translators...


Actually it was my joke, sorry. You provide the list of command set with description and asking for description :)

_________________
http://www.alfadatarecovery.com


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 7th, 2017, 17:20 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 9783
Location: Australia
Quote:
Usage:
setmode [mode]

Valid values for [mode]:

debug (default)
diagnostic

In diagnostic mode Monitor runs from Diagnostic Task. In debug mode Monitor runs from UART ISR.

Quote:
Invalid parameters. Type '? %s' for the syntax info.

diagnostic

Invalid mode. Mode can be either 'debug' or 'diagnostic'.

For example ...

    ? vba2pba

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 7th, 2017, 18:00 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 9783
Location: Australia
@MindMergepk, I could write a ZOC script to retrieve all the extended usage info for all the listed commands. To this end it would help if you could test the "? vba2pba" command to see if it works as expected.

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 8th, 2017, 2:48 
Offline
User avatar

Joined: December 8th, 2013, 4:48
Posts: 641
Location: Pakistan
Martin wrote:
MindMergepk wrote:
Martin wrote:
List of terminal commands are able to get by terminal.


already posted the available commands in my post, cant find anything for Translators...


Actually it was my joke, sorry. You provide the list of command set with description and asking for description :)


i did't ask for description, i ask if anyone familiar..

_________________
Data Recovery Pakistan


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 8th, 2017, 2:49 
Offline
User avatar

Joined: December 8th, 2013, 4:48
Posts: 641
Location: Pakistan
fzabkar wrote:
@MindMergepk, I could write a ZOC script to retrieve all the extended usage info for all the listed commands. To this end it would help if you could test the "? vba2pba" command to see if it works as expected.


here it is:

Quote:
debug>
debug> ? vba2pba
usage: vba2pba [hex value of VBA] [star]


OK
debug>

_________________
Data Recovery Pakistan


Top
 Profile  
 
 Post subject: Re: SanDisk Terminal Commands
PostPosted: October 8th, 2017, 5:53 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 9783
Location: Australia
Not tested ...

You might like to test the script with a single command, eg "? setmode". You will need to edit the SD_CMDS.TXT file to do this. If it works as hoped, then try the full set of commands.


Attachments:
SanDisk.rar [1.08 KiB]
Downloaded 74 times

_________________
A backup a day keeps DR away.
Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group