📄 memory.htm
字号:
<P><STRONG><a name="[d77320]"></a>MSC_SetCSW</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb3fa8]">>></a> USB_WriteEP
<LI><a href="#[117afd0]">>></a> __aeabi_uwrite4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
<LI><a href="#[d77034]"><<</a> MSC_TestUnitReady
<LI><a href="#[d77130]"><<</a> DataInFormat
<LI><a href="#[d771ac]"><<</a> MSC_RWSetup
<LI><a href="#[d77224]"><<</a> MSC_MemoryVerify
<LI><a href="#[d772a4]"><<</a> MSC_MemoryWrite
<LI><a href="#[d7b7f8]"><<</a> MSC_BulkOut
<LI><a href="#[d7b870]"><<</a> MSC_BulkIn
</UL>
<P><STRONG><a name="[d772a4]"></a>MSC_MemoryWrite</STRONG> (Thumb, 232 bytes, Stack size 16 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = MSC_MemoryWrite -> SD_WRITE -> SD_write_sector -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d76bdc]">>></a> SD_WRITE
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[117afd0]">>></a> __aeabi_uwrite4 (via Veneer)
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d7b7f8]"><<</a> MSC_BulkOut
</UL>
<P><STRONG><a name="[d77224]"></a>MSC_MemoryVerify</STRONG> (Thumb, 180 bytes, Stack size 16 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_MemoryVerify -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[117afd0]">>></a> __aeabi_uwrite4 (via Veneer)
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d7b7f8]"><<</a> MSC_BulkOut
</UL>
<P><STRONG><a name="[d771ac]"></a>MSC_RWSetup</STRONG> (Thumb, 108 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = MSC_RWSetup -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d77130]"></a>DataInFormat</STRONG> (Thumb, 72 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d76d40]"><<</a> MSC_ReadFormatCapacity
<LI><a href="#[d76dc4]"><<</a> MSC_ReadCapacity
<LI><a href="#[d76e44]"><<</a> MSC_ModeSense10
<LI><a href="#[d76ec0]"><<</a> MSC_ModeSense6
<LI><a href="#[d76f3c]"><<</a> MSC_Inquiry
<LI><a href="#[d76fb4]"><<</a> MSC_RequestSense
</UL>
<P><STRONG><a name="[d770b4]"></a>DataInTransfer</STRONG> (Thumb, 82 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = DataInTransfer -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb3fa8]">>></a> USB_WriteEP
<LI><a href="#[117afd0]">>></a> __aeabi_uwrite4 (via Veneer)
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d76d40]"><<</a> MSC_ReadFormatCapacity
<LI><a href="#[d76dc4]"><<</a> MSC_ReadCapacity
<LI><a href="#[d76e44]"><<</a> MSC_ModeSense10
<LI><a href="#[d76ec0]"><<</a> MSC_ModeSense6
<LI><a href="#[d76f3c]"><<</a> MSC_Inquiry
<LI><a href="#[d76fb4]"><<</a> MSC_RequestSense
</UL>
<P><STRONG><a name="[d77034]"></a>MSC_TestUnitReady</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = MSC_TestUnitReady -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76fb4]"></a>MSC_RequestSense</STRONG> (Thumb, 142 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_RequestSense -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76f3c]"></a>MSC_Inquiry</STRONG> (Thumb, 164 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_Inquiry -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76ec0]"></a>MSC_ModeSense6</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_ModeSense6 -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76e44]"></a>MSC_ModeSense10</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_ModeSense10 -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76dc4]"></a>MSC_ReadCapacity</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_ReadCapacity -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76d40]"></a>MSC_ReadFormatCapacity</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MSC_ReadFormatCapacity -> DataInFormat -> MSC_SetCSW -> USB_WriteEP</UL>
<BR>[Calls]<UL><LI><a href="#[d770b4]">>></a> DataInTransfer
<LI><a href="#[d77130]">>></a> DataInFormat
</UL>
<BR>[Called By]<UL><LI><a href="#[d76cc8]"><<</a> MSC_GetCBW
</UL>
<P><STRONG><a name="[d76cc8]"></a>MSC_GetCBW</STRONG> (Thumb, 524 bytes, Stack size 16 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 132<LI>Call Chain = MSC_GetCBW -> MSC_MemoryRead -> SD_READ -> SD_Read_Block -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d76c54]">>></a> SD_READ
<LI><a href="#[d76d40]">>></a> MSC_ReadFormatCapacity
<LI><a href="#[d76dc4]">>></a> MSC_ReadCapacity
<LI><a href="#[d76e44]">>></a> MSC_ModeSense10
<LI><a href="#[d76ec0]">>></a> MSC_ModeSense6
<LI><a href="#[d76f3c]">>></a> MSC_Inquiry
<LI><a href="#[d76fb4]">>></a> MSC_RequestSense
<LI><a href="#[d77034]">>></a> MSC_TestUnitReady
<LI><a href="#[d771ac]">>></a> MSC_RWSetup
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[d77398]">>></a> MSC_MemoryRead
<LI><a href="#[117afd0]">>></a> __aeabi_uwrite4 (via Veneer)
<LI><a href="#[117b438]">>></a> __aeabi_uread4 (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[d7b7f8]"><<</a> MSC_BulkOut
</UL>
<P><STRONG><a name="[d7b870]"></a>MSC_BulkIn</STRONG> (Thumb, 130 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 124<LI>Call Chain = MSC_BulkIn -> MSC_MemoryRead -> SD_READ -> SD_Read_Block -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d77320]">>></a> MSC_SetCSW
<LI><a href="#[d77398]">>></a> MSC_MemoryRead
</UL>
<BR>[Called By]<UL><LI><a href="#[d7bf34]"><<</a> USB_EndPoint2
</UL>
<P><STRONG><a name="[d7b7f8]"></a>MSC_BulkOut</STRONG> (Thumb, 90 bytes, Stack size 8 bytes, mscuser.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 140<LI>Call Chain = MSC_BulkOut -> MSC_GetCBW -> MSC_MemoryRead -> SD_READ -> SD_Read_Block -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[cb4020]">>></a> USB_ReadEP
<LI><a href="#[cb4114]">>></a> USB_SetStallEP
<LI><a href="#[d76cc8]">>></a> MSC_GetCBW
<LI><a href="#[d77224]">>></a> MSC_MemoryVerify
<LI><a href="#[d772a4]">>></a> MSC_MemoryWrite
<LI><a href="#[d77320]">>></a> MSC_SetCSW
</UL>
<BR>[Called By]<UL><LI><a href="#[d7bf34]"><<</a> USB_EndPoint2
</UL>
<P><STRONG><a name="[d9202c]"></a>main</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, memory.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = main -> SD_INIT -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[cb4568]">>></a> USB_Connect
<LI><a href="#[cb45e0]">>></a> USB_Init
<LI><a href="#[d91f40]">>></a> spi_init
<LI><a href="#[d91fb8]">>></a> SD_INIT (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[d8fcbc]"></a>SPI_RW</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, sd.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[d8fb44]"><<</a> SD_Read_Block
<LI><a href="#[d8fbc0]"><<</a> SD_write_sector
<LI><a href="#[d8fc3c]"><<</a> Write_Command_SD
<LI><a href="#[d91f40]"><<</a> spi_init
<LI><a href="#[d91fb8]"><<</a> SD_INIT (via Veneer)
</UL>
<P><STRONG><a name="[d91f40]"></a>spi_init</STRONG> (Thumb, 72 bytes, Stack size 4 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = spi_init</UL>
<BR>[Calls]<UL><LI><a href="#[d8fcbc]">>></a> SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[d9202c]"><<</a> main
</UL>
<P><STRONG><a name="[d8fc3c]"></a>Write_Command_SD</STRONG> (Thumb, 100 bytes, Stack size 16 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[d8fcbc]">>></a> SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[d8fb44]"><<</a> SD_Read_Block
<LI><a href="#[d8fbc0]"><<</a> SD_write_sector
<LI><a href="#[d91fb8]"><<</a> SD_INIT (via Veneer)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -