On Nov 20, 2010, at 11:38 AM, Peter Bigot wrote: > To expand on what Chris said:
Thank you for the details! I still have a bunch to learn about how the memory map definitions work and what the linker does with them, and your explanation will certainly help. > I was peripherally (hah!) aware that the MSP430 chips with USB support > overload parts of RAM to use for USB structures. I have not yet added > explicit support for that. Perhaps offline we can talk about the details, > and I'll add that feature in the uniarch updates, which are much more > friendly to supporting chip-specific memory layouts. I'll be happy to help out in this area if I can, at least as a test case. In this particular case, I have no interest in returning the USB buffer area to the general RAM pool, since the USB interface is my primary purpose for selecting the MSP430F55xx family. So, I'll be satisfied for now as long as I can ensure that the linker won't allocate space for generic variables in the USB memory area. Still, I can see a clear benefit to finding a clean way to handle specialized peripheral memory areas which may need to be used as either peripheral buffers or generic RAM in any given application. I'm also intending to make use of the USB bootstrap loader (BSL) that's available in the devices I chose. I want to make the products that I'm developing easy to upgrade in the field without requiring access to a specialized programmer, and the USB BSL looks like it should be quite suitable for that. While I think that I'll want to embed the USB BSL support into my own software in any case, I think it'd be beneficial to add support for it into one or more of the "mainstream" cross-platform programming utilities such as mspdebug, and I'm open to contributing towards that. > (BTW: The specific syntax for placing variables in information memory will be > enhanced in uniarch, as I want to be able to identify individual information > memory sections, allowing you to have some that are initialized and some that > are not. I'll be as backwards-compatible as I can, but one enhancement is > likely to be that nobits will be a separate attribute from the section > attribute, so we don't have to have two linker sections defined for each > flash memory block.) Once I start to get my feet under me with the MSP430F55xx USB stuff, maybe I can also help out as a test case for the uniarch development. I'm on a Mac and developing for USB-capable parts (some of which have >64k RAM), so I might be able to break lots of stuff! :-) -- Mark J. Blair, NF6X <n...@nf6x.net> Web page: http://www.nf6x.net/ GnuPG public key available from my web page. ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users