<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.2" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>LeafLabs Garden &#187; User Favorites: tarinbansal</title>
		<link><a href='http://forums.leaflabs.com/profile.php?id=839'>839</a></link>
		<description>A place to share, learn, and grow...</description>
		<language>en-US</language>
		<pubDate>Fri, 22 Jan 2016 00:23:30 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.2</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://forums.leaflabs.com/search.php</link>
		</textInput>
		<atom:link href="http://forums.leaflabs.com/rss.php?profile=839" rel="self" type="application/rss+xml" />

		<item>
			<title>poslathian on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1073</link>
			<pubDate>Tue, 07 Sep 2010 15:36:02 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">1073@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;ooooh, fatfs would be sweet. keep us posted. This has been in high demanded.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>snigelen on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1044</link>
			<pubDate>Mon, 06 Sep 2010 15:08:26 +0000</pubDate>
			<dc:creator>snigelen</dc:creator>
			<guid isPermaLink="false">1044@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Yes it was kind of huge, 323364 bytes. The upload seemed to take very long time before I realized that something was wrong...&#60;br /&#62;
I was actually playing around with some &#34;non-leaflabs&#34; stuff with the Maple, just for fun. I was, for example, able to compile and run the blinky-example (without Circle-OS) from the stm32-primer. Then I went on to try Martin Thomas's port of FatFS, without success, even when I used the bin-file :-). But I used your link-script with the blinky, but not with the FatFS program. Maybe that's why it didn't work. I'll have another try tomorrow.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>poslathian on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1043</link>
			<pubDate>Mon, 06 Sep 2010 14:33:42 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">1043@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;hmmm. interesting. How big was the elf file? probably huge, since elf uses 1 byte to store a single character, i wonder if its possible that some number somewhere rolled over and killed the bootloader. Usually the compiler checks for size appropriate-ness and im not sure how vigilant the bootloader is about this. Either way, the bootloader is pretty data-agnostic, it just copies what it gets into memory, so while the user code certainly wouldnt work, im quite surprised the bootloader got bricked.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>snigelen on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1042</link>
			<pubDate>Mon, 06 Sep 2010 13:57:35 +0000</pubDate>
			<dc:creator>snigelen</dc:creator>
			<guid isPermaLink="false">1042@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;I accidentally uploaded a .elf-file (instead of .bin) today, and that seemed to make the bootloader whipe out itself (not able to upload anything, no ledblinks on reset etc.) But I managed to burn a new bootloader using the built in serial bootloader, so no bricked Maple :-)
&#60;/p&#62;</description>
		</item>
		<item>
			<title>poslathian on "Flash or SRAM"</title>
			<link>http://forums.leaflabs.com/topic.php?id=157#post-1038</link>
			<pubDate>Mon, 06 Sep 2010 13:47:24 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">1038@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;maple based ret6 builds have been reported and successful! were working on recreating this. These ret6 chips have a lot more flash, 512KB I think. &#60;/p&#62;
&#60;p&#62;Once upon a time, the RAM builds were super useful if youre program was small, faster uploads - no flash load - you could kill hard-faulted programs just by unplugging and replugging. However libmaple has started to bloat up a bit, such that RAM builds are less and less possible (you quickly bump over the 17K limit!) But weve been tweaking libmaple to get it down to size (big reduction in 0.0.7) and the bootloader certainly doesnt need all 3k, with a careful refactor we could get that down to 1.7K id bet, its current aboult 2.5K. &#60;/p&#62;
&#60;p&#62;Also, the bootloader is no longer a &#34;background process&#34; it only spins up at boot time and then dies. Thus, those 3K could certainly be recovered, this will likely be fixed in the future as well.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>poslathian on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1037</link>
			<pubDate>Mon, 06 Sep 2010 13:40:41 +0000</pubDate>
			<dc:creator>poslathian</dc:creator>
			<guid isPermaLink="false">1037@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;gbulmer, correct - the bootloader will not overwrite itself. Programs that are designed to work with the maple bootloader (like those you make when you use the ide) must be linked differently from regular programs so that they start at an offset in memory (currently 0x08005000 for flash builds and 0x20000C00 for ram builds). We thought about doing a bootloader-self-overwrite mode but that sounded too easy to accidentally brick your board. Perhaps now that the serial bootloader has proven itself effective, we could go ahead and allow this.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>Adam on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1018</link>
			<pubDate>Sun, 05 Sep 2010 22:58:18 +0000</pubDate>
			<dc:creator>Adam</dc:creator>
			<guid isPermaLink="false">1018@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;tarinbansal,&#60;/p&#62;
&#60;p&#62;This should be possible using the command line development environment instead of the IDE:&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://leaflabs.com/docs/libmaple/unix-toolchain/&#34; rel=&#34;nofollow&#34;&#62;http://leaflabs.com/docs/libmaple/unix-toolchain/&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;If you can compile the chibios kernel using the maple toolchain, I think you can install it via the process outlined in the link above.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>bnewbold on "Flash or SRAM"</title>
			<link>http://forums.leaflabs.com/topic.php?id=157#post-1015</link>
			<pubDate>Sun, 05 Sep 2010 18:21:42 +0000</pubDate>
			<dc:creator>bnewbold</dc:creator>
			<guid isPermaLink="false">1015@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;The bootloader doesn't actually consume that much flash, but it needs to be rewritten so we reserved an entire 20kb for it &#34;just in case&#34;. This is way too much and we will reduce the reserved space size in the future.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>bnewbold on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-1013</link>
			<pubDate>Sun, 05 Sep 2010 18:21:21 +0000</pubDate>
			<dc:creator>bnewbold</dc:creator>
			<guid isPermaLink="false">1013@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hi tarinbansal,&#60;/p&#62;
&#60;p&#62;You can upload compatible .bin files (compiled using any toolchain) via a hardware serial bootloader (built into the STM32 microcontroller), the JTAG interface, or the USB DFU upload bootloader that your Maple shipped with. &#60;/p&#62;
&#60;p&#62;The code upload process is independent of the type of program you are uploading: if you want to upload a kernel, operating system, or program that does not use the SerialUSB object in libmaple you will loose the regular auto-reset feature in the IDE.&#60;/p&#62;
&#60;p&#62;The IDE was not designed to be flexible for use with anything other than a standard bootloader, though everything is open source and you are free to develop a new mechanism to interact with a micro operating system instead. My guess is that if you want to upload a kernel which isn't built on top of libmaple you will want to abandon the entire LeafLabs software suite and upload over JTAG or the serial bootloader.&#60;/p&#62;
&#60;p&#62;Everything gbulmer said is true as well (the bootloader is not /supposed/ to be able to overwrite itself), sorry if the duplication of information is confusing. If you give some more details of what you're trying to accomplish perhaps we can help!
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gbulmer on "Flash or SRAM"</title>
			<link>http://forums.leaflabs.com/topic.php?id=157#post-999</link>
			<pubDate>Sat, 04 Sep 2010 11:45:58 +0000</pubDate>
			<dc:creator>gbulmer</dc:creator>
			<guid isPermaLink="false">999@http://forums.leaflabs.com/</guid>
			<description>&#60;blockquote&#62;&#60;p&#62;1. The IDE gives a choice between SRAM and Flash memory to burn the code... How do they differ? Is SRAM faster or what?&#60;/p&#62;&#60;/blockquote&#62;
&#60;p&#62;SRAM could be marginally faster, and, of course, the program disappears from SRAM when power is removed from the Maple.&#60;/p&#62;
&#60;blockquote&#62;&#60;p&#62;2. Also... the maple bootloader resides in the flash memory, how much memory does it consume? Its size, that is.&#60;/p&#62;&#60;/blockquote&#62;
&#60;p&#62;Over to LeafLabs ...&#60;br /&#62;
Apparently it changes with each release, and LeafLabs are trying to improve it.&#60;/p&#62;
&#60;blockquote&#62;&#60;p&#62;3. If my program exceeds the 128 kb flash memory, would the extra part be executed through SRAM?&#60;br /&#62;
Thank you.&#60;/p&#62;&#60;/blockquote&#62;
&#60;p&#62;No, it'll be broken. Programs must reside in one or the other region unless you make specific arrangements within your code and build process.&#60;br /&#62;
That would be quite an unusual arrangement, and it'd only gain a small amount of extra RAM space for the pain. It may be easier to get a processor with more Flash.&#60;br /&#62;
I don't know if LeafLabs bootloader is capable of loading such a program even if you did get it compiled and linked.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>tarinbansal on "Flash or SRAM"</title>
			<link>http://forums.leaflabs.com/topic.php?id=157#post-996</link>
			<pubDate>Sat, 04 Sep 2010 11:11:46 +0000</pubDate>
			<dc:creator>tarinbansal</dc:creator>
			<guid isPermaLink="false">996@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;1. The IDE gives a choice between SRAM and Flash memory to burn the code... How do they differ? Is SRAM faster or what?&#60;br /&#62;
2. Also... the maple bootloader resides in the flash memory, how much memory does it consume? Its size, that is.&#60;br /&#62;
3. If my program exceeds the 128 kb flash memory, would the extra part be executed through SRAM?&#60;br /&#62;
Thank you.
&#60;/p&#62;</description>
		</item>
		<item>
			<title>gbulmer on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-988</link>
			<pubDate>Sat, 04 Sep 2010 06:49:14 +0000</pubDate>
			<dc:creator>gbulmer</dc:creator>
			<guid isPermaLink="false">988@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;May I ask a question?&#60;/p&#62;
&#60;p&#62;Do you want:&#60;br /&#62;
1. the kernel to overwrite and replace the Maple bootloader, so that the kernel will become responsible for loading programs into Flash/RAM, or&#60;br /&#62;
2. is it okay for the Maple bootloader remaining in Flash, and eventually starting the kernel when there is nothing for it to load. &#60;/p&#62;
&#60;p&#62;In case 1 the kernel must have all of the necessary mechanisms to upload (I'm not familiar with it), and if it breaks, you'll have to resort to a serial bootloader or JTAG to rescue the board (but you'll need them anyway for this option, see below). The benefit is the kernel is 'in charge' unless someone has a serial bootloader, and cable, or JTAG.&#60;/p&#62;
&#60;p&#62;In case 2 the Maple bootloader would overwrite the kernel, if a loader program talked to the Maple. This is probably fine for initial development.&#60;/p&#62;
&#60;p&#62;I don't believe the Maple bootloader will overwrite itself (Leaf Labs please confirm), so I don't believe case 1 can be done through the IDE.&#60;/p&#62;
&#60;p&#62;There are instructions in the bootloader source on how to burn a new Maple bootloader, so those are pretty much want would be needed to get your kernel loaded if case 1 is needed.&#60;/p&#62;
&#60;p&#62;How to get the source is explained at &#60;a href=&#34;http://leaflabs.com/docs/maple-bootloader/&#34; rel=&#34;nofollow&#34;&#62;http://leaflabs.com/docs/maple-bootloader/&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;The Makefile, at target 'program_serial:', has the commands to load a .bin program over the serial port (USART1). If your computer doesn't have a serial port, it'll need a USB to serial converter. USB to serial cables made by FTDI are popular, but there are lots of alternatives.&#60;br /&#62;
In the same Makefile, at target 'program:', are the commands to program the Flash over JTAG, using openocd.&#60;/p&#62;
&#60;p&#62;HTH
&#60;/p&#62;</description>
		</item>
		<item>
			<title>tarinbansal on "Burning a kernel in the maple"</title>
			<link>http://forums.leaflabs.com/topic.php?id=156#post-985</link>
			<pubDate>Sat, 04 Sep 2010 04:50:14 +0000</pubDate>
			<dc:creator>tarinbansal</dc:creator>
			<guid isPermaLink="false">985@http://forums.leaflabs.com/</guid>
			<description>&#60;p&#62;Hi,&#60;br /&#62;
I want to burn a kernel in my maple board. I will be burning the kernel of ChibiOS. I want to know how do i burn it? The only way of programming the board right now is thru the IDE... so, do i burn the kernel also thru the IDE? Or some other interface is used to burn a kernel?
&#60;/p&#62;</description>
		</item>

	</channel>
</rss>
