Have 12.04.1 LTIB working for imx53 QSB, how to add saber lite 6 board? And where are sources?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Have 12.04.1 LTIB working for imx53 QSB, how to add saber lite 6 board? And where are sources?

2,820 Views
RodneyFulk
Contributor III

I am able to build binaries from the sources for my imx53 Start-R board without issue and have test run it.

I recently bought a Boundary Devices IMX6 sabre lite board and now I am trying to setup the LTIB environment for it.

Since this works with the IMX53 board will it work without further patching with the new Sabre Lite board?

Also, where can I get the sources for the sabre lite board so I can compile my own kernel etc for it?

As mentioned in another thread I am working on a project where I want to have the same version of linux on both of my boards. I also will have to compile new drivers into the kernel and possibly make my own drivers for some devices so I really need to have the LTIB type environment for both boards. I can seem to find binaries already built but I want to try building my own like I can with the IMX53QSB

I am pretty much brand new to this. I know there is a method for doing this because I was in a freescale class in detroit where we used these boards and we were using the LTIB environment.

Labels (1)
12 Replies

1,191 Views
OtavioSalvador
Senior Contributor II

Did you see Yocto?

We've worked hard to add support for 12.09.01 on it and it has full support for several boards, including sabrelite. It does include newer software stack for target and is compatible with different hosts distributions so you should be ready to give it a try in few minutes.

Please check Freescale/fsl-community-bsp-platform · GitHub it should be precise enough for you to start. If you want to learn more about Yocto itself, https://www.yoctoproject.org/documentation/current is a good starting point.

Regards,

0 Kudos

1,191 Views
RodneyFulk
Contributor III

I have not played around at all with Yocto yet. I am trying to understand how to do things for myself before I use tools like that to build something. I will look through that though and start tinkering.

I realize the imx6 boards are relatively new and my imx53qsb is more mature but it seems like the information should be easy to find and figure out. With the qsb everything is right there and has stuff easy to follow. Just seems with these imx6 boards it takes much more research than necessary. If I ask on a non freescale forum about any of this stuff I keep hearing more and more "You need to start working with a pandaboard. The environment is much more friendly and many more people are developing for it."   I am not there yet. I will likely pick one up because the project I am working on is pretty flexible and I really just need small computers that can run Linux. I think the freescale boards have much better hardware so I would rather use them.

If I can get it to where I am able to have a full implementation of the most current LTS of Ubuntu on the board, can recompile the kernel so I can incorporate my own drivers and applications I write and be able to accomplish some other specialized projects then I will be happy. I really don't see any other ARM boards powerful enough to do some of the future work I will be working on so I would much rather work with the freescale boards. Although using a tool such as Yocto will be nice I want to understand how things fit together better so I can better track down problems that I have.

But thanks for pointing this out to me. I will look into it more.

Rodney

0 Kudos

1,191 Views
OtavioSalvador
Senior Contributor II

Hello RodneyFulk


From my point of view, the Ubuntu might have some problems for distribution as:

* if you change binary packages you break upgrade process so you cannot upgrade any package in Ubuntu or you risk it to override "binary hacks" in the system (file override, force new links or something like that);

* change binary files makes a GPL violation as you won't be able to provide the binary source for these;

* it makes a nightmare for maintainence as any change in system can break it completely.

Another possible problem is the presense of GPLv3 code in the system. As I don't know what is the product you're doing it might or not be important but bear on mind that GPLv3 has some implications for patents and also makes impossible to use cryptography in bootloader (except if you give the bootloader the possibility to add new keys so user can replace the kernel - commonly known as Tivoization). In case of Yocto, you can make a GPLv2 only system avoiding those "legal problems" for you, if it is a concern.

At O.S. Systems we usually do not use Ubuntu for embedded systems due the license issues (as pointed above), boot speed and memory use so I am not a big fan of its use for products in this specific market. So for a demo or a prototype Ubuntu is a good option but for a customized product I’d use Yocto.


Regards,


Otavio

0 Kudos

1,191 Views
RodneyFulk
Contributor III

Thank you for the information. I have 3 separate projects that I am working on of various complexities. I am a Software Engineering Student and I am trying to learn as much as I can while developing some projects not only for myself but to show I can do these things to any prospective employer in the future.

I am working on a security application that I need some patents for before I make public. The ARM portion will need a very minimal OS included and because it is a security application the less the better. So Yocto is a good candidate to make the base system for this one once I figure it out.

I am also working on a basic infotainment system for automotive use. I am part of a team working on a .NET based GPL3 front end with plug ins. I took on the project's linux side and plan to use Ubuntu as the base OS. I have a PC running Linux to build and test this on now with Ubuntu 12.04.1 and want a similar system to test this on under ARM. The released software will just be the front end and plugins. I am looking to make additional hardware to make this work nicely and the drivers will be for Linux. But this is the reason for wanting to run Ubuntu on my board. I want to make sure it will work on a reasonably full Ubuntu release. 

My third Project is a personal project and little if any of the code will be released. I am building a super smart vehicle as a sort of test bed and resume. I am a Software Engineering student and I want to build my truck into something very unique that can develop and show my skills. At last count I will likely be making use of 7 ARM boards, an i7 computer and probably a dozen Parallax Propellers. I will have a kinect like interface in my truck that will take inputs from me as well as locate where my head is and where I am looking. I have found hardware that should allow me to have a full HUD covering the whole windshield which will also allow for augmented reality. 360 degree object detection using radar and Stereoscopic video. Security and convenience features beyond what is currently available. And some of the more conventional infotainment stuff you would normally find in a CarPC. I plan to make use of mostly open source code and write only what I have to to make everything click together. This project will not require a full blown Ubuntu install either since each ARM board will have a specific job to accomplish and will likely be very customized.  I expect the ARM boards to run minimal installations and the i7 board will likely run Win7 but may run Linux.

I am setting up my development machines now and trying to understand how this all works so I can accomplish what I want. I will be setting up a blog to track my progress with 2 of the projects but my security application is much more secretive until I can patent a couple of my ideas and get it up and running.

So in a nutshell you can understand a little better why I am trying to get Ubuntu on my board.

Rodney

1,191 Views
OtavioSalvador
Senior Contributor II

RodneyFulk your projects are very interesting and I do advice you to learn more about Yocto as it'll allow you to reduce the amount of work you'll need to do and share code about those projects.

The learning process is not easy but I ensure you it will be worth it.

Keep the good work.

Regards,

0 Kudos

1,191 Views
RodneyFulk
Contributor III

Thanks again.. I was able to get online there and it build a minimum core but no clue what to do with it from there but I will read the directions and see what I can figure out.

I am not used to configuring packages for Linux to know what I need to use and what not to use. I am used to installing full desktops and going from there.

Rodney

0 Kudos

1,191 Views
RodneyFulk
Contributor III

I have not been able to find the proper sabre lite source code yet for my board.

Boundary devices web page talks about getting the Freescale source code but the only things I could find even close were related to the mentioned solo lite evaluation kit and that appears to be something a little different. I used this source code however to build an image with my Ltib environment. The package I used was L3.0.35_12.10.02_GA_source.tar.gz .

Adeneo's web page shows binaries for android and linux but no source code. There is mention of a one time license fee to get the source code but doesn't mention what that is in relation to. I am making the assumption that this is for the WEC7 source code. Basing this assumption off my experience with the imx53qsb.

If I go to Linaro's web page and look for source code there is nothing showing since the 12.04 release which was for imx53.

When I use the above mentioned package it does not make a bootable system because it does not contain the bootscripts that are needed to make the boundry devices run. When I try to just copy over the boot scripts from the LTIB 12.09 GA image onto the SDcard it freezes during the boot and the screen its self just gets brighter and brighter until there is nothing but a bright white screen.

SO I really am hopeful that someone here can help me out and lead me to the right source code I need for this board.

Getting very frustrated...

As I mentioned before I want to be able to run a full Ubuntu installation on this board with the ability to rebuild the kernel for additional drivers as needed. I will likely be writing some of my own drivers for some devices I want to hook up.

Rodney

0 Kudos

1,191 Views
Yuri
NXP Employee
NXP Employee

Freescale Linux BSP (LTIB - L3.0.35_12.10.02_GA_source.tar.gz) contains i.mx6q sable lite option.

./ltib -m selectype

0 Kudos

1,191 Views
RodneyFulk
Contributor III

That is the ltib release I am using.

When I had to check the type of board to build for I had the choice between a imx6q and an imx6s board. I followed the Sabre lite evaluation kit information and selected the imx6s. This is the configuration I compiled with but as I said above the 6x_bootscript or 6q_bootscript that are required by Boundary to get this board to boot are NOT included.

I have the boundary device Binary for the 12.09 version they have available from their web site and I was able to boot this fine. I tried copying the bootscript related files from this older version to the compiled version I did and it goes to the point it is loading the kernel via the debug terminal and stops. The screen starts out with a black background with a penguin in the upper left corner and a display of the u-boot being used. While the kernel is frozen the screen starts slowly turning more and more bright until the whole screen is white with nothing otherwise visable on the screen. I don't know if this is an indication that the screen memory is being somehow overwritten or what.

I have seen suggestions on the Boundary Devices site that appear to allow you to write to the flash to allow you to boot off the SD card in order to boot Linaro stuff but I haven't spent enough time reading it to understand what they are doing. I think they are just changing the vector that uboot looks at to boot the uboot image from. I MAY try this but since I have little experience at this time I am a little afraid of writing to the flash.

From what I can tell it looks like boundary is running uboot from internal flash then loads the environmental variables from the SD card, then loads the boot script from the rootfs.  I am still relatively new to the concepts related to booting an embedded device. I am used to my imx53qsb being all on the SD card and having to change the u-boot to turn screens on and off. This is a little different and I haven't as of yet found out how to apply the bootscripts properly.

Rodney

0 Kudos

1,191 Views
Yuri
NXP Employee
NXP Employee

Please use imx6q for selection (the sable lite is based on i.MX6Q).


"The hardware specifications for the Sabre Lite board are the following:

• Quad-Core ARM® Cortex A9 processor at 1GHz per core
..."

1,191 Views
RodneyFulk
Contributor III

Ok, When I get the chance I will try to compile this as a imx6q board instead of the imx6s board later today.

But I still have the problem of the 6x_bootscript/6q_bootscript system that Boundary uses to automatically configure the displays. (6q was the original and 6x is the current version)

Are these good as they are or do I need to make adjustments to them? I am going to guess at this point that my problems earlier today were due to my compiling as a imx6s board.

I am using the scripts included with the prebuilt boundary images from the 12.09 release. I could not find any information on them other than they allow the boards to self config to be used with any of the supported displays.

As I think I mentioned earlier they supply directions on how to apparently bypass these scripts but I haven't had time to really go over the information to better understand it yet. Here is the link for that...

http://boundarydevices.com/running-linaro-ubuntu-on-i-mx6-sabre-lite-and-nitrogen6x/

0 Kudos

1,190 Views
RodneyFulk
Contributor III

On Boundary Devices web site I was able to find some information about the ltib in this link which was not obvious but I found it after searching for about 2 hours on various locations...

http://boundarydevices.com/ltib-on-i-mx6-without-x/

The first portion of the patches for this need more information for them so do as I did and follow this link first:

Re: Ubuntu 11.10 Oneiric 64-bit Virtual Machine and building i.MX53 L2.6.35-11-09-01

Then following the Boundary patch list I followed the next link and modified the files:

rootfs/usr/lib/libc.so

rootfs/usr/lib/libpthread.so
removing all of the hard links from these files as outlined in this link:


Re: LTIB on Ubuntu 12.04

I was able to build an image at this point but followed the directions for the alsa-utils modifications as outlined here:

Re: LTIB on Ubuntu 12.04

I tried to follow the directions for the glib upgrade and was able to do the first part but the second part I could not figure out as outlined here:

[Patches] (BSP 11.09.01 GA) camera/gstreamer/glib applications

I will comment in THAT thread asking how to find the location to patch for the second portion.

I still have issues but I will detail them in a new message but I was atleast able to complete the build process without issue.