potential GSOC project: Improve the Raspberry Pi BSP
Andre Marques
andre.lousa.marques at gmail.com
Thu Mar 20 09:36:49 UTC 2014
On 03/20/14 02:21, Alan Cudmore wrote:
> Interesting idea.
> Part of this may be done:
> GPIO : Can start with Pierre's implementation
> i2c: Isn't there a libi2c already?
> SPI: ?
cpukit/libi2c also deals with SPI.
It is also implemented on the FreeBSD port to RPi
https://github.com/freebsd/freebsd/blob/master/sys/arm/broadcom/bcm2835/bcm2835_spi.c
and more info can be found at
http://elinux.org/RPi_SPI
> SD card: ? There should be at least one example to follow in the ARM tree.
> Framebuffer: I think this is well defined.
>
>
> Alan
>
>
>
> On Wed, Mar 19, 2014 at 7:59 PM, Gedare Bloom <gedare at rtems.org
> <mailto:gedare at rtems.org>> wrote:
>
> On Wed, Mar 19, 2014 at 7:04 PM, Joel Sherrill
> <joel.sherrill at oarcorp.com <mailto:joel.sherrill at oarcorp.com>> wrote:
> >
> > On 3/19/2014 4:18 PM, Pierre Ficheux wrote:
> >> Hi Alan,
> >>
> >> ----- Mail original -----
> >>> De: "Alan Cudmore" <alan.cudmore at gmail.com
> <mailto:alan.cudmore at gmail.com>>
> >>> À: "Pierre Ficheux" <pierre.ficheux at openwide.fr
> <mailto:pierre.ficheux at openwide.fr>>
> >>> Cc: "Andre Marques" <andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com>>, rtems-users at rtems.org
> <mailto:rtems-users at rtems.org>
> >>> Envoyé: Mercredi 19 Mars 2014 22:10:50
> >>> Objet: Re: potential GSOC project: Improve the Raspberry Pi BSP
> >>>
> >>>
> >>> Hi Pierre,
> >>> We hope to use your GPIO implementation for this project. Any
> >>> problems with incorporating it into the BSP?
> >> No problem at all.
> >>
> >>>
> >>> For the USB and MMC support, the u-boot code would be nice,
> but it is
> >>> GPL and not compatible with the RTEMS libraries. But it could
> serve
> >>> as a reference.
> >> I'm not aware of RTEMS licensing issue :) I know it's GPL with
> linking exception but what's the problem with "libraries" ?
> > Ultimately, everything is statically linked together. So the
> license of
> > a library
> > could virally impact the license of all users.
> >
> > Ideally this support would be part of the BSP.
> >
> > There is a proposed API and simple driver model for analogs and
> discrete IO
> > in RTEMS git in another git module. It includes some shell
> commands to
> > assist
> > in debugging and playing with IO settings.
> Would adding "generic" RTEMS interfaces for GPIO, i2c, SPI, and SD
> card with example implementations in Raspberry Pi be feasible and
> interesting?
>
> -Gedare
>
> >>>
> >>> Also, I am not sure how to approach the USB and network
> >>> implementation. For example, we could probably get the Ethernet to
> >>> work, and the USB code would just be "a bunch of files" in the
> >>> ethernet driver directory. But I think the right way would be
> to use
> >>> the FreeBSD library support of the USB and Ethernet devices. I
> just
> >>> don't know how to do that :)
> >> I do agree. I talked about U-Boot for MMC support though it
> includes USB support too.
> > If this were in the new BSD USB/TCP/IP code, it should be
> > straightforward to
> > support both USB and TCP/IP.
> >> regards
> >>>
> >>> Alan
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> On Wed, Mar 19, 2014 at 4:33 PM, Pierre Ficheux <
> >>> pierre.ficheux at openwide.fr <mailto:pierre.ficheux at openwide.fr>
> > wrote:
> >>>
> >>>
> >>> USB should be interesting too on RPi because of Ethernet
> support ;)
> >>>
> >>> Regarding SD card you should take a look at U-Boot for RPi which
> >>> includes MMC support in drivers/mmc. U-Boot includes USB
> support for
> >>> RPi too in drivers/usb.
> >>>
> >>> https://github.com/gonzoua/u-boot-pi
> >>>
> >>> regards
> >>>
> >>> ----- Mail original -----
> >>>> De: "Andre Marques" < andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com> >
> >>>> À: "Alan Cudmore" < alan.cudmore at gmail.com
> <mailto:alan.cudmore at gmail.com> >
> >>>> Cc: rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> >>>> Envoyé: Mercredi 19 Mars 2014 20:59:56
> >>>> Objet: Re: potential GSOC project: Improve the Raspberry Pi BSP
> >>>
> >>>>
> >>>>
> >>>> Hello Alan,
> >>>>
> >>>> I have decided to go with the framebuffer instead of the USB
> >>>> support.
> >>>> Will update the proposal with this.
> >>>>
> >>>> Before GSOC I am considering to look at the SD card access
> through
> >>>> the onboard card reader. What do you think?
> >>>>
> >>>> --André Marques.
> >>>>
> >>>> On 03/19/14 00:56, Alan Cudmore wrote:
> >>>>
> >>>>
> >>>>
> >>>> Hi André ,
> >>>> I agree about the USB stack. I am not even sure about how to
> >>>> integrate a driver that depends on the FreeBSD USB stack.
> >>>>
> >>>>
> >>>> The GPIO driver from Pierre is the one I was referring to. I
> don't
> >>>> think anyone ever made a decision on how to integrate the GPIO
> >>>> driver. If we have macros in the BSP header files then the
> GPIO can
> >>>> be programmed with the simple macros or the driver that Pierre
> >>>> wrote. If the project decides to use the GPIO device model for
> >>>> other
> >>>> BSPs, then the generic driver code can be moved to a shared
> >>>> directory at a later date.
> >>>>
> >>>>
> >>>> Thanks for the update,
> >>>>
> >>>>
> >>>> Alan
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On Tue, Mar 18, 2014 at 11:04 AM, Andre Marques <
> >>>> andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com> > wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Hello,
> >>>>
> >>>> about the USB driver port from FreeBSD I am finding it
> difficult to
> >>>> gauge how much work it would involve, so I will follow your
> >>>> suggestion and look at something else.
> >>>>
> >>>> As for GPIO I belive the work that has been done is this:
> >>>>
> >>>>
> https://github.com/pficheux/raspberry_pi/tree/master/RTEMS/gpio_driver
> >>>>
> >>>> Am I right?
> >>>>
> >>>> I also found a discussion on the best way of implementing the
> >>>> driver
> >>>>
> >>>>
> http://www.rtems.org/pipermail/rtems-users/2013-October/012059.html
> >>>>
> >>>> but i am not sure if that came to a decision.
> >>>>
> >>>> Meanwhile I will update the proposal with some basic info on the
> >>>> drivers.
> >>>>
> >>>> --André Marques.
> >>>>
> >>>>
> >>>>
> >>>> On 03/14/14 13:16, Andre Marques wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Hello,
> >>>>
> >>>> On 03/14/14 02:33, Alan Cudmore wrote:
> >>>>
> >>>>
> >>>>
> >>>> Andre,
> >>>> I think your project proposal looks good, but I wonder if
> including
> >>>> USB support is too much. There are low level "bare metal" USB
> >>>> examples out there for the Raspberry Pi, and that may serve as a
> >>>> starting point, but I think a real USB implementation will
> use the
> >>>> BSD library that has been ported to RTEMS. It may be possible,
> >>>> since
> >>>> there is a FreeBSD port to the Raspberry Pi. Maybe others can
> help
> >>>> here.
> >>>>
> >>>>
> >>>> I will take a look into this.
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> If you think that GPIO, SPI, and I2C are not enough, then you
> could
> >>>> always look at the framebuffer or SD card access.
> >>>>
> >>>>
> >>>> Yes, right now I am trying to clarify everything the best I
> can so
> >>>> I
> >>>> don't end up with a lot more (or less) work than I can handle.
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Finally, it may be necessary to have an Raspberry Pi and a few
> >>>> peripherals. For example, I have an inexpensive I2C compass
> module
> >>>> that I use with linux, and I have a breadboard wired up with LEDs
> >>>> to
> >>>> test GPIO.
> >>>>
> >>>>
> >>>> Right now I have access to a Raspberry Pi at the university, not
> >>>> sure
> >>>> about the peripherals though. Anyway, if this projects really
> goes
> >>>> forward I will get myself a raspberry and peripherals (I have
> >>>> already some other components, like a breadboard, leds, wire,
> etc).
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Thanks,
> >>>> Alan
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On Thu, Mar 13, 2014 at 8:32 PM, Alan Cudmore <
> >>>> alan.cudmore at gmail.com <mailto:alan.cudmore at gmail.com> > wrote:
> >>>>
> >>>>
> >>>>
> >>>> I'm glad there is interest in this project. Andre, I will
> read your
> >>>> proposal and provide feedback.
> >>>> Joel, I was on the melange site and the system recognizes my
> >>>> account.
> >>>> Do I need to do anything to be a mentor for RTEMS?
> >>>> Alan
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On Thu, Mar 13, 2014 at 7:31 PM, Andre Marques <
> >>>> andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com> > wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> It is now on melange too.
> >>>>
> >>>> --André Marques.
> >>>>
> >>>>
> >>>>
> >>>> On 03/13/14 23:21, Hesham Moustafa wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Hi Andre,
> >>>>
> >>>>
> >>>> I quote from RTEMS SoC page :
> >>>>
> >>>> "GSOC STUDENTS! PLEASE FILL IN THE APPLICATION AT
> >>>> http://www.google-melange.com ! YOU CAN EDIT UNTIL THE DEADLINE!
> >>>> BUT
> >>>
> >>>> YOU WILL NOT GET A SLOT IF YOU DO NOT APPLY THROUGH Google!!!"
> >>>>
> >>>>
> >>>> Regards,
> >>>> Hesham
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On Fri, Mar 14, 2014 at 1:16 AM, Andre Marques <
> >>>> andre.lousa.marques at gmail.com
> <mailto:andre.lousa.marques at gmail.com> > wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> Hello,
> >>>>
> >>>> I just posted the first proposal draft for "Raspberry Pi BSP
> >>>> Peripherals " in the RTEMS Wiki
> >>>>
> >>>> http://wiki.rtems.org/wiki/index.php/RTEMSSummerOfCode
> >>>>
> >>>> Any feedback is more than welcome. Should I post it already in
> >>>> melange too?
> >>>>
> >>>> --André Marques.
> >>>>
> >>>>
> >>>>
> >>>> On 03/13/14 15:26, Joel Sherrill wrote:
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> On 3/13/2014 9:46 AM, Andre Marques wrote:
> >>>>
> >>>>
> >>>>
> >>>> Hello,
> >>>>
> >>>> I would be very interested in working in this project because I'm
> >>>> currently trying to work with Raspberry Pi and RTEMS for my
> >>>> undergraduate thesis, so this could be a great followup to
> that for
> >>>> the summer.
> >>>>
> >>>> I will need to do some reseach on it before making a proposal
> (the
> >>>> time is also gettting shorter), but will post a proposal
> draft very
> >>>> soon.
> >>>>
> >>>> This would be a great area to work. As Alan says, the list is
> >>>> likely
> >>>> too much for
> >>>> one student, so it seems likely that the work could be
> divided for
> >>>> two students
> >>>> working on different parts.
> >>>>
> >>>> For the Pi Master list, I would like to add the Geert board. That
> >>>> looks like something
> >>>> of interest to RTEMS folks.
> >>>>
> >>>> --joel
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> --André Marques.
> >>>>
> >>>> On 03/13/14 11:23, Alan Cudmore wrote:
> >>>>
> >>>>
> >>>>
> >>>> ( I posted this to the rtems-devel list by mistake, my apologies
> >>>> for
> >>>> the duplicate message )
> >>>>
> >>>>
> >>>>
> >>>> f there are still potential GSOC students out there looking for a
> >>>> project, I would like to offer a potential project to work on:
> >>>> Improving the Raspberry Pi BSP. I would be happy to mentor a
> >>>> student
> >>>> for this project. Below is my description for the task.
> >>>>
> >>>>
> >>>> Thanks,
> >>>> Alan
> >>>>
> >>>>
> >>>> One of the RTEMS Open Projects is to contribute a BSP or Board
> >>>> Support Package for readily available boards. The Raspberry Pi is
> >>>> probably the most available board at $25 and $35 USD, and there
> >>>> have
> >>>> been over two million of these boards sold. The RTEMS head (4.11)
> >>>> currently has a basic BSP for the Raspberry Pi, supporting
> the CPU,
> >>>> a single UART, and timer. It is enough to run some basic RTEMS
> >>>> programs, but expanding the BSP to support peripherals will
> make it
> >>>> much more useful.
> >>>> For this project, the GSOC student could improve the peripheral
> >>>> support for the Raspberry Pi BSP.
> >>>> The peripherals we need to support (in order of increasing
> >>>> difficulty) include:
> >>>> 1. GPIO (This has been done by one user, but is not integrated)
> >>>> 2. I2C Bus
> >>>> 3. SPI Bus
> >>>> 4. Secure Digital card read and write support (using the SPI bus)
> >>>> 5. Graphics / RTEMS Framebuffer Support (I have a graphics demo
> >>>> working in an RTEMS task)
> >>>> 6. USB Device support
> >>>> 7. HDMI/Graphics console (Requires framebuffer support and USB or
> >>>> GPIO connected keyboard device)
> >>>> 8. Ethernet network support (Requires USB support)
> >>>> The entire list is probably too much for a single student to
> >>>> accomplish, so we can adjust the list of work according to
> what is
> >>>> possible.
> >>>>
> >>>>
> >>>> It may also be a good idea to add support for both models of the
> >>>> Raspberry Pi (256MB and 512MB) and be able to configure the
> memory
> >>>> map in the BSP to match the boot time split between the CPU
> and GPU
> >>>> memory.
> >>>>
> >>>>
> >>>> Finally, in order to do some of this coding, it may be
> necessary to
> >>>> come up with a more efficient way to load and debug code on the
> >>>> Raspberry Pi. Options include using U-boot or connecting a JTAG
> >>>> debug device to load code.
> >>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> rtems-users mailing list rtems-users at rtems.org
> <mailto:rtems-users at rtems.org>
> >>>> http://www.rtems.org/mailman/listinfo/rtems-users
> >>>>
> >>>> --
> >>>> Joel Sherrill, Ph.D. Director of Research & Development
> >>>> joel.sherrill at OARcorp.com On-Line Applications Research
> >>>> Ask me about RTEMS: a free RTOS Huntsville AL 35805
> >>>> Support Available (256) 722-9985 <tel:%28256%29%20722-9985>
> >>>>
> >>>> _______________________________________________
> >>>> rtems-users mailing list
> >>>> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> >>>> http://www.rtems.org/mailman/listinfo/rtems-users
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> rtems-users mailing list
> >>>> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> >>>> http://www.rtems.org/mailman/listinfo/rtems-users
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> rtems-users mailing list
> >>>> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> >>>> http://www.rtems.org/mailman/listinfo/rtems-users
> >>>>
> >>> --
> >>> Pierre FICHEUX -/- CTO OW/OWI, France -\-
> pierre.ficheux at openwide.fr <mailto:pierre.ficheux at openwide.fr>
> >>> http://ingenierie.openwide.fr
> >>> http://www.linuxembedded.fr
> >>> I would love to change the world, but they won't give me the
> source
> >>> code
> >>>
> >>>
> >> --
> >> Pierre FICHEUX -/- CTO OW/OWI, France -\-
> pierre.ficheux at openwide.fr <mailto:pierre.ficheux at openwide.fr>
> >> http://ingenierie.openwide.fr
> >> http://www.linuxembedded.fr
> >> I would love to change the world, but they won't give me the
> source code
> >>
> >> _______________________________________________
> >> rtems-users mailing list
> >> rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> >> http://www.rtems.org/mailman/listinfo/rtems-users
> >
> > --
> > Joel Sherrill, Ph.D. Director of Research & Development
> > joel.sherrill at OARcorp.com On-Line Applications Research
> > Ask me about RTEMS: a free RTOS Huntsville AL 35805
> > Support Available (256) 722-9985 <tel:%28256%29%20722-9985>
> >
> > _______________________________________________
> > rtems-users mailing list
> > rtems-users at rtems.org <mailto:rtems-users at rtems.org>
> > http://www.rtems.org/mailman/listinfo/rtems-users
>
>
>
>
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20140320/816138a8/attachment-0001.html>
More information about the users
mailing list