-->
Page 1 of 2

Code size acceptable?

PostPosted: Wed Aug 10, 2016 2:00 am
by cnlohr
Currently, the ESPUSB stack is ~1kB of IRAM, it needs to store a table that's ~128 bytes large to load into dram, and needs another ~64 bytes of RAM. I don't know if the tables could be staged anywhere else (like the fields of flash), or how that would work.

Do bootloaders /have/ to be tiny?

I am still not sure if 12 MBit is possible, but, it's right now looking like I would need about the same amount of IRAM, but significantly more DRAM (~2.5kB!!) It makes me wonder if it would be feasible for people to use.

Re: Code size acceptable?

PostPosted: Wed Aug 10, 2016 10:20 am
by RichardS
Well if you need a mass storage device then I guess it is what it is :-)

Something like this is always needed by someone, and that someone will be very happy to have it, the requirements to date do not look all that bad.

RichardS

Re: Code size acceptable?

PostPosted: Wed Aug 10, 2016 11:44 am
by cnlohr
I hadn't even thought about making the bootloader a mass storage device. I was gonna suggest using control messages. I don't know how that would work being a mass storage device, either :-/ Like I know how to make a block device, but to make it show up as individual files, that would be super swanky, but I guess you'd need something that mimicked the FAT filesystem? Maybe format part of the chip with actual FAT? That would be neat!

I wonder if one could force FAT block size to 4k so we could use the erase block commands built into the SDK? Or is there another minimum write unit size?

Re: Code size acceptable?

PostPosted: Wed Aug 10, 2016 12:57 pm
by RichardS
I have some code for a Cortex M3 that provides a boot loaders that shows up as a drive, then you drag the .bin to it and voila.... not sure how highly M3 related the code is, but it fakes a FAT12 in memory in very few bytes.

RichardS