- Added arbitrary strings as drive number in the path name. (_STR_VOLUME_ID) - Added a configuration option of minimum sector size. (_MIN_SS) - 2nd argument of f_rename() can have a drive number and it will be ignored. - Fixed f_mount() with forced mount fails when drive number is >= 1. - Fixed f_close() invalidates the file object without volume lock. - Fixed f_closedir() returns but the volume lock is left acquired. - Fixed creation of an entry with LFN fails on too many SFN collisions.
		
			
				
	
	
		
			76 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | |
| <html lang="en">
 | |
| <head>
 | |
| <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 | |
| <meta http-equiv="Content-Style-Type" content="text/css">
 | |
| <link rel="up" title="FatFs" href="../00index_e.html">
 | |
| <link rel="alternate" hreflang="ja" title="Japanese" href="../ja/dioctl.html">
 | |
| <link rel="stylesheet" href="../css_e.css" type="text/css" media="screen" title="ELM Default">
 | |
| <title>FatFs - disk_ioctl</title>
 | |
| </head>
 | |
| 
 | |
| <body>
 | |
| 
 | |
| <div class="para func">
 | |
| <h2>disk_ioctl</h2>
 | |
| <p>The disk_ioctl function cntrols device specific features and miscellaneous functions other than generic read/write.</p>
 | |
| <pre>
 | |
| DRESULT disk_ioctl (
 | |
|   BYTE <span class="arg">pdrv</span>,     <span class="c">/* [IN] Drive number */</span>
 | |
|   BYTE <span class="arg">cmd</span>,      <span class="c">/* [IN] Control command code */</span>
 | |
|   void* <span class="arg">buff</span>     <span class="c">/* [I/O] Parameter and data buffer */</span>
 | |
| );
 | |
| </pre>
 | |
| </div>
 | |
| 
 | |
| <div class="para arg">
 | |
| <h4>Parameters</h4>
 | |
| <dl class="par">
 | |
| <dt>pdrv</dt>
 | |
| <dd>Physical drive number to identify the target device.</dd>
 | |
| <dt>cmd</dt>
 | |
| <dd>Command code.</dd>
 | |
| <dt>buff</dt>
 | |
| <dd>Pointer to the parameter depends on the command code. Do not care if no parameter to be passed.</dd>
 | |
| </dl>
 | |
| </div>
 | |
| 
 | |
| 
 | |
| <div class="para ret">
 | |
| <h4>Return Value</h4>
 | |
| <dl class="ret">
 | |
| <dt>RES_OK (0)</dt>
 | |
| <dd>The function succeeded.</dd>
 | |
| <dt>RES_ERROR</dt>
 | |
| <dd>An error occured.</dd>
 | |
| <dt>RES_PARERR</dt>
 | |
| <dd>The command code or parameter is invalid.</dd>
 | |
| <dt>RES_NOTRDY</dt>
 | |
| <dd>The device has not been initialized.</dd>
 | |
| </dl>
 | |
| </div>
 | |
| 
 | |
| 
 | |
| <div class="para desc">
 | |
| <h4>Description</h4>
 | |
| <p>The FatFs module uses only device independent commands described below. Any device dependent functions and user defined functions are not used.</p>
 | |
| <table class="lst">
 | |
| <tr><th>Command</th><th>Description</th></tr>
 | |
| <tr><td>CTRL_SYNC</td><td>Make sure that the device has finished pending write process. If the disk I/O module has a write back cache, the dirty buffers must be written back to the media immediately. If each write operation to the media is completed within the <tt>disk_write()</tt> function, nothing to do for this command.</td></tr>
 | |
| <tr><td>GET_SECTOR_COUNT</td><td>Returns number of available sectors on the drive into the <tt>DWORD</tt> variable pointed by <tt class="arg">buff</tt>. This command is used by only <tt>f_mkfs()</tt> and <tt>f_fdisk()</tt> function to determine the volume/partition size to be created.</td></tr>
 | |
| <tr><td>GET_SECTOR_SIZE</td><td>Returns sector size of the media into the <tt>WORD</tt> variable pointed by <tt class="arg">buff</tt>. Valid return values of this command are 512, 1024, 2048 or 4096. This command is never used at fixed sector size configuration, <tt>_MAX_SS == _MIN_SS</tt>, and it must work at that sector size.</td></tr>
 | |
| <tr><td>GET_BLOCK_SIZE</td><td>Returns erase block size of the flash memory in unit of sector into the <tt>DWORD</tt> variable pointed by <tt class="arg">buff</tt>. The allowable value is from 1 to 32768 in power of 2. Return 1 if the erase block size is unknown or disk media. This command is used by only <tt>f_mkfs()</tt> function and it attempts to align data area to the erase block boundary.</td></tr>
 | |
| <tr><td>CTRL_ERASE_SECTOR</td><td>Erases a part of the flash memory specified by a <tt>DWORD</tt> array {<start sector>, <end sector>} pointed by <tt class="arg">buff</tt>. This is similar command to Trim command of ATA device. When this feature is not supported or not a flash memory media, nothing to do for this command. The FatFs does not check the result code and the file function is not affected even if the sectors ware not erased well. This command is called on removing a cluster chain and <tt>f_mkfs()</tt> function when <tt>_USE_ERASE</tt> is 1.</td></tr>
 | |
| </table>
 | |
| </div>
 | |
| 
 | |
| <div class="para comp">
 | |
| <h4>QuickInfo</h4>
 | |
| <p>This function is not needed when <tt>_FS_READONLY == 1</tt> and <tt>_MAX_SS == _MIN_SS</tt>.</p>
 | |
| </div>
 | |
| 
 | |
| 
 | |
| <p class="foot"><a href="../00index_e.html">Return</a></p>
 | |
| </body>
 | |
| </html>
 |