<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Mar 12, 2019 at 6:59 AM Christian Mauderer <<a href="mailto:christian.mauderer@embedded-brains.de">christian.mauderer@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Am 12.03.19 um 11:35 schrieb Vijay Kumar Banerjee:<br>
> <br>
> <br>
> <br>
> On Tue, 12 Mar 2019 at 15:27, Christian Mauderer<br>
> <<a href="mailto:christian.mauderer@embedded-brains.de" target="_blank">christian.mauderer@embedded-brains.de</a><br>
> <mailto:<a href="mailto:christian.mauderer@embedded-brains.de" target="_blank">christian.mauderer@embedded-brains.de</a>>> wrote:<br>
> <br>
>     Am 12.03.19 um 10:52 schrieb Vijay Kumar Banerjee:<br>
>     ><br>
>     ><br>
>     > On Mon, 11 Mar 2019 at 19:21, Gedare Bloom <<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a><br>
>     <mailto:<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>><br>
>     > <mailto:<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a> <mailto:<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>>>> wrote:<br>
>     ><br>
>     ><br>
>     ><br>
>     >     On Sun, Mar 10, 2019 at 7:31 PM Joel Sherrill <<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a><br>
>     <mailto:<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a>><br>
>     >     <mailto:<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a> <mailto:<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a>>>> wrote:<br>
>     ><br>
>     >         The MINIX license is BSD with advertising clause as I read it.<br>
>     >         That is less preferable to a 2-paragraph BSD license that you<br>
>     >         are likely to find in Freebase. Try there.<br>
>     ><br>
>     >     The license is fine if you find nothing else. I assume Joel meant<br>
>     >     FreeBSD.<br>
>     ><br>
>     >     Study the framebuffers in i386 and raspberrypi code bases.<br>
>     ><br>
>     ><br>
>     > Hello,<br>
>     ><br>
>     > Thanks for the reference, I found the tda19988 driver in<br>
>     freebsd source.<br>
>     > Following the raspberrypi framebuffer, I have made a header file<br>
>     with the <br>
>     > basic functions to implement. The implementation will be using the <br>
>     > driver code from the freebsd. <br>
>     ><br>
>     > What needs to be figured out next is how to use the driver code<br>
>     with rtems,<br>
>     > since the file uses a lot of header files from the freebsd source,<br>
>     how do we<br>
>     > go about integrating it with rtems? Is there any guide on using<br>
>     codes from <br>
>     > different projects into RTEMS? <br>
>     >  <br>
>     ><br>
> <br>
>     Hello Vijay,<br>
> <br>
>     for FreeBSD we have the libbsd as an easy way to integrate sources and<br>
>     keep them up to date. Although I don't think that we have a framebuffer<br>
>     driver there yet I would expect that it is a good method for that too.<br>
> <br>
>     Best regards<br>
> <br>
>     Christian<br>
> <br>
> Hi<br>
> <br>
> I cloned the rtems-libbsd and the framer driver is not there. I wonder<br>
> if adding<br>
> this drivers to libbsd is itself a meaty task. Do we need a ticket for<br>
> this ?<br>
<br>
The files are copied between FreeBSD and libbsd using a script.<br>
Basically you have to add the files you need to a (new) module in<br>
libbsd.py. After that you can copy files with the freebsd-to-rtems.py.<br>
Please take a look at CONTRIBUTING.md in the rtems-libbsd repo on how to<br>
use the script.<br>
<br></blockquote><div><br></div><div>Bringing the framebuffer codebase into libbsd from FreeBSD, and then demonstrating it on a target (e.g., BBB), would make a solid GSoC.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> <br>
> Also, the driver uses i2c bus driver from FreeBSD source, I see that the<br>
> i2c driver<br>
> is nicely supported in the rtems beagle bsp, how to use the i2c module<br>
> in the bsp,<br>
> with the hdmi framer driver in libbsd ? (I'm a bit confused here :) )<br>
> <br>
<br>
Most likely there will be adaptions necessary here. Either you have to<br>
replace the BSPs driver with the one from FreeBSD or (the method that I<br>
would suggest) you have to isolate the calls in the FreeBSD framebuffer<br>
driver and replace them with RTEMS calls. With some luck, you can just<br>
overwrite some functions for that. But that is one of the points that<br>
would need a more thorough look.<br>
<br>
Besides I2C you should have a look at which other subsystems are used.<br>
Every subsystem that isn't ported yet can be more or less work depending<br>
on the interface. Some might can be ported together with the driver<br>
others might have to be replaced by RTEMS versions.<br>
<br></blockquote><div><br></div><div>+1<br></div><div><br></div><div>And reach out to others who have done some similar work in the past. We have got at least a few students in recent history who added more mud to libbsd. :)</div></div></div>