[PATCH v2] user/bsps: Add beagle BSP
Vijay Kumar Banerjee
vijaykumar9597 at gmail.com
Mon Jun 10 12:53:38 UTC 2019
On Mon, Jun 10, 2019, 6:13 PM Christian Mauderer <list at c-mauderer.de> wrote:
> On 09/06/2019 16:57, Vijay Kumar Banerjee wrote:
> > ---
> > user/bsps/bsps-arm.rst | 69 +++++++++++++++++++++++++++++++++++++++++-
> > 1 file changed, 68 insertions(+), 1 deletion(-)
> >
> > diff --git a/user/bsps/bsps-arm.rst b/user/bsps/bsps-arm.rst
> > index eb972c6..e6826cd 100644
> > --- a/user/bsps/bsps-arm.rst
> > +++ b/user/bsps/bsps-arm.rst
> > @@ -93,7 +93,74 @@ TODO.
> > beagle
> > ======
> >
> > -TODO.
> > +This BSP supports four variants, `beagleboardorig`, `beagleboardxm`,
> `beaglebonewhite`
> > +and `beagleboneblack`. The basic hardware initialization is not
> performed by
> > +the BSP. A boot loader with device tree support must be used to start
> the BSP,
> > +e.g. U-Boot.
> > +
> > +TODO(These drivers are present but not documented yet):
> > +* Clock driver.
> > +* Network Interface Driver.
> > +* SDcard driver.
> > +* GPIO Driver.
> > +* Console driver.
> > +* PWM Driver.
> > +* RTC driver.
> > +
> > +Boot via U-Boot
> > +---------------
> > +To boot via uboot, the ELF must be converted to a U-Boot image like
> below:
> > +
> > +.. code-block:: none
> > + arm-rtems5-objcopy hello.exe -O app.bin
> > + gzip 9 app.bin
> > + mkimage -A arm -O linux -T kernel -a 0x80000000 -e 0x80000000 -n
> RTEMS -d app.bin.gz rtems-app.img
> > +
> > +Getting the Device Tree Blob
> > +----------------------------
> > +
> > +The Device Tree Blob(dtb) is needed to load the device tree while
> starting up
> > +the kernel. Currently the dtb is built using the linux
> `device-tree-rebasing
> > +<
> https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/
> >`_
>
> Sorry that I have to nag about that again. I know I suggested that tree.
> But it seems that there is a problem with it: If I build the tree from
> that source, neither SD nor your I2C overlay driver works. I haven't had
> a look at it yet what has been changed.
>
I looked into that repo and it seems like it doesn't work with overlay
because the makefile doesn't use the -@ option in dtc
https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/Makefile#n119
> So either we would have to suggest a (working) branch of that repo or we
> should link to some other repo. Most likely the dts files from FreeBSD
> would be best source to document for usage with libbsd.
>
> Please wait with sending a v3 for at least a day or two. Maybe someone
> else has a good idea for a source.
>
> > +repository.
> > +
> > +Writing the uEnv.txt file
> > +-------------------------
> > +
> > +The uEnv.txt file is needed to set any environment variable before the
> kernel is
> > +loaded. Each line is a u-boot command that the uboot will execute during
> > +starting up.
> > +
> > +Add the following to a file named uEnv.txt:
> > +
> > +.. code-block:: none
> > + setenv bootdelay 5
> > + uenvcmd=run boot
> > + boot=fatload mmc 0 0x80800000 rtems-app.img ; fatload mmc 0
> 0x88000000 am335x-boneblack.dtb ; bootm 0x80800000 - 0x88000000
> > +
> > +I2C Driver
> > +----------
> > +
> > +This BSP uses the I2C framework and is registered using
> > +``am335x_i2c_bus_register()`` the function prototype is given below:
> > +
> > +.. code-block:: C
> > + int am335x_i2c_bus_register(
> > + const char *bus_path,
> > + uintptr_t register_base,
> > + uint32_t input_clock,
> > + rtems_vector_number irq
> > + );
> > +
> > +This function is needed only while registering with custom path with
> custom
> > +values. For registering the `/dev/i2c-0` device, a wrapper function is
> provided,
> > +``bbb_register_i2c_0()`` similarly ``bbb_register_i2c_1()`` and
> > +``bbb_register_i2c_2()`` are respectively used to register `i2c-1` and
> `i2c-2`.
> > +
> > +SPI Driver
> > +----------
> > +
> > +The SPI device `/dev/spi-0` can be registered with
> ``bbb_register_spi_0()```
> >
> > csb336
> > ======
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20190610/84bde78c/attachment-0002.html>
More information about the devel
mailing list