RT1064: USB Devices can not give 64k write and read buffer

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

RT1064: USB Devices can not give 64k write and read buffer

702 Views
DCJJJJ
Contributor I

Hi:

   Now, Our RT1064 has a External Flash(S25FL128S) , This Flash Chip min Sector is 64K,so we should correct USB block to 64K.But when we modify this parameter in SDK demo,USB Device can not work.The specific process is as follows:

  1. we have test in  SDK_2_12_1_MIMXRT1064xxxxA/ evkmimxrt1064/usb_examples/usb_device_msc_ramdisk
  2. we have modify Parameters in dish.h:

          DCJJJJ_0-1672493486544.png

        change LENGTH_OF_EACH_LBA 512  -> 8K , USB can not work as follow:

        

DCJJJJ_1-1672493674251.png

          I found that if LENGTH_OF_EACH_LBA  less than 4*1024 ,USB can work successfully. But Our Flash chip requests this parameter to be 64K,because that chip can only erase a sector 64K .

  What can I do to achieve this goal? Please give me some comments and feedback.

  Thanks!

 

Tags (1)
0 Kudos
Reply
2 Replies

650 Views
diego_charles
NXP TechSupport
NXP TechSupport

Hi @DCJJJJ 

I hope you are doing well!

I have replicated the issue you are describing, using the same demo and the evkmimxrt1064_dev_msc_disk_freertos, both define the LBA size to be of 512 bytes by default.As you mention the higher LBA size I could get was about 4K.

I am currently checking if the stack does support a higher size for LBA. Otherwise, what you could do is write some functions that store the previous contents of 64 KB sector of your flash memory and later on re-write them along your new LBA of 4KB.

Diego

0 Kudos
Reply

633 Views
DCJJJJ
Contributor I

   Thank you for you reply.

   I have tried the method you said before I asked help for you.I built a 64K buffer to store data and modify 4k of them.So it is about 60k data is not updated every times that made the speed becomes very slow.So i want to ask for help to you to slove this problem.

 BR

DCJJJ

 

0 Kudos
Reply