GSOC project: #4272 BSP Executable Conversion

Ayushman Mishra ayushvidushi01 at gmail.com
Thu Apr 8 07:58:14 UTC 2021


Sir I have made a draft for the project
https://devel.rtems.org/ticket/4272 after some discussion about it on
discord and mail-list . I would be highly grateful to get some
comments and reviews about it in improving the draft (for example the
part related to adding support of newly created scripts in rtems-tools
to rtems-test.)
https://docs.google.com/document/d/19HeKc6W2ng2X8PoCMVi68A1Z1BbO5D7C0xVHhkgMgBY/edit?usp=sharing
. Also since I am little new to this project it will be really helpful
if anyone can please point out any basic errors which I may have made
in the project description.

On Tue, Apr 6, 2021 at 10:30 PM Joel Sherrill <joel at rtems.org> wrote:
>
>
>
> On Tue, Apr 6, 2021 at 6:22 AM Ayushman Mishra <ayushvidushi01 at gmail.com> wrote:
>>
>> I checked all the BSPs having bsp-post-link in their config file (find
>> . -name *.cfg | xargs -e grep define | grep bsp-post-link) but
>> couldn't find similarity between them (other than "$(OBJCOPY) -O
>> binary --strip-all \ $(basename $@)$(EXEEXT) $(basename $@)$(BINEXT) "
>> in most of them . Sir I wanted to know is there any specific way to
>> categorize them from other BSPs, And I am not able to find similar set
>> of commands in rtems 4.11 (since in project description
>> "https://devel.rtems.org/ticket/4272" its written that post-link was
>> active in earlier versions of rtems).
>
>
> In 4.11, these were under c/src/lib/libbsp. There was a source reorganization
> between 4.11 and 5 to ease the transition to waf. This command finds the
> same set of bsp-post-link definitions once you are on the 4.11 branch.
>
> find c/src/lib/libbsp -name "*.cfg" | xargs -e grep post-
>
> I mentioned there was a few patterns of what these do. mrm332.cfg
> is creating an S-Record image to download. mvme2100.cfg is creating
> a compressed binary with a program prepended that decompresses it
> and jumps to it.
>
> I'd suggest using Google Sheets to capture a list of every BSP with
> a bsp-post-link stanza and a second column to categorize them based
> on the output format. You and I have talked about the compressed
> binary with header, S-Records, and mkimage for U-Boot. I would
> expect that without those types, you will find similarities and a set
> of repeating things that get tailored from BSP to BSP.
>
> Compare two that have the same output format. The S-Record
> output ones should be easy to compare.
>
>>
>> Also I have started making a draft on this project and wanted to know
>> where I should post it to get some initial reviews on it.
>
>
> This is pressing as is getting an application and draft filed with Google.
>
> --joel
>
>>
>> Thanks, Ayushman
>>
>> On Mon, Apr 5, 2021 at 9:35 AM Ayushman Mishra <ayushvidushi01 at gmail.com> wrote:
>> >
>> > Boot-loader is used to initialize the hardware device , but is there
>> > any way to simulate the boot-loader without hardware?.
>> > And I suppose the command "rtems-boot-image" performs somewhat similar
>> > function to one of the objective of this project "This project is
>> > about capturing the commands and logic needed to convert the RTEMS
>> > executable format to the BSP boot loader format"  ( 3rd point of "The
>> > boot image tool can:"
>> > https://docs.rtems.org/branches/master/user/tools/boot-image.html)
>> >
>> > Also I think potential mentors of this project are Chris Johns and
>> > Joel Sherrill , please correct me if I'm wrong.
>> >
>> > On Sun, Apr 4, 2021 at 10:27 PM Ayushman Mishra
>> > <ayushvidushi01 at gmail.com> wrote:
>> > >
>> > > Respected Sir,
>> > > I went through project description https://devel.rtems.org/ticket/4272
>> > > (BSP Executable Conversion) and wanted to take it as GSOC project.
>> > > I know python programming ,shell scripting and after working a little
>> > > bit on project #4334 "Replace Mongoose with Civetweb" (in which I am
>> > > not able to proceed further) I have gained some knowledge about bsp
>> > > build system in rtems6.
>> > > I have already build tools and bsp xilinx_zynq_a9_qemu  on rtems5 and
>> > > rtems6 and package libbsd for bsp erc32 and xilinx_zynq_a9_qemu.
>> > >
>> > > Also, I have a few doubts regarding project "BSP Executable Conversion" :
>> > > 1. In description its written to make a command "rtems-exe-convert" ,
>> > > I wanted to ask what will be the actual function of this command like
>> > > after capturing the commands and logic for converting 'RTEMS
>> > > executable format' will it create a boot-loader for specific bsp and
>> > > provide it with 'RTEMS executable format' ?,
>> > > and also I wanted to ask what is need for this command (or this
>> > > project in general) and how will it affect the present building
>> > > procedure of rtems?
>> > > (like first building the specific tools then installing the particular bsp)
>> > >
>> > > 2. I have build 2 BSP in simulation but wanted to ask are all BSPs
>> > > available in rtems able to perfectly build in simulation or do I need
>> > > some specific hardware for any BSP.
>> > > I would be very thankful if you can please clarify my above doubts and
>> > > provide a little guidance about this project.
>> > > Thanks, Ayushman


More information about the devel mailing list