UbuntuLinaro for v2.1 Kernel

  • Hi,

    Since I had the ARMStone A9 board (before 2.0 kernel) I'm using the default SD card for testing and development.

    However, when I installed Linux Kernel 2.1 release, I insert my SD card into the board and run it, it stop with the message "mountall event failed". It doesnt works. But, If I back to the older versión of Kernel, it works fine.

    My main question is: Exists (in dl zone), any image of the default Ubuntu Linaro)? if not, How can I build a root fs like that Ubuntu? Do you have a defconfig like buildroots/yocto?

    Thanks a lot
    Have a nice day

  • When upgrading from Linux before 2.0 to a 2.x version, you must update *all* parts of the system software: NBoot, U-Boot, Kernel and Rootfs. The reason is that the internal way of accessing the NAND flash has completely changed and the new versions do not understand data that was written by the old version and vice versa.

    Start with erasing the old content. Go to NBoot (type 's' until it repeats and while the s is repeating, start the board). Then in NBoot type 'E'. This will erase the whole flash. Don't worry, NBoot will stay alive of course.

    Then update NBoot. A direct update to VN25 is often not possible, you have to use an intermediate step by installing VN17 first. Download NBoot VN17 for your Board (nbootIMX6Q_17.bin for Quad-Core CPU version, nbootIMX6SDL_17.bin for Solo or Dual-Lite CPU version). Then type 'D' in NBoot and download the intermediate version via serial line to your board. Use a Terminal program that supports 1:1 binary download, for example DCUTerm.exe from F&S (File -> Transmit Binary File...) or TeraTerm (File -> Send File, don't forget to activate the binary download check mark in the file selection dialog). After download is complete, type 'f' to save the file to NAND flash.

    Now restart the board, and go again to NBoot. Repeat the steps but now download VN25 of NBoot. Here there is only one version for all CPU types, you do not have to take care anymore what CPU type you have. Again 'D' for download and 'f' to save. Then restart the board again and go again to NBoot. The version should now show VN25. Type 'B' to show the bad block table. If the list shows more than 3 or 4 bad blocks, then type 'U'. This will unmark all bad blocks. The bad block marker was moved to a new position in the new NAND access method and therefore this information is not valid anymore anyway.

    This procedure up to here is a little bit complicated, but it is an exception that you need to update NBoot in such a two-step manner. It is even an exception that you need to update NBoot at all. Usually you can use the NBoot version that was delivered with your board. New boards that are shipped now will already have VN25 (or newer) installed. Please note that it is not meant to downgrade the boards again.

    The remaining process is rather simple. In NBoot type 'd' and download U-Boot. Again 'f' to save and then you can immediately start U-Boot by pressing 'x'. Or simply restart the board.

    If you have the appropriate new files for kernel, rootfs and install.scr on the SD card, you can simply insert this SD card. And when you start U-Boot, it will automatically install everything.

    When you are talking of the "default SD card", are you talking of the Ubuntu image? This was *never* meant as a basis for a final product. It was only meant to quickly explore and show what is possible on such a board like the armStoneA9. In fact we strongly recommend not to use the SD card as media for the root filesystem in a product. SD card slots tend to produce contact problems over time. The contacts of the slot as well as of the SD card are meant to be inserted and ejected from time to time as this process cleans the contacts and removes any corrosion/oxidation or dust. If the card is in the slot all the time, contacts will corrode and it will get problems after some time.

    This is why we recommend using Buildroot. This is a bottom-up approach where you only add those packages that you really need. Nothing more, nothing less. A resulting root filesystem often only has about 30 to 100MB, including your own application. And such a root filesystem easily fits into the internal NAND flash. It also starts way faster and uses UBIFS which is especially meant for flash memories. (Ubuntu is meant for a desktop and is not aware of the fact that it is running on an SD card, and the filesystem is EXT3. So all the file accesses will stress the SD card above its limit, and therefore this is another reason for a most probable failure of the SD card in the field).

    So no, we actually never have supported the Ubuntu image in the past and we also do not have a newer Ubuntu image available at the moment.

    Your F&S Support Team

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Hi, thanks for your response.

    However, we don't use the Ubuntu SD card for production. We're using a buildroots and a yocto for 2 projects. But for the 3rd we use the SD card with ubuntu to check if we can use the board for it.

    If you say that you cant provide that Ubuntu image I'll use a yocto full compilation.