grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

serial line - file interface


From: Kiril Paunov
Subject: serial line - file interface
Date: Fri, 3 Feb 2006 14:10:47 +0200

Hello.

I hope that this will be interesting for you...
I'm making some experiments with embedde OS, currently with RTEMS on i386.
I use some PC (to hand) for my tests and got to the problem with booting.
See, it's just to much time for each boot! So I made some changes to grub
to be able to boot images from the serial line. I know that there are better
sulutions for this problem but maybe this can help on some way to the grub 
project.
There is a new command 'comload' - it's a bit silly but that's Ok for me.
That's what I have used first... before the idea for the `(com)' device.

The patch to release 1.92 can be found here:

http://81.161.251.159/pub/grub/grub-1.92-comio.patch

and that's the changelog entry:

+2005-02-03  Kiril Paunov  <address@hidden>
+
+       * util/i386/pc/grub-install.in: Found an syntaxis error.
+
+       * commands/comload: New command for serial data download.
+       I's a bit ~~~ but can be usefull for people that work with
+       embedded systems.
+
+       * util/grub-comiosrv.c: Server program for the `(com)' interface
+       (See bellow include/grub/comio.h io/comio.c).
+
+       * include/grub/comio.h io/comio.c: New file interface.
+       This allows to download and boot ower the serial line.
+       I't usefull for people that work with embedded systems.
+       It's not very good covered by the file interface but i't
+       works well. There is not a good abstraction for this kind
+       off filesystem (net/serial/???)!!!
+       Example:
+       grub.cfg:
+               #
+               # serial --unit=1 --speed=9600 --word=8 --parity=no --stop=1
+               # terminal serial
+               #
+       Host: on /dev/ttyS0
+               #
+               # ./grub-comiosrv -b 115200 /dev/ttyS0
+               #
+       Host: on /dev/ttyS1
+               #
+               # > multiboot (com)/0-115200-n-8-1-my_test_image
+               # > boot
+               #
+       The sintax is:
+               `(com)/<name>'
+               `<name>' = 
<unit>-<baud>-<parity>-<databits>-<stopbits>-<file-name>
+               `<unit>' = <0|1> - comm port
+               `<baud>' = <xxxx> - valid baud rate
+               `<parity>' = <n|e|o>
+               `<databits>' = <5|6|7|8>
+               `<stopbits>' = <1|2>
+               `<file-name>' = file name on the host relative to 
`grub-comiosrv'
+       Protocol:
+               Request_A: `[my_test_image]'
+               Respons_A: `[<size>]'
+               Request_B: `[my_test_image:<start>:<length>]'
+               Request_B: `[<data-length>]<data>'
+       
+       Enjoy yourself!

-- 
With respect & pleasure
                Kiril Paunov
--

________________________
http://mail.tu-sofia.bg/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]