Interested in BSP's (No idea where to start?)

Hesham Almatary hesham.almatary at cl.cam.ac.uk
Wed Nov 27 11:55:40 UTC 2019


On Tue, 26 Nov 2019 at 21:43, Joel Sherrill <joel at rtems.org> wrote:
>
>
>
> On Tue, Nov 26, 2019 at 2:06 PM Niteesh <gsnb.gn at gmail.com> wrote:
>>
>> Do both raspberry pi and raspberrypi2 use the same BSP? If not how to build for raspberry pi 2
>
>
> Yes both use the same BSP family with some configuration settings based on the BSP name/variant. See the configure.ac
>
> --target=arm-rtems5 --enable-rtemsbsp=raspberrypi2
>
>>
>> I couldn't find any datasheet's for BCM2711(raspberrypi4), could only find for BCM2835 (raspberrypi1): https://www.raspberrypi.org/app/uploads/2012/02/BCM2835-ARM-Peripherals.pdf
>
>
> I found this page which links to a preliminary data sheet for the BCM2711 plus
> the data sheets for the SoCs the other Pis use.
>
>>
>> but I think we can maybe use the Linux device tree for raspberry pi as a reference,
>> https://github.com/raspberrypi/linux/blob/rpi-4.19.y/arch/arm/boot/dts/bcm2838.dtsi
>> https://github.com/raspberrypi/linux/blob/rpi-4.19.y/arch/arm/boot/dts/bcm2838-rpi-4-b.dts
>
>
> There are BSPs which use device trees now but if the difference is just some a few base address and
> maybe clock settings, I personally wouldn't add device tree support to the BSP at this point.
>
>>
>>
>>
>> These are some changes that I found out through google:
>> 1) Peripheral base address is now moved to 0x7E000000
>> 2) There's a mention of ARM's GIC400 @ 0x40041000 but probably is only the distributor since the old CPU interface is still there @ 0x40000000
>
>
> These are the type of things you are looking for. What's different.
>
> It is possible some of the peripherals changed also but maybe not any impacting being
> able to run a basic RTEMS application (console and clock).
>
The pi4 is pretty similar to pi3 b, console and clock wise they are
the same; PL011 or miniuart for console and ARM Generic Timer drivers
work unmodified.

> I highly recommend following up in a new thread with a better subject so people will
> recognize it and help.
>
> Good luck
>
> --joel
>
>>
>>
>> On Tue, Nov 26, 2019 at 7:19 PM Joel Sherrill <joel at rtems.org> wrote:
>>>
>>>
>>>
>>> On Tue, Nov 26, 2019 at 5:42 AM Niteesh <gsnb.gn at gmail.com> wrote:
>>>>
>>>> Hii, everyone
>>>> I am interested in contributing to RTEMS, specifically to the arm based BSP's. I am a sophomore in electronics and communication engineering interested in operating systems, and systems programming. I have written small drivers and libraries for Arduino, bare metal avr chips to interface with sensors. I would like to take it a bit further by learning about ARM-based devices.
>>>>
>>>> I have completed the hello world task for GSOC. As I said early I am interested in contributing to the drivers and BSP section for most likely raspberry pi and beaglebone. But I have no idea how to proceed further, any suggestions on where to start and is it okay to ask tons of questions? because I had a look at the previous year's project ideas and very little made sense to me. I am ready to put in my best effort just need some guidance from your side.
>>>
>>>
>>> This is a hard question to answer. There is a balance of something interesting to do with not sending you on a quest. One extreme would be a full BSP from scratch for some expensive hardware that you don't have and shouldn't even try to afford. The other extreme is something so simple that it isn't interesting. At the same time, it should be useful to the community.
>>>
>>> I thought a little while about this and think updating the raspberrypi BSP to support the pi3/pi4 should be a useful and tractable BSP issue to address. It is also useful to the community.
>>>
>>> Discussions when this was brought up before indicate that the precise System on Chip model changed from the 2 to the 3/4 and at least the base address of the UART for the console changed. Getting it working should be a combination of detective work to figure out what precisely changed and fix it along with the possibility of the need for a different device driver on the 3/4.
>>>
>>> FWIW I noticed that the RSB package qemu4 includes a simulator for the pi2 although I haven't had a chance to see if it works with RTEMS. If it does, that eliminates absolutely needing pi2 hardware.
>>
>> Can someone provide instruction on the simulator, I searched a lot but found no help.
>>>
>>>
>>>
>>> Anyway, that's just one idea. It would be useful.
>>>
>>> Thanks.
>>>
>>> --joel
>>>
>>>
>>>
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel


More information about the devel mailing list