Compare commits

...

54 Commits

Author SHA1 Message Date
Harald Welte 87fd9e70db systemd_sysmocom.inc: Make sure machine-specific systemd.conf is used
We have machine-specific systemd.conf for sysmobts2100 and owhw, but we
didn't add them to SRC_URI so far, resulting in them not being used as
intended.
2017-06-16 11:15:18 +02:00
Harald Welte 3a1ab31b38 sysmobts2100: add RDEPENDS to required kernel modules
We need to makes sure that the dsp/fpga related kernel modules are
included in any image we generate. Use MACHINE_ESSENTIAL_EXTRA_RDEPENDS
just like in sysmobts.inc

Closes: SYS#3687
2017-06-16 10:22:43 +02:00
Daniel Willmann bae9234b56 base-files: Fix /etc/fstab file to not mount the root filesystem in /boot
Ticket: SYS#3688
2017-06-15 18:03:21 +02:00
Harald Welte a9cc2b9a79 lc15: use OsmoBTS service file
Use the file from osmo-bts master instead of local copy similar to the
way it's done for sysmobts.

Related: SYS#3686
2017-06-15 15:05:52 +02:00
Max d6ac211bce Install BTS-specific -mgr.cf
Use *-mgr.cfg file which matches the BTS model.

Related: SYS#3686
2017-06-15 15:04:49 +02:00
Harald Welte 97af6203cd sysmobst2100: Add required kernel modules for osmo-bts
Closes: SYS#3687
2017-06-15 15:04:49 +02:00
Harald Welte 90a8c7ebaa sysmobts2100: Have systemd take care of refreshing hardware watchdog 2017-06-14 16:10:57 +02:00
Harald Welte 4f8f48035a osmo-bts: Config file in 'stable' version is still in different path
The recent updates to the osmo-bts recipe broke the 'stable' version
as the config file is still in doc/examples/ and not doc/examples/sysmo
2017-06-14 10:42:43 +02:00
Harald Welte 7875f48c3c sysmobts2100: use anonymous accses for lc15 gitlab repositories 2017-06-13 16:07:47 +02:00
Harald Welte 18f43e645c osmo-bts: Remove legacy SysV init script support 2017-06-13 14:34:49 +02:00
Harald Welte da1fb1b014 task-sysmocom-bts: Support sysmoBTS2100 without osmo-bts-remote 2017-06-13 14:34:49 +02:00
Harald Welte ce14de5afa sysmobts2100: ensure osmo-bts/osmo-pcu are actually included in image
this is achieved by means of including task-sysmocom-bts
2017-06-13 14:34:49 +02:00
Harald Welte 4afd36eef1 sysmobts2100: harmonize defconfig with sysmobts-v2
Try to make the kernel config as similar as possible
2017-06-13 14:34:49 +02:00
Harald Welte aecbbe2c0a SDK: ensure lc15 headers are in sysmobts2100 SDK 2017-06-13 14:34:49 +02:00
Harald Welte e9114b15b7 osmo-pcu: Support both sysmobts-v2 and sysmobts2100 machines 2017-06-13 14:34:49 +02:00
Harald Welte d1387e9ac4 osmo-bts: support sysmobts-v2 and sysmobts2100 machine targets 2017-06-13 14:34:47 +02:00
Harald Welte 77cc4ac812 make sysmocom-archiver work for lc15 kernel
We cannot use 'source_tar_name' in cases it is not defined. Not sure if this is
the right fix, but it at least makes the build succeed.
2017-06-13 14:30:49 +02:00
Harald Welte a06af1c4f1 add machine config for litecell15 and sysmobts2100 2017-06-13 14:30:49 +02:00
Harald Welte 59aa24ab9a gpsd configuration for sysmobts2100 2017-06-13 14:30:49 +02:00
Harald Welte 11ca0fd885 Add Linux kernel for litecell15 (4.4.32 from Nutaq) 2017-06-13 14:30:49 +02:00
Harald Welte 3641a69585 add u-boot for litecell15 / sysmoBTS 2100 2017-06-13 14:30:49 +02:00
Harald Welte ff217ad58c Add lc15-firmware package for sysmoBTS 2100 support 2017-06-13 14:30:49 +02:00
Holger Hans Peter Freyther b5c1bfd9ba rtl8169-eeprom: Upgrade to see if compile error with poky master is fixed 2017-06-13 12:55:03 +08:00
Holger Hans Peter Freyther 3490e54f4a x86: Introduce sysmocom-alix for the older hardware in the field
Introduce an alias for sysmocom-bsc and add better description where
the difference is in terms of alix vs. apu2.
2017-06-13 10:16:51 +08:00
Holger Hans Peter Freyther 00aa1c7fea x86: Rename sysmocom-bsc-v2 to sysmocom-apu2.con to reflect hardware
Use a name that relfects the physical hardware and not a function that
is not implemented.

Related: SYS#3094
2017-06-13 09:56:00 +08:00
Daniel Willmann 315f10aa47 osmo-bts: Update revision to fix GSM HR encoding
Ticket: SYS#2452
2017-06-02 14:59:05 +02:00
Holger Hans Peter Freyther abc017e891 sysmobts: Force thumb interworking (armv5_t_e) for pyro
Somehow the PACKAGE_ARCH selection in pyro only comes up with armv5e but
we want (at least for legacy) thumb interworking. Force it to the thumb
mode.
2017-04-30 00:15:49 +02:00
Holger Hans Peter Freyther 8610f32401 sysmocom-defaults: Workaround sysmocom-bsc-v2 rootfs issue
Disable the libsolv backend to workaround an install issue. This does
not occur or sysmobts or sysmocom-bsc but only on the v2 target or the
idu.
2017-04-27 12:45:34 +02:00
Holger Hans Peter Freyther 1bc3be8eb6 sysmocom-bsc2: Add a BSC v2 where we can tune for i686
The old Geode based systems are replaced by AMD APU systems. We might
build for sysmobsc v1 and v2 but would like to be able to tune for the
better CPU.
2017-04-26 23:06:06 +02:00
Holger Hans Peter Freyther 60aceccd0d bsc/idu: Drop edison (1.1) support and stick to 3.10er kernel
This is fixing the QA issue on newer perf for x86 on Dora as seen
by the CI system. Drop support for ancient unsupported OE version
and force 3.10/4.9 depending on where we are.
2017-04-25 18:01:53 +02:00
Holger Hans Peter Freyther bbc7c997ae image-rauc-ubi: Fix building on latest poky
mtd-utils-native needs to be available for do_deploy, so add the
dependency there. DEPENDS is meaningless for us so remove it too.
Use specific tasks as dependency to workaround an issue with poky
master where glibc-initial and glibc-locale would be direct deps.

Clone the recipe to deal with the different tasks. I wasn't able
to get the other tasks in place for dora.
2017-04-24 16:07:50 +02:00
Holger Hans Peter Freyther b18c50951f barebox: Update to be able build and link with gcc6/ld.gold
Build the old barebox with newer tools. This should work for dora
and master at the same time.
2017-04-24 11:46:47 +02:00
Holger Hans Peter Freyther 204fea2e7d linux-sysmocom: Add a Linux 4.9 recipe to be used for new poky
Linux 4.9 is a LTS released and will be maintained until at least
January 2019.
2017-04-24 11:46:47 +02:00
Holger Hans Peter Freyther 6751f3e212 modernize: Use d.get* instead of the bb.data.get* facade
In modern Poky the facade is gone and the data dictionary needs
to be accessed directly. This commit is catching up with it. It
was build tested on dora as well. I have not checked if it is
changing the checksums of a dora build.
2017-04-24 00:48:40 +02:00
Holger Hans Peter Freyther 789c9a650c iperf: Upgrade to 2.0.9 to solve c++ compilation issue
2.0.5 is known not to build with newer G++/libstdc++. Upgrade to
version 2.0.9, fix compilation issue on arm for C code and let's
see..
2017-04-17 06:59:31 +02:00
Holger Hans Peter Freyther 2b8949c52e ifupdown: Build without access to dpkg-architecture
Take a patch from newer version in Poky to hardcode the os to
Linux. This surfaced because of the more strict sysroot in newer
versions of Poky.
To avoid some bad surprises I am continuing to use this version
of ifupdown instead of the newer one in Poky.
2017-04-17 06:59:24 +02:00
Holger Hans Peter Freyther 39afcd35ae rauc: Make gdbus-codegen available to the build process
Require glib-2.0-native so that we can call gdbus-codegen from
the build process. Needed for newer versions of poky.
2017-04-16 20:09:51 +02:00
Holger Hans Peter Freyther 3f352433bd netcat-openbsd: Fix linking and use GNU_HASH for symbols
Inherit the pkgconfig bbclass so libbsd can be found properly and
pass in LDFLAGS to make sure the right link line is being used.
2017-04-16 20:09:33 +02:00
Holger Hans Peter Freyther 0646719119 rtl8169-eeprom: Use newer version to honor external LDFLAGS
Make sure libraries are linked with GNU_HASH on newer versions
of Poky.
2017-04-16 20:09:20 +02:00
Holger Hans Peter Freyther 801c195338 osmo-bts: Remove inline from the declaration of function
The function is declared and defined as inline and gcc6 will not
emit an external visible symbol for it. Master doesn't have this
problem anymore so let's just patch it here.

Fixes:
| /usr/src/debug/osmo-bts/0.4.3+gitAUTOINC+57ee780789-r1a2ff06d20-r18.18/git/tests/sysmobts/sysmobts_test.c:207: undefined reference to `l1if_ms_pwr_ctrl'
2017-04-16 20:09:02 +02:00
Holger Hans Peter Freyther 49153b2904 gpsd: Make sure that LDFLAGS are passed to scons
In newer Poky the LDFLAGS are not passed through the $CC variable
anymore and we need to make sure scons is picking them up. Take an
old Gentoo patch for it.
2017-04-16 20:08:50 +02:00
Holger Hans Peter Freyther 9f0d341f23 systemd-compat-units: Add LIC_FILES_CHKSUM for SRC_URI files
We need to have our own LIC_FILES_CHKSUM now as we add the alignment
service.
2017-04-16 20:08:42 +02:00
Holger Hans Peter Freyther 0d7522675f dvnixload: Fix deployment on latest poky
The with builddir != srcddir the deployment will fail. Add ${B} as
it will work for both old and new poky.
2017-04-16 20:08:33 +02:00
Holger Hans Peter Freyther 2111c3cad3 u-boot: Upgrade to a version of u-boot master
This is updating to u-boot v2017.03+256. v2017.05 is coming soon
and it seems quite stable already. This seems to work for old and
the new dora.
2017-04-16 20:08:26 +02:00
Daniel Willmann 1b77777791 osmo-bts: Bump version to include power ramping support for 1020, 1100 models
Ticket: SYS#3214
2017-02-14 20:43:26 +01:00
Daniel Willmann 4e9cabbe91 osmo-bts: Bump version to include power ramping support.
Ticket: SYS#3214
2017-02-14 18:38:47 +01:00
Harald Welte 0c4a046bd5 openggsn-config: Use the sysmocom-bsc/ggsn.conf as default for all machines
Only sysmobts-v2 will override it, but all other machines should have
the same configuration as the sysmocom-bsc.  This will fix the build of
our yocto-dora for sysmocom-idu/sysmocom-odu, where task-sysmocom-feed
pulls in task-gprscore which in turn wants to build the ggsn
configuration even on those machines where we don't actually have a ggsn
so far.
2017-02-10 16:30:46 +01:00
Harald Welte be388bd7d5 openggsn-config: share one gprs_routing file for different machines
there's no point in having two identical gprs_routing files in the
two machine-specific directories.  So let's share one common file.
2017-02-10 16:25:13 +01:00
Daniel Willmann 29dd84c82a task-sysmocom-feed: Add task-gprscore
Just build the gprs corenet related packages in our regular feed so they are
built for the sysmobsc as well.

Ticket: SYS#3096
2016-11-29 20:54:14 +01:00
Daniel Willmann 9833551361 sysmocom-bsc: Install dnsmasq in the image with correct config
Ticket: SYS#3081, SYS#2439
2016-11-28 17:36:48 +01:00
Holger Hans Peter Freyther 8698210e1d u-boot: Go back just supporting RevG hardware
We need some more testing/experience with the AEMIF related fixed
that it is better to ship what we have right now.

Discussed in the sob chat.
2016-09-05 14:40:25 +02:00
Harald Welte 17758a0de8 update gpsdate to fixed init script revision
... using variables from /etc/default/gpsdate not only in systemd
service file, but also init script.
2016-08-01 14:02:18 +02:00
Holger Hans Peter Freyther 959ae40f34 sysmocom-archiver: Make it somehow work with python3
Yocto master has switched to use python3 and this means all of
our bbclasses must work with it. The cmp function has been removed
and the closest is this dropin routine. Start to use it.
2016-07-02 21:49:21 +02:00
Harald Welte 7c07fdaa46 barebox-state.bb: add missing spaces at end of line of FILES lines 2016-06-23 09:23:40 +02:00
72 changed files with 6827 additions and 123 deletions

155
classes/gitver-pkg.bbclass Normal file
View File

@ -0,0 +1,155 @@
# gitver-pkg.bbclass
#
# Based on gitpkgv.bbclass from meta-openembedded
PKGGITH = "${@get_pkg_gith(d, '${PN}')}"
PKGGITN = "${@get_pkg_gitn(d, '${PN}')}"
PKGGITV = "${@get_pkg_gitv(d, '${PN}')}"
def gitpkgv_drop_tag_prefix(version):
import re
if re.match("v\d", version):
return version[1:]
else:
return version
def get_pkg_gitv(d, pn):
import os
import bb
from pipes import quote
src_uri = d.getVar('SRC_URI', 1).split()
fetcher = bb.fetch2.Fetch(src_uri, d)
ud = fetcher.ud
ver = "0.0-0"
for url in ud.values():
if url.type == 'git' or url.type == 'gitsm':
for name, rev in url.revisions.items():
if not os.path.exists(url.localpath):
return None
vars = { 'repodir' : quote(url.localpath),
'rev' : quote(rev) }
# Verify of the hash is present
try:
bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git describe %(rev)s --always 2>/dev/null" % vars,
d, quiet=True).strip()
except Exception:
bb.fetch2.runfetchcmd(
"cd %(repodir)s && git fetch 2>/dev/null" % vars,
d, quiet=True).strip()
# Try to get a version using git describe
try:
output = bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git describe %(rev)s --long 2>/dev/null" % vars,
d, quiet=True).strip()
ver = gitpkgv_drop_tag_prefix(output)
except Exception:
try:
commits = bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git rev-list %(rev)s --count 2> /dev/null " % vars,
d, quiet=True).strip()
if commits == "":
commits = "0"
rev = bb.fetch2.get_srcrev(d).split('+')[1]
ver = "0.0-%s-g%s" % (commits, rev[:7])
except Exception:
pass
return ver
def get_pkg_gitn(d, pn):
import os
import bb
from pipes import quote
src_uri = d.getVar('SRC_URI', 1).split()
fetcher = bb.fetch2.Fetch(src_uri, d)
ud = fetcher.ud
for url in ud.values():
if url.type == 'git' or url.type == 'gitsm':
for name, rev in url.revisions.items():
if not os.path.exists(url.localpath):
return None
vars = { 'repodir' : quote(url.localpath),
'rev' : quote(rev) }
# Verify of the hash is present
try:
bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git describe %(rev)s --always 2>/dev/null" % vars,
d, quiet=True).strip()
except Exception:
bb.fetch2.runfetchcmd(
"cd %(repodir)s && git fetch 2>/dev/null" % vars,
d, quiet=True).strip()
try:
tag = bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git describe --abbrev=0 %(rev)s 2>/dev/null" % vars,
d, quiet=True).strip()
vars = { 'repodir' : quote(url.localpath),
'rev' : quote(rev),
'tag' : quote(tag) }
commits = bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git rev-list %(rev)s ^%(tag)s --count 2> /dev/null " % vars,
d, quiet=True).strip()
return commits
except Exception:
commits = bb.fetch2.runfetchcmd(
"cd %(repodir)s && "
"git rev-list %(rev)s --count 2> /dev/null " % vars,
d, quiet=True).strip()
if commits == "":
commits = "0"
return commits
return '0'
def get_pkg_gith(d, pn):
import os
import bb
from pipes import quote
src_uri = d.getVar('SRC_URI', 1).split()
fetcher = bb.fetch2.Fetch(src_uri, d)
ud = fetcher.ud
for url in ud.values():
if url.type == 'git' or url.type == 'gitsm':
for name, rev in url.revisions.items():
if not os.path.exists(url.localpath):
return None
else:
return rev
return None

139
classes/gitver-repo.bbclass Normal file
View File

@ -0,0 +1,139 @@
# gitver-repo.bbclass
#
# Based on gitpkgv.bbclass from meta-openembedded
REPODIR ?= "${THISDIR}"
REPOGITH = "${@get_repo_gith(d, '${REPODIR}')}"
REPOGITN = "${@get_repo_gitn(d, '${REPODIR}')}"
REPOGITV = "${@get_repo_gitv(d, '${REPODIR}')}"
REPOGITT = "${@get_repo_gitt(d, '${REPODIR}')}"
REPOGITFN = "${@get_repo_gitfn(d, '${REPODIR}', '${REPOFILE}')}"
def gitver_repo_drop_tag_prefix(version):
import re
if re.match("v\d", version):
return version[1:]
else:
return version
def get_repo_gitv(d, repodir):
import os
import bb
from pipes import quote
vars = { 'repodir' : quote(repodir) }
try:
output = bb.fetch2.runfetchcmd(
"git -C %(repodir)s describe --long 2>/dev/null" % vars,
d, quiet=True).strip()
ver = gitver_repo_drop_tag_prefix(output)
except Exception:
return None
return ver
def get_repo_gitn(d, repodir):
import os
import bb
from pipes import quote
vars = { 'repodir' : quote(repodir) }
try:
tag = bb.fetch2.runfetchcmd(
"git -C %(repodir)s describe --abbrev=0 2>/dev/null" % vars,
d, quiet=False).strip()
vars = { 'repodir' : quote(repodir),
'tag' : quote(tag) }
commits = bb.fetch2.runfetchcmd(
"git -C %(repodir)s rev-list %(tag)s.. --count 2> /dev/null" % vars,
d, quiet=True).strip()
return commits
except Exception:
commits = bb.fetch2.runfetchcmd(
"git -C %(repodir)s rev-list --count HEAD 2>/dev/null" % vars,
d, quiet=True).strip()
if commits == "":
commits = "0"
return commits
def get_repo_gitt(d, repodir):
import os
import bb
from pipes import quote
vars = { 'repodir' : quote(repodir) }
try:
tag = bb.fetch2.runfetchcmd(
"git -C %(repodir)s describe --abbrev=0 2>/dev/null" % vars,
d, quiet=True).strip()
return tag
except Exception:
return None
def get_repo_gith(d, repodir):
import os
import bb
from pipes import quote
vars = { 'repodir' : quote(repodir) }
try:
hash = bb.fetch2.runfetchcmd(
"git -C %(repodir)s rev-parse HEAD 2>/dev/null" % vars,
d, quiet=True).strip()
return hash
except Exception:
return None
def get_repo_gitfn(d, repodir, repofile):
import os
import bb
from pipes import quote
vars = { 'repodir' : quote(repodir),
'repofile' : quote(repofile) }
try:
tag = bb.fetch2.runfetchcmd(
"git -C %(repodir)s describe --abbrev=0 2>/dev/null" % vars,
d, quiet=False).strip()
vars = { 'repodir' : quote(repodir),
'repofile' : quote(repofile),
'tag' : quote(tag) }
commits = bb.fetch2.runfetchcmd(
"git -C %(repodir)s rev-list --count %(tag)s.. %(repofile)s 2> /dev/null" % vars,
d, quiet=True).strip()
return commits
except Exception:
commits = bb.fetch2.runfetchcmd(
"git -C %(repodir)s rev-list --count HEAD %(repofile)s 2>/dev/null" % vars,
d, quiet=True).strip()
if commits == "":
commits = "0"
return commits

View File

@ -7,6 +7,10 @@ ARCHIVE_TYPE ?= "TAR SRPM"
DISTRO ?= "poky"
PATCHES_ARCHIVE_WITH_SERIES = 'TRUE'
def compat_cmp(a, b):
return (a>b)-(a<b)
def get_bb_inc(d):
'''create a directory "script-logs" including .bb and .inc file in ${WORKDIR}'''
import re
@ -83,7 +87,7 @@ def get_series(d):
locals = (fetch.localpath(url) for url in fetch.urls)
for local in locals:
src_patches.append(local)
if not cmp(work_dir,s):
if not compat_cmp(work_dir,s):
tmp_list = src_patches
else:
tmp_list = src_patches[1:]
@ -129,7 +133,7 @@ def not_tarball(d):
workdir = d.getVar('WORKDIR',True)
s = d.getVar('S',True)
if 'work-shared' in s or 'task-' in workdir or 'native' in workdir:
pn = bb.data.getVar('PN', d , True)
pn = d.getVar('PN', True)
if pn == 'gcc-cross':
return False
return True
@ -178,7 +182,7 @@ def archive_sources_from_directory(d,stage_name):
try:
source_dir = os.path.join(work_dir,[ i for i in s.replace(work_dir,'').split('/') if i][0])
except IndexError:
if not cmp(s,work_dir):
if not compat_cmp(s,work_dir):
return ''
else:
return ''
@ -358,8 +362,8 @@ def archive_scripts_logs(d):
def dumpdata(d):
'''dump environment to "${P}-${PR}.showdata.dump" including all kinds of variables and functions when running a task'''
workdir = bb.data.getVar('WORKDIR', d, 1)
distro = bb.data.getVar('DISTRO', d, 1)
workdir = d.getVar('WORKDIR', 1)
distro = d.getVar('DISTRO', 1)
s = d.getVar('S', True)
pf = d.getVar('PF', True)
target_sys = d.getVar('TARGET_SYS', True)
@ -379,8 +383,8 @@ def dumpdata(d):
bb.data.emit_env(f, d, True)
# emit the metadata which isnt valid shell
for e in d.keys():
if bb.data.getVarFlag(e, 'python', d):
f.write("\npython %s () {\n%s}\n" % (e, bb.data.getVar(e, d, 1)))
if d.getVarFlag(e, 'python'):
f.write("\npython %s () {\n%s}\n" % (e, d.getVar(e, 1)))
f.close()
def create_diff_gz(d):
@ -456,8 +460,8 @@ python do_archive_linux_yocto(){
s = d.getVar('S', True)
if 'linux-yocto' in s:
source_tar_name = archive_sources(d,'')
if d.getVar('SOURCE_ARCHIVE_PACKAGE_TYPE', True).upper() not in 'SRPM':
move_tarball_deploy(d,[source_tar_name,''])
if d.getVar('SOURCE_ARCHIVE_PACKAGE_TYPE', True).upper() not in 'SRPM':
move_tarball_deploy(d,[source_tar_name,''])
}
do_kernel_checkout[postfuncs] += "do_archive_linux_yocto "

View File

@ -35,3 +35,7 @@ PACKAGECONFIG_pn-systemd = "compat ldconfig binfmt sysusers randomseed myhostnam
# From fido on.. build curl with libssl to avoid gnutls
PACKAGECONFIG_pn-curl="ipv6 ssl zlib"
# disable libsolv as it is broken Yocto Bug #11427
PACKAGECONFIG_pn-opkg = ""
PACKAGECONFIG_pn-opkg-native = ""

View File

@ -1,7 +1,7 @@
TARGET_ARCH = "arm"
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
PREFERRED_VERSION_linux-sysmocom = "3.10.84+git%"
PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}"
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
PREFERRED_VERSION_u-boot = "git"
@ -41,3 +41,6 @@ MACHINE_EXTRA_RDEPENDS = "\
require conf/machine/include/tune-arm926ejs.inc
require conf/machine/include/dm6446.inc
# we tune for armv5te but it ends up as armv5e on pyro and probably earlier. Help it.
ARMPKGSFX_THUMB="t"

View File

@ -0,0 +1,33 @@
#@TYPE: Machine
#@NAME: Litecel15 EVM
#@DESCRIPTION: Machine configuration for the NRW Litecell15 EVM
# (omap-a15.inc)
SOC_FAMILY = "omap-a15"
require conf/machine/include/soc-family.inc
DEFAULTTUNE = "cortexa15thf-neon"
require conf/machine/include/tune-cortexa15.inc
KERNEL_IMAGETYPE = "zImage"
UBOOT_ARCH = "arm"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
PREFERRED_PROVIDER_virtual/kernel = "linux-litecell15"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-litecell15"
PREFERRED_PROVIDER_u-boot = "u-boot-litecell15"
IMAGE_FSTYPES += "tar.gz"
SERIAL_CONSOLE = "115200 ttyS2"
UBOOT_MACHINE = "litecell15_config"
# Currently removing the sgx machine feature because there is no SGX package
# available for omap5
MACHINE_FEATURES = "kernel26 apm vfat ext2"
MACHINE_GPS_DEVICE = "/dev/ttyS0"

View File

@ -0,0 +1,17 @@
# sysmoBTS 2100 machine type, based on LC15
require conf/machine/litecell15.conf
MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "\
${@['watchdog', ''][d.getVar('VIRTUAL-RUNTIME_init_manager', True) == 'systemd']} \
kernel-module-rpmsg-proto \
kernel-module-rpmsg-rpc \
kernel-module-nrw-clkerr \
kernel-module-nrw-vswr \
kernel-module-omap-remoteproc \
kernel-module-fpgadl \
"
MACHINE_EXTRA_RDEPENDS = "\
task-sysmocom-bts \
${@['watchdog', ''][d.getVar('VIRTUAL-RUNTIME_init_manager', True) == 'systemd']} \
"

View File

@ -0,0 +1,6 @@
#@TYPE: Machine
#@NAME: common_pc
#@DESCRIPTION: Machine configuration for sysmocom alix2d based hardware
require sysmocom-bsc.conf
MACHINEOVERRIDES = "${MACHINE}:sysmocom-bsc"

View File

@ -0,0 +1,43 @@
#@TYPE: Machine
#@NAME: common_pc
#@DESCRIPTION: Machine configuration for sysmocom apu2 based hardware
require conf/machine/include/tune-core2.inc
require conf/machine/include/genericx86-common.inc
PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}"
MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi"
KERNEL_IMAGETYPE = "bzImage"
IMAGE_FSTYPES = "ext4"
# After dora core2 got renamed to core2-32
# After dora core2 got renamed to core2-32
DEFAULTTUNE := "${@['core2', 'core2-32']['core2-32' in d.getVar('AVAILTUNES', True)]}"
SERIAL_CONSOLE = "115200 ttyS0"
MACHINE_CONSOLE = "console=ttyS0,115200n8"
# We bypass swrast but we need it to be present for X to load correctly
XSERVER ?= "xserver-xf86-dri-lite \
mesa-dri-driver-swrast \
xf86-input-vmmouse \
xf86-input-keyboard \
xf86-input-evdev \
xf86-video-vmware"
GLIBC_ADDONS = "nptl"
GLIBC_EXTRA_OECONF = "--with-tls"
#MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "linux-firmware-rtl-nic"
MACHINEOVERRIDES = "${MACHINE}:sysmocom-bsc"

View File

@ -8,7 +8,8 @@ PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/kernel = "${@['linux-sysmocom', 'linux']['1.1' in d.getVar('DISTRO_VERSION', True)]}"
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}"
require conf/machine/include/tune-geode.inc

View File

@ -10,7 +10,8 @@ PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-diet"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/xserver-xf86 ?= "xserver-xf86-dri-lite"
PREFERRED_PROVIDER_virtual/kernel = "${@['linux-sysmocom', 'linux']['1.1' in d.getVar('DISTRO_VERSION', True)]}"
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.14+git%')}"
MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi"

View File

@ -1,6 +1,7 @@
require sysmocom-image.inc
IMAGE_LINGUAS = " "
IMAGE_INSTALL_append = " dnsmasq "
# This variant of the image will run osmo-bts and osmo-bsc
activate_bsc() {

View File

@ -4,22 +4,22 @@ LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
DEPENDS = "virtual/kernel"
ALLOW_EMPTY_${PN} = "1"
PR = "r23"
PR = "r24"
CALIB = ""
CALIB_sysmobts-v2 = "sysmobts-calib sysmobts-util"
UTIL = ""
UTIL_sysmobts-v2 = "sbts2050-util gpsd gps-utils"
UTIL_sysmobts2100 = "gpsd gps-utils"
# TODO: re-add femtobts-calib after it went through the API migration
RDEPENDS_${PN} = "\
osmo-bts \
osmo-bts-remote \
osmo-pcu \
lmsensors-scripts \
sysmobts-config \
${CALIB} \
${UTIL} \
"
RDEPENDS_${PN}_append_sysmobts-v2 = " osmo-bts-remote sysmobts-config"
PACKAGE_ARCH = "${MACHINE_ARCH}"

View File

@ -16,4 +16,4 @@ RDEPENDS_${PN} = "\
logrotate python-jsonrpclib python-enum iputils \
packagegroup-sysmobts-sob rtl8169-eeprom autossh \
perl libdbd-sqlite-perl libdbi-perl libjson-perl \
netcat-openbsd perf lksctp-tools"
netcat-openbsd perf lksctp-tools task-gprscore"

View File

@ -1,6 +1,6 @@
require barebox.inc
SRCREV = "f2b03e21a869b8df30e428ac9408d7988d55279a"
SRCREV = "1d8bdd6f226df2ecbde3776b52fbc228158293fd"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \
@ -17,6 +17,9 @@ BAREBOX_BIN_SYMLINK ?= "barebox-${MACHINE}.bin"
# generated using echo -n 'bts-stop' | sha1sum
BAREBOX_PASSWORD = "5a7ef8875df28cb95a0f833906f94df8573bcc5d"
# Provide a replacement for calling whoami
export KBUILD_BUILD_USER="poky"
do_configure_append () {
mkdir -p ${WORKDIR}/env/nv
echo 5 > ${WORKDIR}/env/nv/login.timeout

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:"
PRINC="3"
PRINC="4"

View File

@ -4,5 +4,3 @@ devpts /dev/pts devpts mode=0620,gid=5 0 0
usbdevfs /proc/bus/usb usbdevfs noauto 0 0
tmpfs /run tmpfs mode=0755,nodev,nosuid,strictatime 0 0
tmpfs /var/volatile tmpfs defaults 0 0
/dev/sda1 /boot ext4 defaults,nofail 0 2

View File

@ -1,2 +1,2 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/init-ifupdown-${PV}:${SYSMOCOM}/init-ifupdown-master:"

View File

@ -1,4 +1,4 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/init-ifupdown-${PV}:${SYSMOCOM}/init-ifupdown:"
PRINC = "13"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,78 @@
SECTION = "kernel"
DESCRIPTION = "Linux kernel for the LiteCell 1.5"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
require recipes-kernel/linux/linux-yocto.inc
KERNEL_IMAGETYPE = "zImage"
COMPATIBLE_MACHINE = "(litecell15|sysmobts2100)"
RDEPENDS_kernel-base += "kernel-devicetree"
KERNEL_DEVICETREE_litecell15 = "litecell15.dtb"
KERNEL_DEVICETREE_sysmobts2100 = "litecell15.dtb"
RDEPENDS_kernel-devicetree += "update-alternatives-opkg"
LINUX_VERSION = "${PV}"
LINUX_VERSION_EXTENSION = "-lc15"
RDEPENDS_kernel-image += "update-alternatives-opkg"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
S = "${WORKDIR}/git"
NRW_LC15_MIRROR ??= "gitlab.com/nrw_litecell15"
inherit gitver-pkg gitver-repo
REPODIR = "${THISDIR}"
REPOFILE = "linux-litecell15_4.4.32.bb"
PR := "r${REPOGITFN}"
REPODIR = "${THISDIR}/files"
REPOFILE = ""
PR := "${PR}.${REPOGITFN}"
PV = "4.4.32+git${SRCPV}"
PKGV = "${PKGGITV}"
DEV_BRANCH = "${@ 'nrw/litecell15-next' if d.getVar('NRW_BSP_DEVEL', False) == "next" else 'nrw/litecell15'}"
DEV_SRCREV = "${AUTOREV}"
DEV_SRCURI := "git://${NRW_LC15_MIRROR}/processor-sdk-linux.git;protocol=https;branch=${DEV_BRANCH}"
REL_BRANCH = "nrw/litecell15"
REL_SRCREV = "a54d64a4be25d87032a8600b97b271f255587844"
REL_SRCURI := "git://${NRW_LC15_MIRROR}/processor-sdk-linux.git;protocol=https;branch=${REL_BRANCH}"
BRANCH = "${@ '${DEV_BRANCH}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_BRANCH}'}"
SRCREV = "${@ '${DEV_SRCREV}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCREV}'}"
SRC_URI = "${@ '${DEV_SRCURI}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCURI}'}"
addtask showversion after do_compile before do_install
do_showversion() {
bbplain "${PN}: ${PKGGITV} => ${BRANCH}:${PKGGITH}"
}
do_configure_prepend() {
sed -i -e 's/EXTRAVERSION =.*/EXTRAVERSION = .${PKGGITN}-lc15/g' ${S}/Makefile
}
SRC_URI += "file://defconfig"
# autoload defaults (alphabetically sorted)
module_autoload_fpgadl = "fpgadl"
module_autoload_nrw_clkerr = "nrw-clkerr"
module_autoload_nrw_vswr = "nrw-vswr"
module_autoload_omap_remoteproc = "omap_remoteproc"
module_autoload_rpmsg_proto = "rpmsg-proto"
module_autoload_rpmsg_rpc = "rpmsg-rpc"
KERNEL_MODULE_PROBECONF_append = "fpgadl nrw_clkerr nrw_vswr omap_remoteproc rpmsg_proto rpmsg_rpc"
KERNEL_MODULE_AUTOLOAD_append = "fpgadl nrw_clkerr nrw_vswr omap_remoteproc rpmsg_proto rpmsg_rpc"
RDEPENDS_kernel-module-omap-remoteproc += "lc15-firmware"
RDEPENDS_kernel-module-fpgadl += "lc15-firmware"

View File

@ -0,0 +1,59 @@
inherit kernel
require linux-sysmocom.inc
DEPENDS += "bc-native"
# ATTENTION: Update linux-backports PR on version change. In Dora the
# reverse dependency tracking for the kernel doesn't appear to work. So
# please bump the PR on version changes!
# at versions changes do not forget to update conf/machine/include/sysmobts.inc too
LINUX_VERSION ?= "4.9.14"
LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# Overrides for the sysmocom bts v2
BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2"
SRCREV = "8d5d275254642b70b3ecf18a5b9b9fe9d5777230"
PR = "r1"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=lynxis/v4.9 \
file://defconfig"
S = "${WORKDIR}/git"
COMPATIBLE_MACHINE = "(sysmobts-v2|sysmocom-bsc)"
EXTRA_OEMAKE += "KALLSYMS_EXTRA_PASS=1"
require linux-tools.inc
do_configure() {
install -m 0644 ${WORKDIR}/defconfig ${B}/.config
oe_runmake -C ${S} O=${B} oldconfig
}
# autoload defaults (alphabetically sorted)
module_autoload_davinci_mmc = "davinci_mmc"
module_autoload_dspdl_dm644x = "dspdl_dm644x"
module_autoload_fpgadl_par = "fpgadl_par"
module_autoload_leds-gpio = "leds-gpio"
module_autoload_mmc_block = "mmc_block"
module_autoload_msgqueue = "msgqueue"
module_autoload_rtfifo = "rtfifo"
KERNEL_MODULE_PROBECONF_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
KERNEL_MODULE_AUTOLOAD_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
# module configs (alphabetically sorted)
module_conf_dspdl_dm644x = "options dspdl_dm644x fw_name=${BTS_FIRMWARE_NAME}.out debug=0"
module_conf_fpgadl_par = "options fpgadl_par fw_name=${BTS_FIRMWARE_NAME}.bit"
module_conf_msgqueue = "options msgqueue fw_name=${BTS_FIRMWARE_NAME}.out"
module_conf_rtfifo = "options rtfifo fw_name=${BTS_FIRMWARE_NAME}.out"
RDEPENDS_kernel-module-dspdl-dm644x += "sysmobts-firmware"
RDEPENDS_kernel-module-fpgadl-par += "sysmobts-firmware"
RDEPENDS_kernel-module-msgqueue += "sysmobts-firmware"
RDEPENDS_kernel-module-rtfifo += "sysmobts-firmware"
DEFAULT_PREFERENCE = "-1"

View File

@ -1,4 +1,4 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-${PV}:${SYSMOCOM}/${PN}:"
PRINC = "21"

View File

@ -4,7 +4,7 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
DEPENDS = "pciutils"
SRCREV = "e62e515ce314599e48b268dac69d2f16a504264c"
SRCREV = "2052514dc99575140af40b25e41c438c98eb9b48"
SRC_URI = "git://git.sysmocom.de/rtl8168-eeprom;protocol=git;branch=master"
PV = "v0.0.1+git${SRCPV}"
PR = "r0"

View File

@ -0,0 +1,12 @@
diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
index daa02a7..eff638a 100644
--- a/tools/env/fw_env.c
+++ b/tools/env/fw_env.c
@@ -17,6 +17,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
+#include <inttypes.h>
#include <string.h>
#include <sys/types.h>
#include <sys/ioctl.h>

View File

@ -0,0 +1,91 @@
From 07373b2e477ae61f9f6a0e2eff41be3276d92923 Mon Sep 17 00:00:00 2001
From: yocto <yocto@yocto.org>
Date: Thu, 2 Jun 2016 03:21:51 -0500
Subject: [PATCH] fix build error under gcc6
Fix the following error:
| ../include/linux/compiler-gcc.h:114:30: fatal error: linux/compiler-gcc6.h: No such file or directory
| #include gcc_header(__GNUC__)
Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com>
Upstream-Status: Pending
---
include/linux/compiler-gcc6.h | 65 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
create mode 100644 include/linux/compiler-gcc6.h
diff --git a/include/linux/compiler-gcc6.h b/include/linux/compiler-gcc6.h
new file mode 100644
index 0000000..c8c5659
--- /dev/null
+++ b/include/linux/compiler-gcc6.h
@@ -0,0 +1,65 @@
+#ifndef __LINUX_COMPILER_H
+#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
+#endif
+
+#define __used __attribute__((__used__))
+#define __must_check __attribute__((warn_unused_result))
+#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
+
+/* Mark functions as cold. gcc will assume any path leading to a call
+ to them will be unlikely. This means a lot of manual unlikely()s
+ are unnecessary now for any paths leading to the usual suspects
+ like BUG(), printk(), panic() etc. [but let's keep them for now for
+ older compilers]
+
+ Early snapshots of gcc 4.3 don't support this and we can't detect this
+ in the preprocessor, but we can live with this because they're unreleased.
+ Maketime probing would be overkill here.
+
+ gcc also has a __attribute__((__hot__)) to move hot functions into
+ a special section, but I don't see any sense in this right now in
+ the kernel context */
+#define __cold __attribute__((__cold__))
+
+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
+
+#ifndef __CHECKER__
+# define __compiletime_warning(message) __attribute__((warning(message)))
+# define __compiletime_error(message) __attribute__((error(message)))
+#endif /* __CHECKER__ */
+
+/*
+ * Mark a position in code as unreachable. This can be used to
+ * suppress control flow warnings after asm blocks that transfer
+ * control elsewhere.
+ *
+ * Early snapshots of gcc 4.5 don't support this and we can't detect
+ * this in the preprocessor, but we can live with this because they're
+ * unreleased. Really, we need to have autoconf for the kernel.
+ */
+#define unreachable() __builtin_unreachable()
+
+/* Mark a function definition as prohibited from being cloned. */
+#define __noclone __attribute__((__noclone__))
+
+/*
+ * Tell the optimizer that something else uses this function or variable.
+ */
+#define __visible __attribute__((externally_visible))
+
+/*
+ * GCC 'asm goto' miscompiles certain code sequences:
+ *
+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
+ *
+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
+ *
+ * (asm goto is automatically volatile - the naming reflects this.)
+ */
+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
+
+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
+#define __HAVE_BUILTIN_BSWAP32__
+#define __HAVE_BUILTIN_BSWAP64__
+#define __HAVE_BUILTIN_BSWAP16__
+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
--
2.5.0

View File

@ -0,0 +1,45 @@
require u-boot-litecell15-${PV}.inc
SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
SECTION = "bootloader"
DEPENDS = "mtd-utils u-boot"
PROVIDES_litecell15 = "u-boot-fw-utils"
S = "${WORKDIR}/git"
REPODIR = "${THISDIR}"
REPOFILE = "u-boot-fw-utils_2015.07.bb"
PR := "${INC_PR}.${REPOGITFN}"
INSANE_SKIP_${PN} = "already-stripped"
EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC} ${CFLAGS} ${LDFLAGS}" V=1'
EXTRA_OEMAKE_class-cross = 'ARCH=${TARGET_ARCH} CC="${CC} ${CFLAGS} ${LDFLAGS}" V=1'
inherit uboot-config
do_compile () {
oe_runmake ${UBOOT_MACHINE}
oe_runmake env
}
do_install () {
install -d ${D}${base_sbindir}
install -d ${D}${sysconfdir}
install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_printenv
install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_setenv
install -m 0644 ${S}/tools/env/fw_env.config ${D}${sysconfdir}/fw_env.config
}
do_install_class-cross () {
install -d ${D}${bindir_cross}
install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_printenv
install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_setenv
}
SYSROOT_PREPROCESS_FUNCS_class-cross = "uboot_fw_utils_cross"
uboot_fw_utils_cross() {
sysroot_stage_dir ${D}${bindir_cross} ${SYSROOT_DESTDIR}${bindir_cross}
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
BBCLASSEXTEND = "cross"

View File

@ -0,0 +1,41 @@
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95"
NRW_LC15_MIRROR ??= "gitlab.com/nrw_litecell15"
inherit gitver-pkg gitver-repo
# Should match the one in u-boot.inc
INC_PR ??= "r1"
REPODIR = "${THISDIR}"
REPOFILE = "u-boot-litecell15-2015.07.inc"
INC_PR := "${INC_PR}.${REPOGITFN}"
PV = "2015.07+git${SRCPV}"
PKGV = "${PKGGITV}"
DEV_BRANCH = "${@ 'nrw/litecell15-next' if d.getVar('NRW_BSP_DEVEL', False) == "next" else 'nrw/litecell15'}"
DEV_SRCREV = "${AUTOREV}"
DEV_SRCURI := "git://${NRW_LC15_MIRROR}/u-boot.git;protocol=https;branch=${DEV_BRANCH}"
REL_BRANCH = "nrw/litecell15"
REL_SRCREV = "e2b1ddd84d72d8c57815265860ae58f6b170551c"
REL_SRCURI := "git://${NRW_LC15_MIRROR}/u-boot.git;protocol=https;branch=${REL_BRANCH}"
BRANCH = "${@ '${DEV_BRANCH}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_BRANCH}'}"
SRCREV = "${@ '${DEV_SRCREV}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCREV}'}"
SRC_URI = "${@ '${DEV_SRCURI}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCURI}'}"
SRC_URI += "file://0001-fw_env-missing-header.patch"
SRC_URI += "file://fix-build-error-under-gcc6.patch"
addtask showversion after do_compile before do_install
do_showversion() {
bbplain "${PN}: ${PKGGITV} => ${BRANCH}:${PKGGITH}"
}
do_configure_prepend() {
sed -i -e 's/SUBLEVEL =.*/SUBLEVEL = ${PKGGITN}/g' ${S}/Makefile
sed -i -e 's/EXTRAVERSION =.*/EXTRAVERSION = -lc15/g' ${S}/Makefile
}

View File

@ -0,0 +1,22 @@
require u-boot.inc
require ${PN}-${PV}.inc
PROVIDES_litecell15 = " \
u-boot \
virtual/bootloader \
"
DESCRIPTION = "u-boot bootloader for LC15 / sysmoBTS 2100"
REPODIR = "${THISDIR}"
REPOFILE = "u-boot-litecell15_2015.07.bb"
PR := "${INC_PR}.${REPOGITFN}"
# set theses two variables to 1 to specify u-boot update requierement when the rootfs is updated
export MLO_UPGRADE = "1"
export UBOOT_UPGRADE = "1"
SPL_BINARY = "MLO"
SPL_UART_BINARY = "u-boot-spl.bin"

View File

@ -0,0 +1,76 @@
require ${COREBASE}/meta/recipes-bsp/u-boot/u-boot.inc
FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot:"
INC_PR = "r1"
PACKAGE_ARCH = "${MACHINE_ARCH}"
PROVIDES += "u-boot"
PKG_${PN} = "u-boot"
PKG_${PN}-dev = "u-boot-dev"
PKG_${PN}-dbg = "u-boot-dbg"
S = "${WORKDIR}/git"
UBOOT_SUFFIX = "img"
#RDEPENDS_${PN} = "repair"
# SPL (Second Program Loader) to be loaded over UART
SPL_UART_BINARY ?= ""
SPL_UART_IMAGE ?= "${SPL_UART_BINARY}-${MACHINE}-${PV}-${PR}"
SPL_UART_SYMLINK ?= "${SPL_UART_BINARY}-${MACHINE}"
MLO_BIN ?= "MLO-${MACHINE}-${PV}-${PR}"
do_install_append () {
if [ "x${SPL_UART_BINARY}" != "x" ]
then
install ${B}/spl/${SPL_UART_BINARY} ${D}/boot/${SPL_UART_IMAGE}
ln -sf ${SPL_UART_IMAGE} ${D}/boot/${SPL_UART_BINARY}
fi
#FIXME: do we want/need this? replace iwth 'openssl enc -base64 -d'?
#md5sum ${D}/boot/${MLO_BIN} | cut -d ' ' -f 1 | xxd -r -p >> ${D}/boot/${MLO_BIN}
install -d ${D}${sysconfdir}
echo "MLO_UPGRADE=${MLO_UPGRADE}" >> ${D}${sysconfdir}/mlo.conf
echo "UBOOT_UPGRADE=${UBOOT_UPGRADE}" >> ${D}${sysconfdir}/uboot.conf
chmod 755 ${D}${sysconfdir}/mlo.conf
chmod 755 ${D}${sysconfdir}/uboot.conf
}
do_deploy_append () {
cd ${DEPLOYDIR}
if [ "x${SPL_UART_BINARY}" != "x" ]
then
install ${B}/spl/${SPL_UART_BINARY} ${DEPLOYDIR}/${SPL_UART_IMAGE}
rm -f ${DEPLOYDIR}/${SPL_UART_BINARY} ${DEPLOYDIR}/${SPL_UART_SYMLINK}
ln -sf ${SPL_UART_IMAGE} ${DEPLOYDIR}/${SPL_UART_BINARY}
ln -sf ${SPL_UART_IMAGE} ${DEPLOYDIR}/${SPL_UART_SYMLINK}
fi
#FIXME: do we want/need this? replace iwth 'openssl enc -base64 -d'?
#md5sum ${DEPLOYDIR}/${MLO_BIN} | cut -d ' ' -f 1 | xxd -r -p >> ${DEPLOYDIR}/${MLO_BIN}
}
pkg_postinst_${PN}_append() {
if [ x"$D" = "x" ]; then
if [ -f /usr/bin/checkboot ]; then
echo "Verify boot file possible update..."
/usr/bin/checkboot -c -d
__CHECK_RET=$?
if test ${__CHECK_RET} -eq 100; then
sleep 30s
/usr/bin/checkboot -c -d
__CHECK_RET=$?
fi
if test ${__CHECK_RET} -ne 0; then
echo "Verify boot file possible update... error!"
else
echo "Verify boot file possible update... done!"
fi
fi
fi
}
FILES_${PN} += "${sysconfdir}/mlo.conf \
${sysconfdir}/uboot.conf \
"

View File

@ -1,4 +1,4 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-${PV}:${SYSMOCOM}/${PN}:"
PRINC = "9"

View File

@ -1,23 +0,0 @@
#!/bin/sh
NAME=gprs_routing
set -e
case "$1" in
start)
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
echo "Enabled masquerading"
;;
stop)
echo 0 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
esac
exit 0

View File

@ -1,4 +1,4 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/busybox-${SYSMOCOM_ORIG_PV}:${SYSMOCOM}/files:"
PRINC = "30"

View File

@ -1,4 +1,4 @@
# Make busybox work nicely with systemd
SYSMOCOM_D := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM_D := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-systemd:${SYSMOCOM_D}/${PN}:"
PRINC := "${@int(PRINC) + 3}"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}"], d)}:"
PRINC="4"

View File

@ -1,4 +1,4 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
SYSMOCOM := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/files:"
PRINC = "2"

View File

@ -4,8 +4,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
PR = "r4"
SRC_URI = "\
git://git.pengutronix.de/git/tools/dt-utils.git\
file://0001-barebox-state-fix-typo.patch\
git://git.pengutronix.de/git/tools/dt-utils.git \
file://0001-barebox-state-fix-typo.patch \
"
SRC_URI_append_sysmocom-odu = "file://hardcode-layout-values.patch"

View File

@ -15,7 +15,7 @@ SRC_URI = "http://www.thekelleys.org.uk/dnsmasq/${@['archive/', ''][float(d.getV
inherit pkgconfig update-rc.d systemd
PR = "r3"
PR = "r4"
INITSCRIPT_NAME = "dnsmasq"
INITSCRIPT_PARAMS = "defaults"

View File

@ -0,0 +1,288 @@
# Configuration file for dnsmasq.
#
# Format is one option per line, legal options are the same
# as the long options legal on the command line. See
# "/usr/sbin/dnsmasq --help" or "man 8 dnsmasq" for details.
# Change these lines if you want dnsmasq to serve MX records.
# Only one of mx-host and mx-target need be set, the other defaults
# to the name of the host running dnsmasq.
#mx-host=
#mx-target=
#selfmx
#localmx
# The following two options make you a better netizen, since they
# tell dnsmasq to filter out queries which the public DNS cannot
# answer, and which load the servers (especially the root servers)
# uneccessarily. If you have a dial-on-demand link they also stop
# these requests from bringing up the link uneccessarily.
# Never forward plain names (with a dot or domain part)
domain-needed
# Never forward addresses in the non-routed address spaces.
bogus-priv
# Uncomment this to filter useless windows-originated DNS requests
# which can trigger dial-on-demand links needlessly.
# Note that (amongst other things) this blocks all SRV requests,
# so don't use it if you use eg Kerberos.
#filterwin2k
# Change this line if you want dns to get its upstream servers from
# somewhere other that /etc/resolv.conf
#resolv-file=
# By default, dnsmasq will send queries to any of the upstream
# servers it knows about and tries to favour servers to are known
# to be up. Uncommenting this forces dnsmasq to try each query
# with each server strictly in the order they appear in
# /etc/resolv.conf
#strict-order
# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers for this file instead (see below), then
# uncomment this
#no-resolv
# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
#no-poll
# Add other name servers here, with domain specs if they are for
# non-public domains.
#server=/localnet/192.168.0.1
# Add local-only domains here, queries in these domains are answered
# from /etc/hosts or DHCP only.
#local=/localnet/
# Add domains which you want to force to an IP address here.
# The example below send any host in doubleclick.net to a local
# webserver.
#address=/doubleclick.net/127.0.0.1
# You no longer (as of version 1.7) need to set these to enable
# dnsmasq to read /etc/ppp/resolv.conf since dnsmasq now uses the
# "dip" group to achieve this.
#user=
#group=
# If you want dnsmasq to listen for requests only on specified interfaces
# (and the loopback) give the name of the interface (eg eth0) here.
# Repeat the line for more than one interface.
interface=eth1
# Or you can specify which interface _not_ to listen on
#except-interface=
# Or which to listen on by address (remember to include 127.0.0.1 if
# you use this.)
#listen-address=
# On systems which support it, dnsmasq binds the wildcard address,
# even when it is listening on only some interfaces. It then discards
# requests that it shouldn't reply to. This has the advantage of
# working even when interfaces come and go and change address. If you
# want dnsmasq to really bind only the interfaces it is listening on,
# uncomment this option. About the only time you may need this is when
# running another nameserver on the same machine.
#bind-interfaces
# If you don't want dnsmasq to read /etc/hosts, uncomment the
# following line.
#no-hosts
# or if you want it to read another file, as well as /etc/hosts, use
# this.
#addn-hosts=/etc/banner_add_hosts
# Set this (and domain: see below) if you want to have a domain
# automatically added to simple names in a hosts-file.
#expand-hosts
# Set the domain for dnsmasq. this is optional, but if it is set, it
# does the following things.
# 1) Allows DHCP hosts to have fully qualified domain names, as long
# as the domain part matches this setting.
# 2) Sets the "domain" DHCP option thereby potentially setting the
# domain of all systems configured by DHCP
# 3) Provides the domain part for "expand-hosts"
#domain=thekelleys.org.uk
# Uncomment this to enable the integrated DHCP server, you need
# to supply the range of addresses available for lease and optionally
# a lease time. If you have more than one network, you will need to
# repeat this for each network on which you want to supply DHCP
# service.
#dhcp-range=192.168.0.50,192.168.0.150,12h
dhcp-range=10.23.24.10,10.23.24.200,2h
# This is an example of a DHCP range where the netmask is given. This
# is needed for networks we reach the dnsmasq DHCP server via a relay
# agent. If you don't know what a DHCP relay agent is, you probably
# don't need to worry about this.
#dhcp-range=192.168.0.50,192.168.0.150,255.255.255.0,12h
# This is an example of a DHCP range with a network-id, so that
# some DHCP options may be set only for this network.
#dhcp-range=red,192.168.0.50,192.168.0.150
# Supply parameters for specified hosts using DHCP. There are lots
# of valid alternatives, so we will give examples of each. Note that
# IP addresses DO NOT have to be in the range given above, they just
# need to be on the same network. The order of the parameters in these
# do not matter, it's permissble to give name,adddress and MAC in any order
# Always allocate the host with ethernet address 11:22:33:44:55:66
# The IP address 192.168.0.60
#dhcp-host=11:22:33:44:55:66,192.168.0.60
# Always set the name of the host with hardware address
# 11:22:33:44:55:66 to be "fred"
#dhcp-host=11:22:33:44:55:66,fred
# Always give the host with ethernet address 11:22:33:44:55:66
# the name fred and IP address 192.168.0.60 and lease time 45 minutes
#dhcp-host=11:22:33:44:55:66,fred,192.168.0.60,45m
# Give the machine which says it's name is "bert" IP address
# 192.168.0.70 and an infinite lease
#dhcp-host=bert,192.168.0.70,infinite
# Always give the host with client identifier 01:02:02:04
# the IP address 192.168.0.60
#dhcp-host=id:01:02:02:04,192.168.0.60
# Always give the host with client identifier "marjorie"
# the IP address 192.168.0.60
#dhcp-host=id:marjorie,192.168.0.60
# Enable the address given for "judge" in /etc/hosts
# to be given to a machine presenting the name "judge" when
# it asks for a DHCP lease.
#dhcp-host=judge
# Never offer DHCP service to a machine whose ethernet
# address is 11:22:33:44:55:66
#dhcp-host=11:22:33:44:55:66,ignore
# Ignore any client-id presented by the machine with ethernet
# address 11:22:33:44:55:66. This is useful to prevent a machine
# being treated differently when running under different OS's or
# between PXE boot and OS boot.
#dhcp-host=11:22:33:44:55:66,id:*
# Send extra options which are tagged as "red" to
# the machine with ethernet address 11:22:33:44:55:66
#dhcp-host=11:22:33:44:55:66,net:red
# Send extra options which are tagged as "red" to any machine whose
# DHCP vendorclass string includes the substring "Linux"
#dhcp-vendorclass=red,Linux
# Send extra options which are tagged as "red" to any machine one
# of whose DHCP userclass strings includes the substring "accounts"
#dhcp-userclass=red,accounts
# If this line is uncommented, dnsmasq will read /etc/ethers and act
# on the ethernet-address/IP pairs found there just as if they had
# been given as --dhcp-host options. Useful if you keep
# MAC-address/host mappings there for other purposes.
#read-ethers
# Send options to hosts which ask for a DHCP lease.
# See RFC 2132 for details of available options.
# Note that all the common settings, such as netmask and
# broadcast address, DNS server and default route, are given
# sane defaults by dnsmasq. You very likely will not need any
# any dhcp-options. If you use Windows clients and Samba, there
# are some options which are recommended, they are detailed at the
# end of this section.
# For reference, the common options are:
# subnet mask - 1
# default router - 3
# DNS server - 6
# broadcast address - 28
# Set the NTP time server addresses to 192.168.0.4 and 10.10.0.5
#dhcp-option=42,192.168.0.4,10.10.0.5
# Set the NTP time server address to be the same machine as
# is running dnsmasq
#dhcp-option=42,0.0.0.0
# Set the NIS domain name to "welly"
#dhcp-option=40,welly
# Set the default time-to-live to 50
#dhcp-option=23,50
# Set the "all subnets are local" flag
#dhcp-option=27,1
# Send the etherboot magic flag and then etherboot options (a string).
#dhcp-option=128,e4:45:74:68:00:00
#dhcp-option=129,NIC=eepro100
# Specify an option which will only be sent to the "red" network
# (see dhcp-range for the declaration of the "red" network)
#dhcp-option=red,42,192.168.1.1
# The following DHCP options set up dnsmasq in the same way as is specified
# for the ISC dhcpcd in
# http://www.samba.org/samba/ftp/docs/textdocs/DHCP-Server-Configuration.txt
# adapted for a typical dnsmasq installation where the host running
# dnsmasq is also the host running samba.
# you may want to uncomment them if you use Windows clients and Samba.
#dhcp-option=19,0 # option ip-forwarding off
#dhcp-option=44,0.0.0.0 # set netbios-over-TCP/IP nameserver(s) aka WINS server(s)
#dhcp-option=45,0.0.0.0 # netbios datagram distribution server
#dhcp-option=46,8 # netbios node type
#dhcp-option=47 # empty netbios scope.
# Set the boot filename and tftpd server name and address
# for BOOTP. You will only need this is you want to
# boot machines over the network.
#dhcp-boot=/var/ftpd/pxelinux.0,boothost,192.168.0.3
# Set the limit on DHCP leases, the default is 150
#dhcp-lease-max=150
# The DHCP server needs somewhere on disk to keep its lease database.
# This defaults to a sane location, but if you want to change it, use
# the line below.
#dhcp-leasefile=/var/lib/misc/dnsmasq.leases
# Set the cachesize here.
#cache-size=150
# If you want to disable negative caching, uncomment this.
#no-negcache
# Normally responses which come form /etc/hosts and the DHCP lease
# file have Time-To-Live set as zero, which conventionally means
# do not cache further. If you are happy to trade lower load on the
# server for potentially stale date, you can set a time-to-live (in
# seconds) here.
#local-ttl=
# If you want dnsmasq to detect attempts by Verisign to send queries
# to unregistered .com and .net hosts to its sitefinder service and
# have dnsmasq instead return the correct NXDOMAIN response, uncomment
# this line. You can add similar lines to do the same for other
# registries which have implemented wildcard A records.
#bogus-nxdomain=64.94.110.11
# If you want to fix up DNS results from upstream servers, use the
# alias option. This only works for IPv4.
# This alias makes a result of 1.2.3.4 appear as 5.6.7.8
#alias=1.2.3.4,5.6.7.8
# and this maps 1.2.3.x to 5.6.7.x
#alias=1.2.3.0,5.6.7.0,255.255.255.0
# For debugging purposes, log each DNS query as it passes through
# dnsmasq.
#log-queries
# Include a another lot of configuration options.
#conf-file=/etc/dnsmasq.more.conf

View File

@ -0,0 +1,17 @@
https://bugs.gentoo.org/391299
split up linking flags into multiple arguments
Index: gpsd-3.10/SConstruct
===================================================================
--- gpsd-3.10.orig/SConstruct 2017-03-28 23:47:02.815665786 +0200
+++ gpsd-3.10/SConstruct 2017-03-28 23:47:40.463666285 +0200
@@ -250,7 +250,7 @@
env.Replace(**{j: os.getenv(i)})
for flag in ["LDFLAGS", "LINKFLAGS", "SHLINKFLAGS", "CPPFLAGS"]:
if os.environ.has_key(flag):
- env.MergeFlags({flag : [os.getenv(flag)]})
+ env.MergeFlags({flag : Split(os.getenv(flag))})
# Keep scan-build options in the environment

View File

@ -0,0 +1,5 @@
# If you must specify a non-NMEA driver, uncomment and modify the next line
GPSD_SOCKET="/var/run/gpsd.sock"
GPSD_OPTIONS="-n"
GPS_DEVICES="/dev/ttyS0"

View File

@ -11,6 +11,7 @@ PR = "r3.19"
SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \
file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \
file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \
file://gpsd-3.3-ldflags.patch \
file://no-rpath-please.patch \
file://gpsd-tsip-pps.patch \
file://leave-argv-untouched.patch \
@ -33,6 +34,8 @@ INITSCRIPT_PARAMS = "defaults 35"
export STAGING_INCDIR
export STAGING_LIBDIR
export LINKFLAGS="${TARGET_LDFLAGS}"
export SHLINKFLAGS="${TARGET_LDFLAGS}"
EXTRA_OESCONS = " \
sysroot=${STAGING_DIR_TARGET} \

View File

@ -6,13 +6,13 @@ DEPENDS = "gpsd"
RDEPENDS_${PN} = "libgps"
PE = "1"
PR = "r13"
PR = "r14"
PV = "0.2+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/gpsdate.git;branch=master \
file://gpsdate.default \
"
SRCREV = "8c0f608643504b14c42ecb0d436354fad3cc7929"
SRCREV = "81690ca78e816f86e0da11bbe8cba725fa1a634d"
S = "${WORKDIR}/git"
INITSCRIPT_NAME = "gpsdate"

View File

@ -0,0 +1,56 @@
From 7af9db748974cb3a2c6ef8f9e03d7db1f9f8ee16 Mon Sep 17 00:00:00 2001
From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Wed, 6 Aug 2014 14:54:12 -0400
Subject: [PATCH 1/2] defn2[c|man]: don't rely on dpkg-architecture to set arch
In yocto we'll always be cross compiling, and we'll always
be building on linux for linux (vs. *BSD, hurd, etc.)
Without this the arch is not detected, but it doesn't error
out, and hence you get useless binaries that don't know any
arch specific methods, and the end result will be strangeness
like the loopback device not being configured/enabled.
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
defn2c.pl | 6 +++---
defn2man.pl | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/defn2c.pl b/defn2c.pl
index c449de2f3d1c..38845e374c76 100755
--- a/defn2c.pl
+++ b/defn2c.pl
@@ -2,9 +2,9 @@
use strict;
-my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`;
-
-$DEB_HOST_ARCH_OS =~ s/\n//;
+#my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`;
+#$DEB_HOST_ARCH_OS =~ s/\n//;
+my $DEB_HOST_ARCH_OS ="linux";
# declarations
my $address_family = "";
diff --git a/defn2man.pl b/defn2man.pl
index 6ddcfdd4fe68..c9c4dd046597 100755
--- a/defn2man.pl
+++ b/defn2man.pl
@@ -2,9 +2,9 @@
use strict;
-my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`;
-
-$DEB_HOST_ARCH_OS =~ s/\n//;
+#my $DEB_HOST_ARCH_OS = `dpkg-architecture -qDEB_HOST_ARCH_OS`;
+#$DEB_HOST_ARCH_OS =~ s/\n//;
+my $DEB_HOST_ARCH_OS = "linux";
# declarations
my $line;
--
1.9.1

View File

@ -7,7 +7,8 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://debian/copyright;md5=7adfbe801102d1e7e6bfdd3f03754efa"
SRC_URI = "https://launchpadlibrarian.net/194033720/ifupdown_${PV}.tar.xz \
file://busybox-yocto-compat.patch "
file://busybox-yocto-compat.patch \
file://defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch "
SRC_URI[md5sum] = "bb204ae2fa4171d6f1de4097f4570a7d"
SRC_URI[sha256sum] = "8a0647c59ee0606f5da9205c5b3c5b000fea98fe39348f6bb2cba5fecfc51090"

View File

@ -1,8 +0,0 @@
diff --git iperf-2.0.5/man/Makefile.am iperf-2.0.5/man/Makefile.am
index ed97bc6..728873f 100644
--- iperf-2.0.5/man/Makefile.am
+++ iperf-2.0.5/man/Makefile.am
@@ -1,2 +1 @@
-man_MANS = iperf.1
-dist_man_MANS = $(man_MANS)
+dist_man_MANS = iperf.1

View File

@ -0,0 +1,13 @@
Index: iperf-2.0.9/include/util.h
===================================================================
--- iperf-2.0.9.orig/include/util.h
+++ iperf-2.0.9/include/util.h
@@ -57,6 +57,8 @@
#include "config.h"
#endif
+#include <stdbool.h>
+
#ifdef __cplusplus
extern "C" {
#endif

View File

@ -4,12 +4,12 @@ SECTION = "console/network"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=e8478eae9f479e39bc34975193360298"
SRC_URI = " ${SOURCEFORGE_MIRROR}/iperf/${PN}-${PV}.tar.gz \
file://iperf-2.0.5_ManPage.patch \
"
SRC_URI = "${SOURCEFORGE_MIRROR}/iperf2/${PN}-${PV}.tar.gz \
file://stdbool-compilation.patch \
"
SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016"
SRC_URI[sha256sum] = "636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b"
SRC_URI[md5sum] = "351b018b71176b8cb25f20eef6a9e37c"
SRC_URI[sha256sum] = "db02911f35686e808ed247160dfa766e08ae3f59d1e7dcedef0ffb2a6643f0bf"
S = "${WORKDIR}/${PN}-${PV}"

View File

@ -15,7 +15,7 @@ S = "${WORKDIR}/git"
SRCREV = "011953fa6c824ca518cf0ea074ddeede3726bdcd"
DEPENDS = "curl openssl glib-2.0"
DEPENDS = "curl openssl glib-2.0 glib-2.0-native"
# rauc is invoking these depending the machine
RDEPENDS_${PN}_append_sysmobts-v2 = " barebox-state"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:"
PRINC="1"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files"], d)}:"
PRINC="4"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files-dora"], d)}:"
PRINC="4"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files-master"], d)}:"
PRINC="4"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/files/${PN}-${PV}"], d)}:${@base_set_filespath(["${THISDIR}/files"], d)}:"
PRINC="2"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:"
PRINC = "2"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:"
PRINC="2"

View File

@ -3,10 +3,11 @@ PRINC="3"
# We need networking to run as we have no native services yet
SYSTEMD_DISABLED_SYSV_SERVICES_remove = "networking dnsmasq"
S_THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
S_THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${S_THISDIR}/${PN}"], d)}:"
SRC_URI += "file://alignment.service"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
do_install_append() {
install -d ${D}${systemd_unitdir}/system/basic.target.wants

View File

@ -0,0 +1,43 @@
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# See systemd.conf(5) for details
[Manager]
#LogLevel=info
#LogTarget=journal-or-kmsg
#LogColor=yes
#LogLocation=no
#DumpCore=yes
#CrashShell=no
#ShowStatus=yes
#CrashChVT=1
#CPUAffinity=1 2
#DefaultControllers=cpu
#DefaultStandardOutput=journal
#DefaultStandardError=inherit
#JoinControllers=cpu,cpuacct,cpuset net_cls,net_prio
RuntimeWatchdogSec=20
ShutdownWatchdogSec=20
#CapabilityBoundingSet=
#TimerSlackNSec=
#DefaultLimitCPU=
#DefaultLimitFSIZE=
#DefaultLimitDATA=
#DefaultLimitSTACK=
#DefaultLimitCORE=
#DefaultLimitRSS=
#DefaultLimitNOFILE=
#DefaultLimitAS=
#DefaultLimitNPROC=
#DefaultLimitMEMLOCK=
#DefaultLimitLOCKS=
#DefaultLimitSIGPENDING=
#DefaultLimitMSGQUEUE=
#DefaultLimitNICE=
#DefaultLimitRTPRIO=
#DefaultLimitRTTIME=

View File

@ -1,7 +1,7 @@
S_THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
S_THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${S_THISDIR}/${PN}"], d)}:"
PRINC="25"
PRINC="26"
SRC_URI += "file://journald.conf \
file://legacy.conf \
@ -10,6 +10,8 @@ SRC_URI += "file://journald.conf \
SRC_URI_append_sysmobts-v2 = " file://system.conf"
SRC_URI_append_sysmocom-odu = " file://system.conf"
SRC_URI_append_gsmk-owhw = " file://system.conf"
SRC_URI_append_sysmobts2100 = " file://system.conf"
# We want the journal on the ODU...
SRC_URI_append_sysmocom-idu = " file://system.conf"

View File

@ -1,4 +1,4 @@
THISDIR := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
THISDIR := "${@os.path.dirname(d.getVar('FILE', True))}"
FILESPATH =. "${@base_set_filespath(["${THISDIR}/${PN}-${PV}"], d)}:"
PRINC="9"

View File

@ -6,6 +6,8 @@ LIC_FILES_CHKSUM = "file://../debian/copyright;md5=ee6bbaacb5db5f2973818f0902c3a
DEPENDS += "glib-2.0 libbsd"
inherit pkgconfig
SRC_URI = "${DEBIAN_MIRROR}/main/n/netcat-openbsd/netcat-openbsd_${PV}.orig.tar.gz;name=netcat \
${DEBIAN_MIRROR}/main/n/netcat-openbsd/netcat-openbsd_${PV}-7.debian.tar.gz;name=netcat-patch"
@ -31,7 +33,7 @@ python do_patch() {
do_compile() {
cd ${S}
pkgrel=4
oe_runmake CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\""
oe_runmake LDFLAGS="$LDFLAGS" CFLAGS="$CFLAGS -DDEBIAN_VERSION=\"\\\"${pkgrel}\\\"\""
}
do_install() {

View File

@ -19,7 +19,7 @@ SRC_URI[sha256sum] = "5b76e9cb0ee843208c17053315926e0e168db8a89fe960655a0d0f4871
do_deploy() {
install -d ${DEPLOY_DIR_TOOLS}
install -m 0755 src/dvnixload ${DEPLOY_DIR_TOOLS}/dvnixload-${PV}
install -m 0755 ${B}/src/dvnixload ${DEPLOY_DIR_TOOLS}/dvnixload-${PV}
rm -f ${DEPLOY_DIR_TOOLS}/dvnixload
ln -sf ./dvnixload-${PV} ${DEPLOY_DIR_TOOLS}/dvnixload

View File

@ -0,0 +1,48 @@
SUMMARY = "Firmware files for Nuran Wireless Litecell 1.5 Mainboard"
LICENSE = "CLOSED"
NRW_LC15_MIRROR ??= "gitlab.com/nrw_litecell15"
S = "${WORKDIR}/git"
inherit gitver-pkg gitver-repo
REPODIR = "${THISDIR}"
REPOFILE = "lc15-firmware_git.bb"
PR := "r${REPOGITFN}"
PV = "git${SRCPV}"
PKGV = "${PKGGITV}"
DEV_BRANCH = "${@ 'nrw/litecell15-next' if d.getVar('NRW_BSP_DEVEL', False) == "next" else 'nrw/litecell15'}"
DEV_SRCREV = "${AUTOREV}"
DEV_SRCURI := "git://${NRW_LC15_MIRROR}/litecell15-fw.git;protocol=https;branch=${DEV_BRANCH}"
REL_BRANCH = "nrw/litecell15"
REL_SRCREV = "68607b5c33a02883c50f9408f423234747407d99"
REL_SRCURI := "git://${NRW_LC15_MIRROR}/litecell15-fw.git;protocol=https;branch=${REL_BRANCH}"
BRANCH = "${@ '${DEV_BRANCH}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_BRANCH}'}"
SRCREV = "${@ '${DEV_SRCREV}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCREV}'}"
SRC_URI = "${@ '${DEV_SRCURI}' if d.getVar('NRW_BSP_DEVEL', False) else '${REL_SRCURI}'}"
addtask showversion after do_compile before do_install
do_showversion() {
bbplain "${PN}: ${PKGGITV} => ${BRANCH}:${PKGGITH}"
}
inherit allarch
do_install() {
install -d ${D}${includedir}/nrw
install -d ${D}${includedir}/nrw/litecell15
install -m 0644 ${S}/inc/nrw/litecell15/* ${D}${includedir}/nrw/litecell15
install -d ${D}${base_libdir}/firmware
install -m 0644 ${S}/bin/* ${D}${base_libdir}/firmware
}
INSANE_SKIP_${PN} = "arch"
FILES_${PN} = "${base_libdir}/firmware/*"
FILES_${PN}-dev = "${includedir}/nrw/litecell15/*"

View File

@ -0,0 +1,12 @@
Index: git/src/osmo-bts-sysmo/l1_if.h
===================================================================
--- git.orig/src/osmo-bts-sysmo/l1_if.h
+++ git/src/osmo-bts-sysmo/l1_if.h
@@ -132,6 +132,6 @@ int bts_check_for_ciph_cmd(struct femtol
void bts_check_for_first_ciphrd(struct femtol1_hdl *fl1h,
GsmL1_MsgUnitParam_t *msgUnitParam,
struct gsm_lchan *lchan);
-inline int l1if_ms_pwr_ctrl(struct gsm_lchan *lchan, const int uplink_target,
+int l1if_ms_pwr_ctrl(struct gsm_lchan *lchan, const int uplink_target,
const uint8_t ms_power, const float rxLevel);
#endif /* _FEMTO_L1_H */

View File

@ -3,26 +3,36 @@ LICENSE = "AGPLv3"
LIC_FILES_CHKSUM="file://COPYING;md5=73f1eb20517c55bf9493b7dd6e480788"
SRC_URI = "git://git.osmocom.org/osmo-bts.git;protocol=git;branch=sysmocom/0.3.5-stable;name=osmobts;destsuffix=git \
git://git.osmocom.org/openbsc;protocol=git;branch=master;name=openbsc;destsuffix=openbsc"
SRCREV_osmobts = "dce6c09b30dd709467216d325bf38845a98fe75b"
git://git.osmocom.org/openbsc;protocol=git;branch=master;name=openbsc;destsuffix=openbsc \
file://gcc6-linking-fix.patch"
SRCREV_osmobts = "a4bd813081e788012c72f34d31150cdf02db307f"
SRCREV_openbsc = "57ee78078905c7499bd4e6857f8981d22badfcac"
PV = "0.4.3+git${SRCPV}"
PR = "r18.${META_TELEPHONY_OSMO_INC}"
PR = "r20.${META_TELEPHONY_OSMO_INC}"
S = "${WORKDIR}/git"
SRCREV_FORMAT = "openbsc-rosmobts"
DEPENDS = "libosmocore libosmo-abis femtobts-api gpsd"
RDEPENDS_${PN} += "coreutils sysmobts-firmware (>= 5.1)"
RCONFLICTS_${PN} = "sysmobts-firmware (< 5.1)"
DEPENDS_append_sysmobts-v2 = " femtobts-api"
DEPENDS_append_sysmobts2100 = " lc15-firmware"
EXTRA_OECONF += "--enable-sysmocom-bts"
RDEPENDS_${PN} += "coreutils"
inherit autotools update-rc.d pkgconfig
RDEPENDS_${PN}_append_sysmobts-v2 = " sysmobts-firmware (>= 5.1)"
RCONFLICTS_${PN}_append_sysmobts-v2 = " sysmobts-firmware (< 5.1)"
RDEPENDS_${PN}_append_sysmobts2100 = " lc15-firmware"
EXTRA_OECONF_sysmobts-v2 += "--enable-sysmocom-bts"
EXTRA_OECONF_sysmobts2100 += "--enable-litecell15"
inherit autotools pkgconfig
# Select the API version
inherit femtobts_api
CPPFLAGS += " ${BTS_HW_VERSION} "
CPPFLAGS_append_sysmobts-v2 = " ${BTS_HW_VERSION} "
do_configure_prepend() {
ln -sf ../openbsc openbsc || true
@ -35,37 +45,48 @@ do_compile_append_sysmobts-v2() {
do_install_append() {
install -d ${D}${sysconfdir}/osmocom
install -m 0660 ${S}/doc/examples/osmo-bts.cfg ${D}${sysconfdir}/osmocom
install -m 0755 ${S}/contrib/respawn.sh ${D}${sysconfdir}/osmocom/
install -m 0755 ${S}/contrib/respawn-only.sh ${D}${sysconfdir}/osmocom/
install -m 0644 ${S}/contrib/screenrc-sysmobts ${D}${sysconfdir}/osmocom/
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${S}/contrib/sysmobts.init ${D}${sysconfdir}/init.d/sysmobts
# Install systemd and enable on sysinit
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 ${S}/contrib/sysmobts.service ${D}${systemd_unitdir}/system/
ln -sf ../sysmobts.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
# Future sysmobts-mgr handling
install -m 0660 ${S}/doc/examples/sysmobts-mgr.cfg ${D}${sysconfdir}/osmocom
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 ${S}/contrib/sysmobts-mgr.service ${D}${systemd_unitdir}/system/
ln -sf ../sysmobts-mgr.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
}
do_install_append_sysmobts-v2() {
install -m 0755 ${S}/contrib/sysmobts-calib/sysmobts-calib ${D}${bindir}/
install -m 0660 ${S}/doc/examples/osmo-bts.cfg ${D}${sysconfdir}/osmocom
# Install systemd and enable on sysinit
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0660 ${S}/doc/examples/sysmo/sysmobts-mgr.cfg ${D}${sysconfdir}/osmocom
install -m 0644 ${S}/contrib/sysmobts.service ${D}${systemd_unitdir}/system/
ln -sf ../sysmobts.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
}
CONFFILES_${PN} = "${sysconfdir}/osmocom/osmo-bts.cfg"
CONFFILES_${PN} += "${sysconfdir}/osmocom/sysmobts-mgr.cfg"
INITSCRIPT_PACKAGES = "${PN}"
INITSCRIPT_NAME_${PN} = "sysmobts"
INITSCRIPT_PARAMS_${PN} = "defaults 30 30"
do_install_append_sysmobts2100() {
install -m 0660 ${S}/doc/examples/litecell15/osmo-bts.cfg ${D}${sysconfdir}/osmocom
# ensure consistent naming
mv ${D}/${bindir}/lc15bts-util ${D}/${bindir}/sysmobts-util
mv ${D}/${bindir}/lc15bts-mgr ${D}/${bindir}/sysmobts-mgr
# Install systemd and enable on sysinit
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0660 ${S}/doc/examples/litecell15/lc15bts-mgr.cfg ${D}${sysconfdir}/osmocom/
install -m 0644 ${S}/contrib/osmo-bts-lc15.service ${D}${systemd_unitdir}/system/
ln -sf ../osmo-bts-lc15.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
}
CONFFILES_${PN} = "${sysconfdir}/osmocom/osmo-bts.cfg"
CONFFILES_${PN}_append_sysmobts-v2 = " ${sysconfdir}/osmocom/sysmobts-mgr.cfg"
# somehow it seems not posible to use _append constructs on PACKAGES
#PACKAGES_append_sysmobts-v2 = " osmo-bts-remote sysmobts-calib sysmobts-util"
PACKAGES =+ "osmo-bts-remote sysmobts-calib sysmobts-util"
FILES_${PN} += "${systemd_unitdir}"
FILES_osmo-bts-remote = " ${bindir}/sysmobts-remote "
FILES_sysmobts-calib = " ${bindir}/sysmobts-calib "
FILES_osmo-bts-remote_sysmobts-v2 = " ${bindir}/osmo-bts-sysmo-remote "
FILES_sysmobts-calib_sysmobts-v2 = " ${bindir}/sysmobts-calib "
FILES_sysmobts-util = " ${bindir}/sysmobts-util "

View File

@ -5,21 +5,26 @@ LIC_FILES_CHKSUM="file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://git.osmocom.org/osmo-pcu.git;protocol=git;branch=jerlbeck/master"
SRCREV = "6e75bc7fe304eec274f6e485a8b23a164fd4e28e"
PV = "0.4+git${SRCPV}"
PR = "r4.${META_TELEPHONY_OSMO_INC}"
PR = "r5.${META_TELEPHONY_OSMO_INC}"
S = "${WORKDIR}/git"
DEPENDS = "libosmocore femtobts-api osmo-bts"
DEPENDS = "libosmocore osmo-bts"
DEPENDS_append_sysmobts-v2 = " femtobts-api"
DEPENDS_append_litecell15 = " lc15-firmware"
DEPENDS_append_sysmobts2100 = " lc15-firmware"
# This implements PCU Interface v5 (GPRS RSSI)
RDEPENDS_${PN} = "osmo-bts (>= 0.4.0)"
EXTRA_OECONF_sysmobts-v2 += "--enable-sysmocom-bts --enable-sysmocom-dsp"
EXTRA_OECONF_litecell15 += "--enable-lc15bts-phy"
EXTRA_OECONF_sysmobts2100 += "--enable-lc15bts-phy"
inherit autotools pkgconfig
# Select the API version
inherit femtobts_api
CPPFLAGS += " ${BTS_HW_VERSION} "
CPPFLAGS_append_sysmobts-v2 = " ${BTS_HW_VERSION} "
do_install_append() {
# Install systemd and enable on sysinit

View File

@ -1,11 +1,11 @@
SRC_URI = "git://git.sysmocom.de/sysmo-bts/u-boot;branch=v2011.12;protocol=git"
SRCREV = "32c1294d62c134137d4a65b6e9101b1172b60789"
PV = "v2011.12+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/sysmo-bts/u-boot;branch=tracking/upstream-next;protocol=git"
SRCREV = "64b07727fbb268bd19bacfed6711bdb060effcfa"
PV = "v2017.03+git${SRCPV}"
S = "${WORKDIR}/git"
PRINC = "13"
LIC_FILES_CHKSUM = "file://README;beginline=1;endline=22;md5=5ba4218ac89af7846802d0348df3fb90"
LIC_FILES_CHKSUM = "file://README;beginline=1;endline=22;md5=2687c5ebfd9cb284491c3204b726ea29"
UBOOT_MACHINE_sysmobts-v2 = "davinci_sysmobts_v2_config"
COMPATIBLE_MACHINE = "(sysmobts-v2)"
@ -13,14 +13,16 @@ COMPATIBLE_MACHINE = "(sysmobts-v2)"
UBOOT_IMAGE = "u-boot-${MACHINE}-${PV}-${PR}"
UBOOT_SYMLINK = "u-boot-${MACHINE}"
DEPENDS += " bc-native "
do_install_append() {
rm ${D}/boot/*
}
do_deploy_prepend () {
install -d ${DEPLOYDIR}
install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE}.bin
install ${S}/u-boot ${DEPLOYDIR}/${UBOOT_IMAGE}.elf
install ${B}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE}.bin
install ${B}/u-boot ${DEPLOYDIR}/${UBOOT_IMAGE}.elf
cd ${DEPLOYDIR}
rm -f ${UBOOT_SYMLINK}.bin

View File

@ -0,0 +1,78 @@
DESCRIPTION = "ubi with rescue slot"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PACKAGES = ""
PACKAGE_ARCH = "${MACHINE_ARCH}"
do_fetch[cleandirs] = "${S}"
do_unpack[noexec] = "1"
do_patch[noexec] = "1"
do_configure[noexec] = "1"
do_compile[noexec] = "1"
do_install[noexec] = "1"
do_populate_sysroot[noexec] = "1"
do_package[noexec] = "1"
do_packagedata[noexec] = "1"
do_package_write_ipk[noexec] = "1"
do_package_write_deb[noexec] = "1"
do_package_write_rpm[noexec] = "1"
do_fetch[depends] += "virtual/kernel:do_deploy image-rauc-rescue-initramfs:do_image_complete"
do_deploy[depends] += "mtd-utils-native:do_populate_sysroot"
S = "${WORKDIR}"
do_fetch() {
mkdir -p "${S}/fs"
cp "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin" "${S}/fs/kernel"
cp "${DEPLOY_DIR_IMAGE}/image-rauc-rescue-initramfs-${MACHINE}.cpio.xz" "${S}/fs/initramfs"
}
do_fetch_append_gsmk-owhw() {
cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-gsmk-owhw.dtb" "${S}/fs/devicetree"
}
IMAGE_ROOTFS = "${S}/fs"
IMAGE_NAME = "${PN}-${MACHINE}-${DATETIME}"
# Don't include the DATETIME variable in the sstate package sigantures
IMAGE_NAME[vardepsexclude] = "DATETIME"
IMAGE_LINK_NAME = "${PN}-${MACHINE}"
do_deploy() {
echo \[rescue\] > ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo image=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs >> ubinize.cfg
echo vol_id=0 >> ubinize.cfg
echo vol_size=14MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=rescue >> ubinize.cfg
echo \[system0\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=1 >> ubinize.cfg
echo vol_size=35MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=system0 >> ubinize.cfg
echo \[system1\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=2 >> ubinize.cfg
echo vol_size=35MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=system1 >> ubinize.cfg
echo \[data\] >> ubinize.cfg
echo mode=ubi >> ubinize.cfg
echo vol_id=3 >> ubinize.cfg
echo vol_size=16MiB >> ubinize.cfg
echo vol_type=dynamic >> ubinize.cfg
echo vol_name=data >> ubinize.cfg
echo vol_flags=autoresize >> ubinize.cfg
mkfs.ubifs --squash-uids -r ${IMAGE_ROOTFS} -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rescue.ubifs ${MKUBIFS_ARGS}
ubinize -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.ubi ${UBINIZE_ARGS} ubinize.cfg
ln -sf ${IMAGE_NAME}.ubi ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.ubi
}
addtask deploy after do_fetch before do_build

View File

@ -1,3 +1,4 @@
SDK-OSMO_append = "femtobts-api-dev gpsd-dev"
SDK-OSMO_append_sysmobts2100 = " lc15-firmware-dev"
PRINC = "2"
PRINC = "3"