Project

General

Profile

creating a new rootfilesystem

Added by Tom Riddle over 2 years ago

We are using an L138 with MDK 2014, using kernel 3.2.0 we have a need to create a rootfilesystem. I found a few links

https://support.criticallink.com/redmine/projects/arm9-platforms/wiki/Board_Support_Package

this references sw/ARM/linux/oe for the Open-embedded overlay, but no such directory exists

Since it is after 2012 this link suggests using Open Embedded

https://support.criticallink.com/redmine/projects/arm9-platforms/wiki/Installing_Open_Embedded_Core

would appreciate guidance of the suggested process to follow to create a custom rootfilesystem. Thanks, Tom


Replies (11)

RE: creating a new rootfilesystem - Added by Gregory Gluszek over 2 years ago

Hi Tom,

The quickest and easiest path to customizing a root file system is to start from the file system images included in the MDK under the "fs" directory. The mityomap-base file system is a minimal file system image that you can build upon to create the desired file system for your project.

However, if you need more customization you may want to pursue utilizing the meta layer Critical Link provides to be used with the Yocto Project (https://support.criticallink.com/gitweb/?p=meta-mitydsp-l138.git;a=summary). The challenge with this approach is that we do not yet have instructions on this method. The amount of effort required to follow this approach will vary depending on your familiarity with the Yocto Project.

Thanks,
\Greg

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Hi Greg,

Thanks. Our immediate task is to add pulseaudio to our MityDSP system, we will be integrating some external codecs shortly. Since pulseaudio is not a pkg that came with the mityimap-full, we need to add it. I do have some yocto experience albeit it's been a few years. So it appears this the daisy release you are working from. Are you still hosting on Ubuntu 12.04?? Thanks, Tom

RE: creating a new rootfilesystem - Added by Jonathan Cormier over 2 years ago

It does appear that pulseaudio is available in the opkg package list so you could try installing it using opkg install. Hope this helps.

root@mityomapl138:~# opkg list | grep pulseaudio
...
pulseaudio - 1.1-r8 - pulseaudio version 1.1-r8
pulseaudio-dbg - 1.1-r8 - pulseaudio version 1.1-r8 - Debugging files
pulseaudio-dev - 1.1-r8 - pulseaudio version 1.1-r8 - Development files
pulseaudio-doc - 1.1-r8 - pulseaudio version 1.1-r8 - Documentation files
pulseaudio-gconf-helper - 1.1-r8 - pulseaudio version 1.1-r8
...

RE: creating a new rootfilesystem - Added by Jonathan Cormier over 2 years ago

Note this is for the 2014 MDK filesystem.

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Hi Jonathan,

Hmmm a check here doesn't list pulseaudio. I'm pretty sure that I flashed on this board the mity-omap-full.jffs2 dated 2014-01-13. It lists the fpgautil "trunk+svnr2992-r7" and fpga-driver-modules "trunk+svnr2992-r51". Is there another way to check that I have the correct 2014 MDK filesystem image?

Thanks, Tom

RE: creating a new rootfilesystem - Added by Jonathan Cormier over 2 years ago

root@mityomapl138:~# cat /etc/angstrom-build-info 
Configured Openembedded layers:
meta-angstrom     = angstrom-v2012.05-yocto1.2:671793fb1c971d05ce068230f362b2f87b19059d
meta-oe           
toolchain-layer   
meta-efl          
meta-gpe          
meta-gnome        
meta-xfce         
meta-initramfs    = denzil:24e1ebc21da20240a41984b7f5c90aa9bd65a7e8
meta-opie         = master:efa3892b20a4ef80274e56e5633ebd62c16f9731
meta-java         = master:3386ea6c96096f107f43f282f654e5afa456109e
meta-browser      = master:c47f59df2e723495679c751cbdf6a8c6adec4b6a
meta-mono         = master:83f8233b0498aadb18bf7605c3ba6c71d9e13a3a
meta-kde          = master:ca8814ec3f61ec069610495598dae3d83992ea27
meta-ti           = master:da7c9449fa3272f63e0ba1f8a42fd3aba66e1ceb
meta-efikamx      = master:2c09a3a780b23448e8a6ca964256ff7f5ccba65d
meta-nslu2        = master:3d9fc951b05b4df476374b6fc3085ebac7f293ee
meta-htc          
meta-nokia        
meta-openmoko     
meta-palm         = master:2b106be01228f64298d6cb338f93088806594344
meta-handheld     = master:1f05a15aceb4c3a19fa070463b58125b5658b2a9
meta-raspberrypi  = master:03d3e7e6325d919ff2c64c39edd9008d0a93c7a4
meta-intel        
meta-sugarbay     
meta-crownbay     
meta-emenlow      
meta-fishriver    
meta-fri2         
meta-jasperforest 
meta-n450         = master:f75f9b6f68473eb0efac802409608f8389be0030
meta-mitydsp      = master:f2ac5d5fa3815b54ae888e8cc4ef5c40af14b90a
meta              = denzil:d7bf94647f17c0382caad8af0bdda837b14b22dc

root@mityomapl138:~# cat /etc/angstrom-version 
Angstrom v2012.05 (Core edition)
Built from branch: denzil
Revision: d7bf94647f17c0382caad8af0bdda837b14b22dc
Target system: arm-angstrom-linux-gnueabi

Heres what each of my opkg config files looks like

root@mityomapl138:~# tail /etc/opkg/*
==> /etc/opkg/arch.conf <==
arch any 6
arch noarch 11
arch arm 16
arch armv4 21
arch armv4t 26
arch armv5 31
arch armv5t 36
arch armv5e 41
arch armv5te 46
arch mityomapl138 51

==> /etc/opkg/base-feed.conf <==
src/gz base http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/base

==> /etc/opkg/debug-feed.conf <==
src/gz debug http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/debug

==> /etc/opkg/gstreamer-feed.conf <==
src/gz gstreamer http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/gstreamer

==> /etc/opkg/mityomapl138-feed.conf <==
src/gz mityomapl138 http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/machine/mityomapl138

==> /etc/opkg/noarch-feed.conf <==
src/gz no-arch http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/all

==> /etc/opkg/perl-feed.conf <==
src/gz perl http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/perl

==> /etc/opkg/python-feed.conf <==
src/gz python http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/python

==> /etc/opkg/sdk-feed.conf <==
#src/gz sdk http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/sdk

Make sure you do a opkg update to get the updated package list.

root@mityomapl138:~# opkg update
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/base/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/base/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/base.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/debug/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/debug/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/debug.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/gstreamer/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/gstreamer/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/gstreamer.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/machine/mityomapl138/Packages.gz.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/all/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/all/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/no-arch.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/perl/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/perl/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/perl.
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/python/Packages.gz.
Inflating http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/python/Packages.gz.
Updated list of available packages in /var/lib/opkg/lists/python.
Collected errors:
 * opkg_download: Failed to download http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/machine/mityomapl138/Packages.gz, wget returned 8.

root@mityomapl138:~# opkg install pulseaudio
Installing pulseaudio (1.1-r8) to root...
Downloading http://feeds.angstrom-distribution.org/feeds/v2012.05/ipk/eglibc/armv5te/base/pulseaudio_1.1-r8_armv5te.ipk.
Configuring pulseaudio.

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Hi,

It's the opkg update that I needed to execute. Ok, so now there are quite a few pulseaudio pkgs that are listed, which is good. Also the commands you listed, their output matches what you have. Now I would expect to see the pulseaudio bin in something like /usr/bin but I don't.

Tom

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Hi... never mind, need to install the pulseaudio-server. looks good now, thanks. Tom

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Hi, I was able to get pulseaudio going with opkg and could stream as required over the network. Thanks for the assistance.

So during this task I familiarized myself again (it has been a few years) with the yocto dev process, but did run into issues WRT the host system build of yocto, python versions, etc... Greg mentioned the meta layer MityDSP-L138 Yocto Layer. As a side task I'd like to be in sync with your dev environment.

Please let me know what Ubuntu version of the host, and yocto release you are currently using with the MDK 2014, so that I can be current just in case I need to do a custom rootfilesystem. Thanks, Tom

RE: creating a new rootfilesystem - Added by Jonathan Cormier over 2 years ago

Tom Riddle wrote:

So during this task I familiarized myself again (it has been a few years) with the yocto dev process, but did run into issues WRT the host system build of yocto, python versions, etc... Greg mentioned the meta layer MityDSP-L138 Yocto Layer. As a side task I'd like to be in sync with your dev environment.

Please let me know what Ubuntu version of the host, and yocto release you are currently using with the MDK 2014, so that I can be current just in case I need to do a custom rootfilesystem. Thanks, Tom

MDK 2014 was built using an ancient arago build. It is not yocto based.

The existing mitydsp meta layer is based off of yocto daisy. Currently only builds on a Ubuntu 14.04 machine, 16.04 doesn't work due to some library conflicts :(.
https://support.criticallink.com/gitweb/?p=meta-mitydsp-l138.git;a=shortlog;h=refs/heads/daisy

RE: creating a new rootfilesystem - Added by Tom Riddle over 2 years ago

Jonathan... thanks for the clarification, that helps. Regs, Tom

    (1-11/11)
    Add picture from clipboard (Maximum size: 500 MB)