* Envfs embedded in barebox.bin [not found] <15dd21bf-86c1-4ca8-a830-caef28d617ee@zimbra1-e1.priv.proxad.net> @ 2011-11-17 15:05 ` robert.jarzmik 2011-11-17 15:49 ` Sascha Hauer 0 siblings, 1 reply; 3+ messages in thread From: robert.jarzmik @ 2011-11-17 15:05 UTC (permalink / raw) To: barebox Hi, I'm working on a very specific board, where I lack : - a serial console (all UARTs are wired to GSM/Bluetooth/GPS chips) - a JTAG adapter - internal MTD access (I have not ported the MTD driver from linux kernel yet) - a USB ethernet / console access (put I didn't port the pxa27x_udc yet) What I have is : - a smartphone screen (framebuffer of PXA270) I launch barebox.bin using a tool which does it well : disable MMU, flush cache, copy barebox.bin to start of RAM, and transfer control to it. My issue is that while I'm developping my board code, I have no feedback (because no console available). I'd like to run some hush scripts, and the only available way (so far) is to embed the envfs into barebox.bin. What I'm attempting is basically to : (1) ld -b binary barebox_default_env -o barebox_default_env.o (2) add barebox_default_env.o in Makefile, target barebox-common (3) add in my board code (board.c) the creation of env0 device: devfs_add_partition("ram0", _binary_barebox_default_env_start, _binary_barebox_default_env_size, PARTITION_FIXED, "env0") I'm feeling like reinventing the wheel there. Have I missed another clean way of including my board default envfs into barebox.bin ? Of course, that will only last until I port the correct drivers to have access to my MTD ... Cheers. -- Robert _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Envfs embedded in barebox.bin 2011-11-17 15:05 ` Envfs embedded in barebox.bin robert.jarzmik @ 2011-11-17 15:49 ` Sascha Hauer 2011-11-17 16:02 ` robert.jarzmik 0 siblings, 1 reply; 3+ messages in thread From: Sascha Hauer @ 2011-11-17 15:49 UTC (permalink / raw) To: robert.jarzmik; +Cc: barebox On Thu, Nov 17, 2011 at 04:05:19PM +0100, robert.jarzmik@free.fr wrote: > Hi, > > I'm working on a very specific board, where I lack : > - a serial console (all UARTs are wired to GSM/Bluetooth/GPS chips) > - a JTAG adapter > - internal MTD access (I have not ported the MTD driver from linux kernel yet) > - a USB ethernet / console access (put I didn't port the pxa27x_udc yet) > > What I have is : > - a smartphone screen (framebuffer of PXA270) > > I launch barebox.bin using a tool which does it well : disable MMU, flush cache, copy barebox.bin to start of RAM, and transfer control to it. > > My issue is that while I'm developping my board code, I have no feedback (because no console available). So you are doing LED debugging? That's brave ;) > I'd like to run some hush scripts, and the only available way (so far) is to embed the envfs into barebox.bin. > > What I'm attempting is basically to : > (1) ld -b binary barebox_default_env -o barebox_default_env.o > (2) add barebox_default_env.o in Makefile, target barebox-common > (3) add in my board code (board.c) the creation of env0 device: > devfs_add_partition("ram0", _binary_barebox_default_env_start, > _binary_barebox_default_env_size, > PARTITION_FIXED, "env0") Most boards have this in the config: CONFIG_DEFAULT_ENVIRONMENT=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y CONFIG_DEFAULT_ENVIRONMENT_PATH="defaultenv arch/arm/boards/guf-vincell/env" This means that the content of defaultenv/ and arch/arm/boards/guf-vincell/env is embedded into the binary (common/Makefile) and gets mounted during startup (common/startup.c line 113) Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Envfs embedded in barebox.bin 2011-11-17 15:49 ` Sascha Hauer @ 2011-11-17 16:02 ` robert.jarzmik 0 siblings, 0 replies; 3+ messages in thread From: robert.jarzmik @ 2011-11-17 16:02 UTC (permalink / raw) To: Sascha Hauer; +Cc: barebox ----- Mail original ----- De: "Sascha Hauer" <s.hauer@pengutronix.de> > My issue is that while I'm developping my board code, I have no feedback (because no console available). So you are doing LED debugging? That's brave ;) That's crazy. It is the method I used to bring this board into the linux kernel, and I still have my good morse over a LED code, with which I debugged early initcalls in the kernel. But that's very very tedious :) > Most boards have this in the config: > CONFIG_DEFAULT_ENVIRONMENT=y > CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y > CONFIG_DEFAULT_ENVIRONMENT_PATH="defaultenv arch/arm/boards/guf-vincell/env" > This means that the content of defaultenv/ and arch/arm/boards/guf-vincell/env > is embedded into the binary (common/Makefile) and gets mounted during > startup (common/startup.c line 113) Ah, this is the wheel I was speaking of :) I had missed the "CONFIG_DEFAULT_ENVIRONMENT_GENERIC" part, and I didn't see anything in the linker (as it actually is in a generated .h file ...). Great, thanks for the info, I just recompiled, and a hexdump shows my environment within barbox.bin. Cheers. -- Robert _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-11-17 16:02 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <15dd21bf-86c1-4ca8-a830-caef28d617ee@zimbra1-e1.priv.proxad.net> 2011-11-17 15:05 ` Envfs embedded in barebox.bin robert.jarzmik 2011-11-17 15:49 ` Sascha Hauer 2011-11-17 16:02 ` robert.jarzmik
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox