Compare commits

...

184 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
Harald Welte 2025596913 OWHW: update barebox for SWITCH_RESET pulse generation on cold boot 2016-06-23 00:41:43 +02:00
Harald Welte b021331415 OWHW: Enable hardware watchdog from systemd
We had this enabled on odu/idu/sysmobts already, but didn't do so
on owhw.
2016-06-23 00:41:38 +02:00
Harald Welte 78f5bc0867 OWHW: add image definitio for OWHW related files + rauc-slot files
for OWHW, one should build sysmocom-owhw-rauc-image, not
sysmocom-owhw-image!
2016-06-23 00:41:33 +02:00
Harald Welte 27d5493687 OWHW: update barebox recipe (move eeprom bootstate to offset 0) 2016-06-23 00:41:31 +02:00
Harald Welte f54c291c85 OWHW: add patch to hard-code the boot-state back-end EEPROM path 2016-06-23 00:41:18 +02:00
Harald Welte 4a8db6dbea update barebox-state to current dt-utils master
which (at least for owhw-v2) fixes the automatic discovery of the
bootstate backend EEPROM. I suspect it should now also work without
the hardc-de-layout-values.patch on sysmobts-v2 and sysmocom-odu, but
that remains to be tested (and thus the patches remain).
2016-06-23 00:41:12 +02:00
Harald Welte 6eef6d8fb3 OWHW: update barebox to include v2 changes 2016-06-23 00:41:06 +02:00
Harald Welte b53807060b sysmocom-owhw-image: no initramfs, hard-link for kernel
for some reason barebox is not able to resolve the symlink, so let's
create a hard link instead.
2016-06-23 00:40:50 +02:00
Harald Welte 08406f0a8c barebox: update to 'initramfs is optional' boot config 2016-06-23 00:40:45 +02:00
Harald Welte b917d5b19a task-owhw-image: Add crda and iw for wifi 2016-06-23 00:40:38 +02:00
Harald Welte d5c8bcd3b7 add crda (wifi regulatory database) and its [build] dependencies 2016-06-23 00:40:34 +02:00
Harald Welte 843770cb60 import iw 3.11 recipe from meta-openembedded dora branch.
I completley fail to understand why the most fundamental tool for wifi
configuration is missing from poky/dora.
2016-06-23 00:40:32 +02:00
Harald Welte b45f8f591f bossa: add missing readline build dependency 2016-06-23 00:40:20 +02:00
Harald Welte 5bf8ff5571 OWHW: add 'sysmocom-owhw-image' and ensure usb2514 + bossa is included 2016-06-23 00:40:16 +02:00
Harald Welte aa5249a22d OWHW: add recipe for bossa (Atmel SAM flasher) 2016-06-23 00:40:10 +02:00
Harald Welte 87ba2df810 OWHW: update barebox to fix button GPIO 2016-06-23 00:40:01 +02:00
Harald Welte 5c4b0827e6 OWHW: fix gpio_usb2514 syntax error 2016-06-23 00:39:23 +02:00
Harald Welte 3bacf883bd OWHW: persistent modem serial device names 2016-06-23 00:39:20 +02:00
Harald Welte 8cde214b95 rauc: support OWHW 2016-06-23 00:39:11 +02:00
Harald Welte fe3fe6e3d3 OWHW: add GPIO export script for this board
... and use the new GPIO location from usb2514 tool
2016-06-23 00:39:06 +02:00
Harald Welte a224a88891 usb2514.c: Add support for GSMK OWHW board
we only need to swap a single port (DN4) here.
2016-06-23 00:39:02 +02:00
Harald Welte 89435bf483 usb2514: make it more modular/configurable 2016-06-23 00:38:58 +02:00
Harald Welte 1c6616736c OWHW: Add barebox recipe 2016-06-23 00:38:44 +02:00
Holger Hans Peter Freyther ddb2f88230 u-boot: Build newer version of U-Boot not touching A1CR
UBL is setting up the flash timings (A1CR) and so far U-Boot
was overwriting it with a timing for the EVB development board
of TI. Let UBL define ECC/ChipSelect and the A1CR timings.

This might now cause different kind of flash issues because the
per chip timings might be "wrong". This is why this commit should
needs to stay in testing a bit longer. We should use this commit
on RevC, D, E and F hardware ourselves a bit.
2016-06-12 21:47:34 +02:00
Holger Hans Peter Freyther a09e6a2fec barebox-sysmobts: Prepare the system for revisionG as well 2016-06-06 14:36:43 +02:00
Holger Hans Peter Freyther 86baca7ed8 u-boot: Add revision G and later support as well 2016-06-06 14:27:54 +02:00
Holger Hans Peter Freyther 0673324a5d ubl: Add reivision G and later support
The nWP handling was only present for RevF but applies to later
HW revisions too.
2016-06-06 14:23:31 +02:00
Holger Hans Peter Freyther bce73d1dc7 image-rauc-ubi: Deal with different kernel types
I might end up using a zImage and then it should be used. Use the
variable exported by the ${MACHINE}.conf to work with it.
2016-06-02 18:08:38 +02:00
Holger Hans Peter Freyther 2ed575b506 uboot: Avoid QA error on packaging
I didn't know that u-boot was creating a package and installing
the bin into /boot. The detection of the file seems to have
changed and a new QA error comes up.

ERROR: u-boot-v2011.12+gitAUTOINC+f6453a3911-r0 do_package: QA Issue: split_and_strip_files: 'file /home/oebuilds/jenkins/workspace/Yocto-Master/label/OE/build/tmp/work/sysmobts_v2-poky-linux-gnueabi/u-boot/v2011.12+gitAUTOINC+f6453a3911-r0/package/boot/u-boot-sysmobts-v2-v2011.12+gitAUTOINC+f6453a3911-r0' failed [split-strip]

This seems to have been introduced by changing the LC_ALL to
en_US.UTF-8. I have started a dialogue with upstream development
but as we do not need a u-boot package, let's just remove the
files.
2016-05-24 14:39:29 +02:00
Holger Hans Peter Freyther 5bdf5bc9f9 image-rauc-ubi: Make sure mkfs.ubifs is present
The DEPENDS is not enough to have it ready in time. Add a task
dependency for mtd-utils-native.
2016-05-15 15:23:43 +02:00
Holger Hans Peter Freyther 719af51ad0 image-rauc-ubi: Add license file checksums
ERROR: image-rauc-ubi-1.0-r0 do_populate_lic: QA Issue: image-rauc-ubi: Recipe file does not have license file information (LIC_FILES_CHKSUM) [license-checksum]
2016-05-07 23:00:11 +02:00
Holger Hans Peter Freyther 90a5fad2b7 glib: Enable static libraries for glib
I want to use static libraries of glib in rauc to shrink the rescue
image to a reasonable amount.
2016-04-21 13:06:13 +02:00
Holger Hans Peter Freyther a8b9551257 ca-cacert-rootcert: Add the letsencrypt certificate here as well
This is not quite "ca-cacert" anymore, more like "ca-sysmocom" for
the root certificates needed for us.

Fixes: SYS#2499
2016-04-09 18:25:03 +02:00
Holger Hans Peter Freyther 9460fb650f glib-2.0: Move recipes to yocto-dora/
This glib-2.0 version was required by rauc and should have been
placed in the recipes-extra (or recipes-fixes) directory.

Yocto master has imported gobject-introspecition and this requires
a newer version of glib-2.0. For Yocto master this recipe has
replaced the newer one. By moving it to the yocto-dora directory
we continue to use the old version on dora and the default version
on master.
2016-03-23 13:53:56 +01:00
Holger Hans Peter Freyther e6edea0cdb layer: Allow to have entire recipes in the yocto-VER directory
In case of the upcoming glib-2.0 change we only want to use our
version on Dora. Look for *.bb in the yocto-dora/*/ as well.
2016-03-23 13:53:55 +01:00
Holger Hans Peter Freyther f3ffbf4db3 task-sysmocom-feed: Add linux sctp library to the feed
libosmo-netif gained SCTP support and we should be able to provide
it.

Related: SYS#2524
2016-03-23 11:52:19 +01:00
Holger Hans Peter Freyther 73c143612a yocto-master: Remove udev bbappend for the master build
In master we use systemd to provide udev and standalone udev has
been replaced with eudev. I think we do not need to patch things
around here.
2016-03-05 21:23:55 +01:00
Holger Hans Peter Freyther b87c5b4a0c ntp: Upgrade with security fixes in ntp
The upgrade is fixing several known security issues. Let's update it.

Fixes: SYS#2449
2016-02-27 17:09:51 +01:00
Holger Hans Peter Freyther 29ba452c5f lmsensors-apps: The code vanished once again, move to fedora 2016-02-20 19:36:25 +01:00
Holger Hans Peter Freyther b271ce4d23 sysmocom-defaults: Add more systemd features needed to build
Disabling the new "binfmt" doesn't work and breaks the build. I have
sent an email to the mailinglist and this might be fixed but at the
same time binfmt is split into a new package anyway. At the same time
we should enable some items we have now switched off. Once we start
to use/stabilize this build we need to check what we need and what the
cost is.
2016-02-18 20:22:47 +01:00
Holger Hans Peter Freyther 975d15ac7e iproute2: Re-introduce quirk to add a iproute2-misc package
We need the -misc package for extra utilities needed by our tasks.
Use the bbappend to create an empty package that pulls in the other
utilities.
2016-02-17 23:19:16 +01:00
Holger Hans Peter Freyther 4ca7a67cca iproute2: Remove poky master patches for version 4.4
Yocto is now using iproute2 4.4 and the tools we packaged into
the main package are now available as extra packages and we can
just drop our extension for master.
2016-02-17 23:12:38 +01:00
Holger Hans Peter Freyther 18428e1d52 ntp: Deal with /usr/libexec being empty in Yocto master
libexecdir is now a dedicated directory and empty in our ntpd
build. Avoid QA issue of an empty directory not belonging to
anyone. Clean it if it is empty
2016-01-27 14:05:17 +01:00
Holger Hans Peter Freyther ebf4952e88 osmo-pcu: Upgrade to jerlbeck/master
Big amount of changes for EDGE support without supporting it
yet. See if it still works at 32C3.
2015-12-26 18:55:27 +01:00
Holger Hans Peter Freyther 6fd05a1e3f sysmocom-archiver: Attempt to fix issue with linux-firmware
Exception: OSError: [Errno 36] File name too long: '/home/oebuilds/jenkins/workspace/Yocto-Master/label/OE/build/tmp/deploy/sources/allarch-poky-linux/Firmware-AbilisFirmware-agereFirmware-amd-ucodeFirmware-atheros_firmwareFirmware-broadcom_bcm43xxFirmware-ca0132Firmware-chelsio_firmwareFirmware-cw1200Firmware-dib0700Firmware-ene_firmwareFirmware-fw_sst_0f28Firmware-go7007Firmware-i2400mFirmware-ibt_firmwareFirmware-it913xFirmware-iwlwifi_firmwareFirmware-IntcSST2Firmware-MarvellFirmware-mwl8335Firmware-myri10ge_firmwareFirmware-OLPCFirmware-phanfwFirmware-qat_dh895xcc_firmwareFirmware-qla2xxxFirmware-r8a779x_usb3Firmware-radeonFirmware-ralink_a_mediatek_company_firmwareFirmware-ralink-firmwareFirmware-rtlwifi_firmwareFirmware-tda7706-firmwareFirmware-ti-connectivityFirmware-ueagle-atm4-firmwareFirmware-via_vt6656Firmware-wl1251Firmware-xc4000Firmware-xc5000Firmware-xc5000cFirmware-sianoFirmware-qualcommAthos_ar3kFirmware-qualcommAthos_ath10k'
2015-12-20 19:03:15 +01:00
Holger Hans Peter Freyther 9241e2bdc5 systemd: It keeps growing, try to cut it back a bit more
It gains more features and the binary size has grown in a
significant manner. Disable some features not disabled by
the default OE build.
2015-12-20 17:57:42 +01:00
Holger Hans Peter Freyther 45bc37acf6 idu/bsc: libx11-trim is dead for a long time use libx11-diet
Yocto master now fails because our preferred provider does not
exist anymore and no other provider is picked.
2015-12-19 16:21:49 +01:00
Holger Hans Peter Freyther dc69479f0f sysmocom-backup: Fix creating of back-ups for external files
* The file we install is called default.files and not *.backup
* Spotted by Lazlo while creating a backup on the latest system
2015-12-15 11:00:10 +01:00
Holger Hans Peter Freyther 3b80fa69e8 osmo-bts: Upgrade to latest pre l1sap release, upgrade firmware
Upgrade the superfemto firmware to version 5.1 and upgrade the
osmo-bts to the latest release before the l1sap changes.
2015-12-07 13:24:21 +01:00
Holger Hans Peter Freyther bbfabee7c1 iproute2: Disable arpd differently on newer releases
It is checking for the berkeley db in some way but let's make sure
that between our current release and the next one we have the
same functionality.
2015-12-03 17:24:44 +01:00
Holger Hans Peter Freyther 1394710d91 busybox: Catch up with master again 2015-12-02 21:13:53 +01:00
Holger Hans Peter Freyther 0409324186 rauc: Do not try to populate /etc/opkg/
Our initramfs images are supposed to be small and don't have a
/etc/opkg folder so attempting to put feed config in there will
fail. Reset the FEED_URIS that come from our local.conf.
2015-11-27 11:00:19 +01:00
Holger Hans Peter Freyther 5a1dca4d60 ca-certificates: Try to fetch it from launchpad
The angstrom mirror is very slow in finding the file (no dirhash?),
let's see if canonical is any better in serving the file.
2015-11-25 17:52:04 +01:00
Holger Hans Peter Freyther 85f60e5a65 ca-certificates: The source has vanished from debian
It was never a released version so it is not showing up on the
archive.debian.org page. Let's move to angstrom for our stable
source of it.
2015-11-25 17:28:42 +01:00
Holger Hans Peter Freyther b382d145a0 barebox: Update to be buildable with gcc5
No functional change for the specific hardware platform but a
new header to be consumed by gcc5.
2015-11-25 16:46:02 +01:00
Jan Luebbe ca148fe435 barebox: update to newer git version for fixed sysmobts DSP
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-11-25 16:31:24 +01:00
Holger Hans Peter Freyther 33b6d83edd u-boot: Add the compiler-gcc5.h header file
When trying to compile with gcc5 we need this file to be present
as otherwise the build will fail.
2015-11-21 21:39:28 +00:00
Holger Hans Peter Freyther 0700c55790 lm-sensors: Attempt to move to a URI where the code still exists
lm-sensors.org seems to have vanished from the internet. Start to
use a copy what was found by googling.
2015-11-21 10:15:57 +00:00
Holger Hans Peter Freyther 9170107271 task-sysmocom-feed: Attempt to put perf into the feed as well
Make perf (perf-python, perf-perl) available to us as well. Let's
see what the CI is saying about it.
2015-11-20 22:13:23 +00:00
Holger Hans Peter Freyther 8ce4ab4927 sysmocom-backup-data: Avoid an absolute symlink to fix restoring
When restoring the backup the rootfs is mounted in /rootfs/data
and the symlink to the real file would then not work. Attempt to
change the directory first to get a relative symlink.

Untested change and needed for rauc
2015-11-20 21:45:34 +00:00
Harald Welte 20e26fcd3b ntp: fix postinst on systemd based hosts
We need to make sure we're not trying to call systemctl on the build
host.  Thanks to holger for pinpointing this.
2015-11-02 08:54:24 +01:00
Harald Welte ba2e6da375 OWHW: add a machine config 2015-11-01 12:06:07 +01:00
Harald Welte c820b61c10 Add barebox recipe for OWHW 2015-11-01 12:05:38 +01:00
Holger Hans Peter Freyther 20bcf2de07 systemd: It is 225 and not 255.. but let's call it % 2015-10-13 17:41:13 +02:00
Holger Hans Peter Freyther 9b775911a0 systemd: Attempt to catch up with master 2015-10-13 17:39:19 +02:00
Jan Luebbe ff183a100e sysmocom-configure: handle missing system.conf gracefully
If /slot/system.conf is missing, we just exit the generator.
2015-10-13 17:37:03 +02:00
Jan Luebbe 8e104ac413 sysmocom-configure: add simple framework to run configuration scripts
The configuration scripts are named for the systemd units for which they
generate configuration files. The generator causes them to run before
those units are started.
2015-10-13 17:36:42 +02:00
Henning Heinold 08913496cc ntp: change the cron call for ntpdate
* the ntpdate cron job turned into
  a shell script which now checks
  for running timeserver before
  updating the time via ntpdate

* install the cron stanza to the
  cron.d directory like serval
  other packages does

* comment the entry in the old
  crontab file when found

Fixes: SYS#1841
2015-10-02 11:34:46 +02:00
Holger Hans Peter Freyther 9c5ee37ab2 linux-sysmocom: Make room for linux4
Yocto master has introduced GCC5 and this doesn't like to compile
the older linux kernels yet. This year it is time to move to a newer
LTS kernel and this can be Linux-4.1. Make space for the upgrade
by moving the recipe to a new name.
2015-09-08 15:23:37 +02:00
Holger Hans Peter Freyther ebb9f0dd71 osmo-pcu: Upgrade to the latest PCU version
* Fix SGSN re-connect
* Reliability fixes
2015-09-08 14:53:40 +02:00
Jan Luebbe a4edad8b84 linux: update for sysmobts
Move to newer stable kernel (3.10.84).

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-09-08 14:45:40 +02:00
Jan Luebbe 5fa7032384 initramfs-rauc-slot: support restoring the backup archive
This change adds an initramfs module to mount the data partition and
restore the backup to the overlay. It is enabled by adding it to the
image-rauc-slot-initramfs recipe.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>

[hfreyther: keep udev out of the dependencies]
2015-09-08 14:37:03 +02:00
Jan Luebbe 4d66b042e4 sysmocom-backup-data: do not enable the restore service automatically
This is needed for an upcoming change which will restore the backup from
the initramfs.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-09-08 14:36:03 +02:00
Jan Luebbe ecff51c389 rauc: update to newer git version for file reuse support
The new version searches mounted slots for matching files referenced by
the new manifest. This avoids downloading files we already have on the
system.

Additionally, the new version includes better error handling and more
unit tests.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-09-08 14:35:47 +02:00
Jan Luebbe 6b6e9405cc initramfs-rauc-install: fix root device entry for slot B
The typo caused an empty root= command line argument, which made it
impossible to boot this slot.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-09-08 14:35:36 +02:00
Jan Luebbe 6f165aba56 image-rauc-ubi: make sure all files belong to root
mkfs.ubifs needs the --squash-uids options, which squashes owners making all
files owned by root.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-09-08 14:35:21 +02:00
Holger Hans Peter Freyther ce34b983e3 opkg: Upstream has upgraded track it generically
We need to re-evaluate if module autoloading is broken
or not. This is now tracked in SYS#2116.
2015-09-04 07:19:26 +02:00
Holger Hans Peter Freyther 3a87c6e2f4 journald: Backport various leak fixes from later journald versions
Journald being the typical GNOME application is leaking memory left
and right. Let's backport some of the patches that were done in
later versions.

Fixes: SYS#1843
2015-08-26 14:35:49 +02:00
Holger Hans Peter Freyther 243de8f36e linux-sysmocom: Attempt to enable the ext4 kernel module again
Wow.. this seems to be off so frequently. For the SD Card we
should have the ext4 kernel module available.
2015-08-25 17:53:38 +02:00
Henning Heinold 8fd695e69b image-static-dns.inc: fix several items
* use printf instead of echo
* add missing /etc/ for the udhcpc-default file
* add log-entries for all shell actions in the
  post image setup
* generate comments in all files which are touched

Related: SYS#1774
2015-08-20 08:05:12 +02:00
Henning Heinold 4d0adcb963 netcat-openbsd: adding the recipe from meta-networking in meta-openembedded
Fixes: SYS#1962

[hfreyther: Add mising task-sysmocom-feed entry]
2015-08-18 14:09:32 +02:00
Holger Hans Peter Freyther c8e79c559d osmo-pcu: Upgrade for a reliability fix 2015-08-15 09:29:18 +02:00
Holger Hans Peter Freyther 910ab95f6c osmo-pcu: Fix TBF release issue with maybe_reuse 2015-08-13 20:15:02 +02:00
Holger Hans Peter Freyther 10e1b54471 osmo-pcu: Upgrade to the latest code in jerlbeck/master
This is using codel as a form of congestion algorithm to
drop packages early before the queue getting too long.
2015-08-12 07:46:12 +02:00
Holger Hans Peter Freyther d777b0ecd0 sysmocom-backup: Store the UUCP data as well
Store UUCP configuration in the backup as well.
2015-08-11 14:09:12 +02:00
Holger Hans Peter Freyther 2a2a0cf499 sysmocom-backup: Create a single sysmocom-backup-default
We can not have sysmocom-backup-default and sysmocom-backup-data-default
installed at the same time. I don't want to play games with RREPLACE and
RPROVIDES either. So simply use one of the two files. Copy the two more
default values over to the other recipe.
2015-08-11 14:08:41 +02:00
Holger Hans Peter Freyther fa5e7b12e5 sysmocom-idu: Fix the core2 vs. core2-32 tune selection
The distro is included after the machine so we can not rely
on the DISTRO_VERSION here. Use the AVAILTUNES and see if the
core2-32 is listed and then pick it.
2015-08-11 13:44:03 +02:00
Holger Hans Peter Freyther fdc0560b63 rauc: Create default files for a rauc slot to be used by the image
Create a sysmocom-nitb-rauc-image and create a rauc packagegroup
with the default depdencies and an include file to be used by
other images. This assumes that sysmocom-image.inc has been
included first.
2015-08-11 10:02:40 +02:00
Holger Hans Peter Freyther e6712d10df sysmocom-idu: Pick the right tune level
Depending on the upstream version (dora or not) we need to
use either core2 or core2-32. Use a python block expression
to pick this depending on the distro version.
2015-08-11 08:14:34 +02:00
Holger Hans Peter Freyther 6159c85e74 sysmocom-defaults: Be a bit more aggressive for the size
E.g. when using musl and trying to build the smallest possible
rootfs. Existing builds should not start to use these flags as
they would be likely to force a big rebuild.
2015-08-10 15:50:13 +02:00
Holger Hans Peter Freyther a11c332fbb sysmocom-defaults: Add some defaults that make sense to be used
While copying one build to a new directory we inherit most of
the config but it is better to collect this in a single place
so external contributors build with the same options we use.
2015-08-10 15:48:04 +02:00
Holger Hans Peter Freyther ac63f16b9b sysmocom-odu/sysmocom-idu: Use the default tunes we actually use
On our build setup we are using these default tune levels, so
we should apply them everywhere.
2015-08-10 15:46:47 +02:00
Henning Heinold e900822de2 init-ifupdown: move sysmocom-idu to meta-sysmocom
Fixes: SYS#1936
2015-08-10 15:20:47 +02:00
Holger Hans Peter Freyther a01eff9366 image-rauc-slot-initramfs: Diet and don't install udev
We don't need udev in the slot ramfs. We do have the
devtmpfs and don't need to apply any kind of rename
2015-08-10 15:19:53 +02:00
Holger Hans Peter Freyther 79545ec6cd sysmoocom-backup-data: Optimize taking a backup
With the ro image we have a cheap way to figure out which
files were changed. We can run cmp between the to be backed
up file. This way the stored data will be minimal in the
sense of changed files.
2015-08-10 15:19:44 +02:00
Holger Hans Peter Freyther 09dbe7bd33 sysmocom-backup-data: Restore all files that were saved
The backup system allows to define which other files to store
so we should just restore everything regardless of where the
file is coming from.
2015-08-10 15:19:36 +02:00
Holger Hans Peter Freyther d1a9e0efbc sysmocom-backup-data: Fix the restore service
When the normal backup script is not installed the issue became
unnoticable. Use the new/right name for the backup script.
2015-08-10 15:19:29 +02:00
Holger Hans Peter Freyther c0d9e409d9 rauc-native: Fix the building of the rauc-native tool
Drop system.conf from the SRC_URI and link the right (current
test certificates) to be used.
2015-08-08 13:51:43 +02:00
Holger Hans Peter Freyther 73d48c807e image-rauc-rescue-initramfs: Do not install kbd packages
None of our systems have a graphical console. We do not need
to install packages that load keymaps, change console fonts and
the console fonts.
2015-08-08 13:51:33 +02:00
Holger Hans Peter Freyther 3c84414af4 image-rauc-ubi: Attempt to fix when building from sstate-cache
These are set by image.bbclass and they appear to resolve the
issue of the exception during SetScene.
2015-08-08 13:35:11 +02:00
Holger Hans Peter Freyther 72f1df181d image-rauc-ubi: Make some more space for the data partition
By using initramfs for the rescue we occupy 8mb + ~3mb for the
kernel and can reduce the size of that slot. With glibc it is
difficult to reduce this even further. Let's see if a uclibc
build can help us
2015-08-07 19:46:02 +02:00
Holger Hans Peter Freyther cc6c1da7a0 sysmocom-backup-data: Store the machine-id and ssh host key 2015-08-07 19:28:52 +02:00
Holger Hans Peter Freyther 4ba1d03895 sysmocom-backup-data: Fix the glob to load additional files list
The defaults.files ends with files and not backup.
2015-08-07 19:26:20 +02:00
Holger Hans Peter Freyther b4124f6924 sysmocom-backup-data: Allow to install in parallel 2015-08-07 19:25:06 +02:00
Holger Hans Peter Freyther 1016ac1dbc linux-sysmocom: Use the only working module scheme
In fido the old autoload feature doesn't work anymore and we
need to remove it. Otherwise our sysmobts.service file will
create the /dev/dspl.. /dev/fpgadl... firmware upload files
and we all think that firmware loading is working.
2015-08-07 19:23:45 +02:00
Holger Hans Peter Freyther d0610b60cf linux-sysmocom: Move the mISDN legacy to the 3.2 kernel recipe
Only in 3.2 we are using mISDN for lcr. Move the module loading
over there so we can let it die when we kill this recipe.
2015-08-07 19:23:27 +02:00
Jan Luebbe fe728f0dcc initramfs-rauc-slot: fix overlay fs name
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-08-07 19:22:56 +02:00
Jan Luebbe 046634e17a image-rauc-ubi: change rescue slot layout
Splitt of the actual rescue root filesystem to
image-rauc-rescue-initramfs and build image-rauc-ubi using
kernel+initramfs (like normal rauc slots).

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-08-07 19:22:16 +02:00
Jan Luebbe 0c06d8a3d3 barebox: update to newer git version for changed rescue slot layout
We now use kernel+initramfs for the rescue slot as well.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-08-07 19:21:50 +02:00
Jan Luebbe eb571a7c88 barebox: update to newer git version for MAC address configuration
The new version configures the MAC address from the EEPROM on the
sysmocom-odu.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-08-07 19:21:34 +02:00
Jan Luebbe 2ad885f06a systemd: ship emergency.service which triggers a reboot
This reboots the system instead of starting a shell on boot problems.
Because the slot will only be marked as sucessfully booted as the last
step in a normal boot, repeated emergency boots will cause a fallback at
the boot chooser level to the other slot.

Testing this is possible by passing 'emergency' via the kernel command
line.
2015-08-07 19:20:43 +02:00
Harald Welte 78b77de220 gpsdate: Update to most recent version and sub-package gps-watchdog 2015-08-05 11:20:05 +02:00
Harald Welte 4504966c7e import python-smbus from meta-oe/meta-python
As we have a lot of I2C peripherals, it is useful to be able to access
them from a scripting language.
2015-08-01 18:43:55 +02:00
Harald Welte 970fe3d755 Add OE recipe for linux-mpu9150 project 2015-08-01 18:25:55 +02:00
Jan Luebbe c1eeb1a68a barebox: update to newer git version for I2C recovery
The new version contains the I2C recovery support ported from the linux
kernel for sysmobts and sysmocom-odu.
2015-07-31 21:10:57 +02:00
Jan Luebbe 27915edf67 ntp: enable automatic restart
NTPd sometimes fails to start on the first try, but works fine when
restarted.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-07-31 21:10:43 +02:00
Jan Luebbe f0fb4a9ad8 ntp: split off perl-based userspace tools
This makes it possible to install the basic debug tools without pulling
in perl itself.

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-07-31 21:10:29 +02:00
Jan Luebbe e4cc94cfd0 linux: update for sysmocom-odu
This adds kernel support for the EEPROM write-protect GPIO. Bump
linux-backports PR as well.
2015-07-31 21:09:44 +02:00
Holger Hans Peter Freyther 11c241c756 u-boot: Unbreak yocto master
We don't care about the specific u-boot version as we are using
our own releas. Use the general glob so we don't need to play
catch up.
2015-07-25 16:40:01 +02:00
Neels Hofmeyr 33995b2473 busybox-udhcpc: move sysmocom-idu dir.
The proper place apparently is below files/, not next to it.
2015-07-23 16:00:42 +02:00
Neels Hofmeyr bfac671c1c Revert "busybox-udhcpc simple.script: whitespace."
This reverts commit ea8c1346e5,
to facilitate diffing.
2015-07-23 15:55:35 +02:00
Neels Hofmeyr 8e46fae730 busybox-udhcpc: udhcpc.default file for IDU.
Hopefully, this installs a different /etc/default/udhcpc file on
sysmocom-idu machines. Not sure if adding a machine subdir suffices.

The idea is that the machine-specific subdir symocom-idu should replace
the udhcpc.default file used for the idu packages, only, which has both
resolv.conf mods and default route disabled by default.
2015-07-23 15:49:17 +02:00
Neels Hofmeyr 1411cacbce busybox-udhcpc: add option to skip default route.
The IDU requires that udhcpc does neither touch resolv.conf nor install a
default route. Add a flag to switch off default route installation, the
resolv.conf part is already switch-off-able.
2015-07-23 15:49:17 +02:00
Neels Hofmeyr ea8c1346e5 busybox-udhcpc simple.script: whitespace.
Will edit the file in next commit, first fixing indenting to not mess up
the diff.
2015-07-23 15:49:17 +02:00
Neels Hofmeyr bdfd0f736d init-ifupdown: remove iridium "weak" route.
Remove post-up entries from iridium interface config for weak ping route
to ortelius, now set by sob-idu-linkmon itself.
2015-07-23 15:49:17 +02:00
Holger Hans Peter Freyther 28bcb5f43d rtl8169-eeprom: Assume that automake is not used or broken
It looks like a classic src != build dir issue of the
utility breaking the build on Yocto-Master. Try to fix
that.

ERROR: Function failed: do_install (log file is located at /home/builder/jenkins/workspace/Yocto-Master/label/OE/build/tmp/work/armv5e-poky-linux-gnueabi/rtl8169-eeprom/v0.0.1+gitAUTOINC+e62e515ce3-r0/temp/log.do_install.2455)
ERROR: Logfile of failure stored in: /home/builder/jenkins/workspace/Yocto-Master/label/OE/build/tmp/work/armv5e-poky-linux-gnueabi/rtl8169-eeprom/v0.0.1+gitAUTOINC+e62e515ce3-r0/temp/log.do_install.2455
Log data follows:
| DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common', 'arm-32', 'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi', 'common']
| DEBUG: Executing shell function do_install
| install: cannot stat `/home/builder/jenkins/workspace/Yocto-Master/label/OE/build/tmp/work/armv5e-poky-linux-gnueabi/rtl8169-eeprom/v0.0.1+gitAUTOINC+e62e515ce3-r0/git/rtl8168-eeprom': No such file or directory
| WARNING: /home/builder/jenkins/workspace/Yocto-Master/label/OE/build/tmp/work/armv5e-poky-linux-gnueabi/rtl8169-eeprom/v0.0.1+gitAUTOINC+e62e515ce3-r0/temp/run.do_install.2455:1 exit 1 from
|   install -m 0755 /home/builder/jenkins/workspace/Yocto-
2015-07-19 22:07:40 +02:00
Holger Hans Peter Freyther 6597f246c5 autossh: Force B=S because this is using autoconf and not automake
autossh is not using automake and has a broken buildsystem. For it
to build in the source directory.
2015-07-19 21:26:47 +02:00
Henning Heinold 2276fd4a7b linux-backports: fix build on master
* the kernel build directory was splitted
  and renamed on master
2015-07-19 19:57:17 +02:00
Neels Hofmeyr 38579ae767 init-ifupdown: inmarsat should be dhcp.
From the obn-test config, I wrongly assumed that the inmarsat config should
be static on a vessel. Instead, we need to figure out a way to use dhcp with
linkmon.
2015-07-17 14:33:29 +02:00
Neels Hofmeyr 1ed5160b0d init-ifupdown: adjust comment about metrics 2015-07-17 14:33:29 +02:00
190 changed files with 9983 additions and 737 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 ''
@ -250,7 +254,9 @@ def get_licenses(d):
clean_licenses += x
if '|' in clean_licenses:
clean_licenses = clean_licenses.replace('|','')
return clean_licenses
# linux-firmware has many many licenses, leading to too long path
# so let's truncate it at 200...
return clean_licenses[0:200]
def move_tarball_deploy(d,tarball_list):
'''move tarball in location to ${DEPLOY_DIR}/sources'''
@ -356,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)
@ -377,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):
@ -454,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

@ -70,7 +70,8 @@ python split_kernel_module_packages () {
m = kerverrexp.match(kernelver)
if m:
kernelver_stripped = m.group(1)
staging_kernel_dir = d.getVar("STAGING_KERNEL_DIR", True)
kernel_build_dir = ['STAGING_KERNEL_BUILDDIR', 'STAGING_KERNEL_DIR'][d.getVar('DISTRO_VERSION', True)[0:3] == '1.5']
staging_kernel_dir = d.getVar(kernel_build_dir, True)
system_map_file = "%s/boot/System.map-%s" % (dvar, kernelver)
if not os.path.exists(system_map_file):
system_map_file = "%s/System.map-%s" % (staging_kernel_dir, kernelver)

View File

@ -0,0 +1,41 @@
# Default to systemd
DISTRO_FEATURES_append = " systemd "
VIRTUAL-RUNTIME_init_manager = "systemd"
# Maybe only for the sysmoBTS kind of hardware?
MACHINE_FEATURES_BACKFILL_CONSIDERED = "rtc"
# Do not put the sourcecode into the debug packages
PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
# Enable the prserver host
PRSERV_HOST = "localhost:0"
# Delete stuff
#INHERIT += "rm_work"
# Create patched source tarballs
SOURCE_ARCHIVE_PACKAGE_TYPE = "tar"
INHERIT += " sysmocom-archive-patched-source"
# We use opkg and not rpm/smart
PACKAGE_CLASSES ?= "package_ipk"
# When using uclibc/musl.. avoid pulling in gettext. We do
# not need i18n in our tools right now.
USE_NLS = "no"
# We don't need x11, nfc, selinux, pam in our builds
DISTRO_FEATURES_remove = "x11 nfc selinux pam"
# Get rid off XZ, xkbcommon, pam, selinux for systemd and many more now
PACKAGECONFIG_pn-systemd = "compat ldconfig binfmt sysusers randomseed myhostname firstboot utmp"
# 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

@ -10,6 +10,7 @@ BBFILES += "${BBFILES_SYSMOCOM_BSP}"
# selects specific distro or master when DISTRO_VERSION contains snapshot
BBFILES_SYSMOCOM_BSP = "${LAYERDIR}/yocto-${@dict([('1.5', 'dora')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'master')}/*.bbappend"
BBFILES_SYSMOCOM_BSP += "${LAYERDIR}/yocto-${@dict([('1.5', 'dora')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'master')}/*/*.bb"
BBFILE_COLLECTIONS += "sysmocom-bsp"
BBFILE_PATTERN_sysmocom-bsp := "^${LAYERDIR}/"

View File

@ -0,0 +1,41 @@
#@TYPE: Machine
#@NAME: gsmk-owhw
#@DESCRIPTION: Machine configuration for the GSMK OWHW
require conf/machine/include/ti33x.inc
IMAGE_FSTYPES += "ubifs"
SERIAL_CONSOLE = "115200 ttyO0"
# UBI information. Note that this is board and kernel specific. Changes
# in your kernel port may require changes in these variables. For more
# details about this board please see
# http://processors.wiki.ti.com/index.php/UBIFS_Support
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# From dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: logical eraseblock size: 126976 bytes
# from ubiattach stdout:
# UBI device number 0, total 1988 LEBs
MKUBIFS_ARGS = "-F -m 2048 -e 126976 -c 3836"
# do ubiattach /dev/ubi_ctrl -m 7 -O 2048
# from dmesg:
# UBI: smallest flash I/O unit: 2048
# UBI: physical eraseblock size: 131072 bytes (128 KiB)
# UBI: sub-page size: 512
# UBI: VID header offset: 2048 (aligned 2048)
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 512 -O 2048"
# Go back to prefer our kernel
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
KERNEL_IMAGETYPE = "uImage"
PREFERRED_PROVIDER_virtual/bootloader = "barebox-gsmk-owhw"
EXTRA_IMAGEDEPENDS += "barebox-gsmk-owhw"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "\
kernel usb2514 mtd-utils-ubifs bossa \
"

View File

@ -1,7 +1,7 @@
TARGET_ARCH = "arm"
PREFERRED_PROVIDER_virtual/kernel = "linux-sysmocom"
PREFERRED_VERSION_linux-sysmocom = "3.10.80+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

@ -5,10 +5,11 @@
TARGET_ARCH = "i586"
PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-trim"
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

@ -7,16 +7,21 @@ require conf/machine/include/genericx86-common.inc
PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-trim"
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"
KERNEL_IMAGETYPE = "bzImage"
IMAGE_FSTYPES = "tar.gz ext4"
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"

View File

@ -4,7 +4,8 @@
require conf/machine/include/ti33x.inc
IMAGE_FSTYPES += "ubi tar.gz"
IMAGE_FSTYPES += "ubifs"
DEFAULTTUNE = "cortexa8hf-neon"
SERIAL_CONSOLE = "115200 ttyO0"

View File

@ -11,7 +11,7 @@ SRC_URI[md5sum] = "f86684b96e99d22b2e9d35dc63b0aa29"
SRC_URI[sha256sum] = "9e8e10a59d7619176f4b986e256f776097a364d1be012781ea52e08d04679156"
inherit autotools
B = "${S}"
PACKAGES += "${PN}-examples"

View File

@ -8,22 +8,37 @@ DNSSEARCH = "${@d.getVar('DNS_SEARCH', True) or ''}"
ROOTFS_POSTPROCESS_COMMAND += "set_static_dns;"
set_static_dns() {
echo "#created by image-static-dns.inc" > ${IMAGE_ROOTFS}/etc/resolv.conf
printf "Replacing /etc/resolv.conf\n"
printf "#This default-file was generated by the image-static-dns hook\n \
in the post-image setup.\n\n" > ${IMAGE_ROOTFS}/etc/resolv.conf
if [ -n "${DNSSERVER}" ]; then
printf "setting DNS-server\n"
echo "nameserver ${DNSSERVER}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
printf "nameserver %s\n" "${DNSSERVER}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
fi
if [ -n "${DNSDOMAIN}" ]; then
printf "setting DNS-domain\n"
echo "domain ${DNSDOMAIN}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
printf "domain %s\n" "${DNSDOMAIN}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
fi
if [ -n "${DNSSEARCH}" ]; then
printf "seting DNS-search\n"
echo "search ${DNSSEARCH}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
printf "setting DNS-search\n"
printf "search %s\n" "${DNSSEARCH}" >> ${IMAGE_ROOTFS}/etc/resolv.conf
fi
if [ -w ${IMAGE_ROOTFS}/default/udhcpc ]; then
sed -i -e "s/^#.*\(STATIC_DNS\).*$/\1=yes/g" ${IMAGE_ROOTFS}/default/udhcpc
if [ -w ${IMAGE_ROOTFS}/etc/default/udhcpc ]; then
printf "Configure the installed udhcpc for static DNS\n"
STATIC_DNS_TEXT="# The static-dns configuration was generated by the image-static-dns hook."
sed -i -e "s/^#.*\(STATIC_DNS\).*$/${STATIC_DNS_TEXT}\n\1=\"yes\"/g" ${IMAGE_ROOTFS}/etc/default/udhcpc
else
printf "Configure the not installed udhcpc for static DNS\n"
mkdir -p ${IMAGE_ROOTFS}/etc/default
cat << EOF > ${IMAGE_ROOTFS}/etc/default/udhcpc
#This default-file was generated by the image-static-dns hook,
#in the post-image setup.
#
#When udhcpc is installed one setup needs to be chosen.
STATIC_DNS="yes"
EOF
fi
}

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

@ -0,0 +1,2 @@
require sysmocom-nitb-image.bb
require sysmocom-rauc-slot.inc

View File

@ -0,0 +1,26 @@
require recipes-apps/images/sysmocom-image.inc
require recipes-apps/images/image-passwd.inc
require recipes-apps/images/image-sshkey.inc
# have enough space for log files and db
IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE} \
task-owhw-image task-sysmocom-debug \
task-sysmocom-tools"
# vim: tabstop=8 shiftwidth=8 noexpandtab
# create what the rauc slots expect...
link_kernel() {
echo "Linking the current uImage to /kernel"
OLD_PWD=$PWD
cd ${IMAGE_ROOTFS}/
ln ./boot/uImage-* ./kernel || true
echo "Copying devicetree to /devicetree"
cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-gsmk-owhw.dtb" ./devicetree
cd $OLD_PWD
}
IMAGE_PREPROCESS_COMMAND += "link_kernel; "

View File

@ -0,0 +1,2 @@
require sysmocom-owhw-image.bb
require sysmocom-rauc-slot.inc

View File

@ -0,0 +1,5 @@
IMAGE_INSTALL_append = " packagegroup-rauc-slot "
# force it to a squashfs
IMAGE_FSTYPES = "squashfs"

View File

@ -1,20 +0,0 @@
etc/hostname
etc/ifplugd.sh
etc/network/interfaces
etc/openvpn
etc/opkg/sysmocom-config.conf
etc/osmocom/osmo-bsc-mgcp.cfg
etc/osmocom/osmo-bsc.cfg
etc/osmocom/osmo-bts.cfg
etc/osmocom/osmo-nitb.cfg
etc/osmocom/osmo-pcu.cfg
etc/osmocom/osmo-sgsn.cfg
etc/systemd/system/multi-user.target.wants/osmo-nitb.service
etc/systemd/system/multi-user.target.wants/osmo-bsc.service
etc/systemd/system/multi-user.target.wants/osmo-sgsn.service
etc/ggsn.conf
etc/default
var/lib/osmocom/hlr.sqlite3
etc/lcr
etc/udhcpd.conf
etc/sysmocom/backup.d

View File

@ -0,0 +1,7 @@
[Unit]
Description=/data
[Mount]
What=ubi0:data
Where=/data
Type=ubifs

View File

@ -7,7 +7,7 @@ FILES="etc/sysmocom/backup.d"
# Pick some extra files
if [ -e /etc/sysmocom/backup.d/ ]; then
for extra in `ls /etc/sysmocom/backup.d/*.backup`;
for extra in `ls /etc/sysmocom/backup.d/*.files`;
do
echo "Add extras from $extra."
FILES="$FILES `cat $extra`"
@ -16,6 +16,31 @@ fi
DATE=`date +%Y%m%d`
# Called for a file. Compare with the content in /ro-root
# if this file has been modified and only take it then. In
# case the file is not present it in /ro-root it will be
# added to the backup set
backup_file() {
cmp -s /$2 /ro-root/$2
if [ $? -ne 0 ]; then
echo "Adding $2"
tar -rf $1 --transform='s,^,content/,' -C / $2
fi
}
# Check if this is a file, otherwise descend
handle_file() {
if [ -f "/$2" -a -e "/$2" ]; then
backup_file $1 $2
fi
if [ -d "/$2" -a -e "/$2" ]; then
for file in /$2/*;
do
# Construct to have no leading /
handle_file $1 $2/`basename $file`
done
fi
}
do_backup_files() {
BACKUP_FILE="/data/sysmocom-backup_$DATE.tar"
@ -32,24 +57,23 @@ do_backup_files() {
# 2. Add all the files... we need
for file in $FILES;
do
if [ -e "/$file" ]; then
tar -rf $BACKUP_FILE --transform='s,^,content/,' -C / $file
fi
handle_file $BACKUP_FILE $file
done
# 3. Generate more information
NAME="/tmp/backup.$RANDOM"
# 4. Generate more information
NAME="/tmp/backup.$$"
mkdir $NAME
opkg list_installed > $NAME/installed_packages
/sbin/ifconfig | grep HWaddr | cut -d ' ' -f 11 > $NAME/mac_addr
# 4. Add the more information
# 5. Add the more information
tar -rf $BACKUP_FILE --transform='s,^,info/,' -C $NAME installed_packages mac_addr
# 5. Create stable link
ln -sf $BACKUP_FILE /data/sysmocom-backup.tar
# 6. Create stable link
cd /data/
ln -sf `basename $BACKUP_FILE` sysmocom-backup.tar
# 6.
# 76
echo "The backup was stored to $BACKUP_FILE"
}

View File

@ -19,8 +19,7 @@ do_restore_files() {
fi
echo "Going to extract files from the backup '$BACKUP_FILE'"
do_extract $BACKUP_FILE content/etc
do_extract $BACKUP_FILE content/var/lib/osmocom
do_extract $BACKUP_FILE content/
}
do_restore_files $1

View File

@ -6,7 +6,7 @@ After=data.mount
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/usr/sbin/sysmocom-restore /data/sysmocom-backup.tar
ExecStart=/usr/sbin/sysmocom-restore-data /data/sysmocom-backup.tar
[Install]
WantedBy=multi-user.target

View File

@ -1,14 +1,13 @@
DESCRIPTION = "sysmocom config backup and restore scripts"
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PR = "r12"
PR = "r13"
SRC_URI = " \
file://sysmocom-backup \
file://sysmocom-restore \
file://sysmocom-backup-data \
file://sysmocom-restore-data \
file://data.mount \
file://sysmocom-restore.service \
file://default.files \
"
RDEPENDS_${PN} = "tar"
RCONFLICTS_${PN} = "symocom-backup"
@ -17,21 +16,14 @@ inherit systemd
do_install() {
install -d ${D}${sbindir}
install -m 0755 ${WORKDIR}/sysmocom-backup ${D}${sbindir}/
install -m 0755 ${WORKDIR}/sysmocom-restore ${D}${sbindir}/
install -d ${D}${sysconfdir}/sysmocom/backup.d
install -m 0644 ${WORKDIR}/default.files ${D}${sysconfdir}/sysmocom/backup.d/
install -m 0755 ${WORKDIR}/sysmocom-backup-data ${D}${sbindir}/
install -m 0755 ${WORKDIR}/sysmocom-restore-data ${D}${sbindir}/
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/data.mount ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/sysmocom-restore.service ${D}${systemd_unitdir}/system/
}
PACKAGES =+ "${PN}-default"
FILES_${PN}-default = "${sysconfdir}/sysmocom/backup.d/"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "data.mount sysmocom-restore.service"
SYSTEMD_AUTO_ENABLE_${PN} = "enable"
SYSTEMD_AUTO_ENABLE_${PN} = "disable"

View File

@ -18,3 +18,6 @@ var/lib/osmocom/hlr.sqlite3
etc/lcr
etc/udhcpd.conf
etc/sysmocom/backup.d
etc/machine-id
etc/dropbear/dropbear_rsa_host_key
etc/uucp

View File

@ -7,7 +7,7 @@ FILES="etc/sysmocom/backup.d"
# Pick some extra files
if [ -e /etc/sysmocom/backup.d/ ]; then
for extra in `ls /etc/sysmocom/backup.d/*.backup`;
for extra in `ls /etc/sysmocom/backup.d/*.files`;
do
echo "Add extras from $extra."
FILES="$FILES `cat $extra`"

View File

@ -1,7 +1,7 @@
DESCRIPTION = "sysmocom config backup and restore scripts"
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PR = "r12"
PR = "r13"
SRC_URI = " \
file://sysmocom-backup \

View File

@ -0,0 +1,21 @@
DESCRIPTION = "Task for OWHW hardware"
LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
ALLOW_EMPTY_${PN} = "1"
PR = "r2"
RDEPENDS_${PN} = "usbutils openvpn gpsd gps-utils dropbear \
wget ntp ca-cacert-rootcert early-date i2c-tools \
wireless-tools iw crda gpsdate \
kernel-module-cfg80211 \
kernel-module-mac80211 \
kernel-module-rt2x00lib \
kernel-module-rt2x00usb \
kernel-module-rt2800lib \
kernel-module-rt2800usb \
linux-firmware-ralink \
procps iputils \
"
# vim: tabstop=8 shiftwidth=8 noexpandtab

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

@ -3,7 +3,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
ALLOW_EMPTY_${PN} = "1"
PR = "r19"
PR = "r21"
RDEPENDS_${PN} = "\
task-sysmocom-tools \
@ -15,4 +15,5 @@ RDEPENDS_${PN} = "\
pciutils nfacct logrotate dnsmasq ifupdown \
logrotate python-jsonrpclib python-enum iputils \
packagegroup-sysmobts-sob rtl8169-eeprom autossh \
perl libdbd-sqlite-perl libdbi-perl libjson-perl"
perl libdbd-sqlite-perl libdbi-perl libjson-perl \
netcat-openbsd perf lksctp-tools task-gprscore"

View File

@ -3,7 +3,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
ALLOW_EMPTY_${PN} = "1"
PR = "r9"
PR = "r10"
RDEPENDS_${PN} = "\
lmsensors-scripts \
@ -16,4 +16,6 @@ RDEPENDS_${PN} = "\
ca-cacert-rootcert \
sysmocom-backup \
sysmocom-backup-default \
sysmocom-systemd \
sysmocom-configure \
"

View File

@ -0,0 +1,329 @@
#
# Automatically generated file; DO NOT EDIT.
# Barebox/arm 2015.06.0 Configuration
#
CONFIG_ARM=y
#
# System Type
#
# CONFIG_ARCH_AT91 is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_CLPS711X is not set
# CONFIG_ARCH_DAVINCI is not set
# CONFIG_ARCH_DIGIC is not set
# CONFIG_ARCH_EP93XX is not set
# CONFIG_ARCH_HIGHBANK is not set
# CONFIG_ARCH_IMX is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXS is not set
# CONFIG_ARCH_NETX is not set
# CONFIG_ARCH_NOMADIK is not set
CONFIG_ARCH_OMAP=y
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_ROCKCHIP is not set
# CONFIG_ARCH_SOCFPGA is not set
# CONFIG_ARCH_S3C24xx is not set
# CONFIG_ARCH_S5PCxx is not set
# CONFIG_ARCH_S3C64xx is not set
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_VEXPRESS is not set
# CONFIG_ARCH_TEGRA is not set
# CONFIG_ARCH_UEMD is not set
# CONFIG_ARCH_ZYNQ is not set
#
# Processor Type
#
CONFIG_CPU_32=y
CONFIG_CPU_V7=y
CONFIG_CPU_32v7=y
#
# processor features
#
# CONFIG_BOOT_ENDIANNESS_SWITCH is not set
CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xffffffff
#
# OMAP Features
#
CONFIG_ARCH_AM33XX=y
CONFIG_OMAP_CLOCK_SOURCE_DMTIMER0=y
CONFIG_OMAP_GPMC=y
CONFIG_OMAP_BUILD_IFT=y
# CONFIG_OMAP_BUILD_SPI is not set
# CONFIG_OMAP_SERIALBOOT is not set
CONFIG_OMAP_MULTI_BOARDS=y
# CONFIG_MACH_AFI_GF is not set
# CONFIG_MACH_BEAGLEBONE is not set
CONFIG_MACH_PHYTEC_SOM_AM335X=y
CONFIG_ARM_ASM_UNIFIED=y
CONFIG_AEABI=y
CONFIG_THUMB2_BAREBOX=y
#
# ARM specific settings
#
# CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS is not set
CONFIG_ARM_EXCEPTIONS=y
# CONFIG_ARM_UNWIND is not set
CONFIG_DEFCONFIG_LIST="$ARCH_DEFCONFIG"
CONFIG_HAS_KALLSYMS=y
CONFIG_HAS_MODULES=y
CONFIG_HAS_CACHE=y
CONFIG_HAS_DMA=y
CONFIG_GENERIC_GPIO=y
CONFIG_BLOCK=y
CONFIG_FILETYPE=y
#
# General Settings
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_BANNER=y
# CONFIG_MEMINFO is not set
# CONFIG_ENVIRONMENT_VARIABLES is not set
#
# memory layout
#
CONFIG_HAVE_PBL_IMAGE=y
CONFIG_HAVE_PBL_MULTI_IMAGES=y
CONFIG_HAVE_IMAGE_COMPRESSION=y
CONFIG_PBL_IMAGE=y
CONFIG_PBL_MULTI_IMAGES=y
CONFIG_PBL_RELOCATABLE=y
CONFIG_IMAGE_COMPRESSION=y
# CONFIG_IMAGE_COMPRESSION_LZ4 is not set
CONFIG_IMAGE_COMPRESSION_LZO=y
# CONFIG_IMAGE_COMPRESSION_GZIP is not set
# CONFIG_IMAGE_COMPRESSION_XZKERN is not set
# CONFIG_IMAGE_COMPRESSION_NONE is not set
CONFIG_MMU=y
CONFIG_MMU_EARLY=y
CONFIG_HAVE_CONFIGURABLE_TEXT_BASE=y
CONFIG_TEXT_BASE=0x0
CONFIG_BAREBOX_MAX_PBL_SIZE=0xffffffff
CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0xffffffff
CONFIG_STACK_SIZE=0x8000
CONFIG_MALLOC_SIZE=0x0
# CONFIG_EXPERIMENTAL is not set
# CONFIG_MALLOC_DLMALLOC is not set
CONFIG_MALLOC_TLSF=y
# CONFIG_MALLOC_DUMMY is not set
# CONFIG_KALLSYMS is not set
CONFIG_RELOCATABLE=y
# CONFIG_PANIC_HANG is not set
CONFIG_PROMPT="MLO>"
CONFIG_BAUDRATE=115200
CONFIG_SIMPLE_READLINE=y
CONFIG_CBSIZE=1024
# CONFIG_SHELL_HUSH is not set
# CONFIG_SHELL_SIMPLE is not set
CONFIG_SHELL_NONE=y
# CONFIG_GLOB is not set
# CONFIG_PASSWORD is not set
# CONFIG_ERRNO_MESSAGES is not set
# CONFIG_TIMESTAMP is not set
CONFIG_IMD=y
# CONFIG_IMD_TARGET is not set
# CONFIG_KERNEL_INSTALL_TARGET is not set
CONFIG_CONSOLE_FULL=y
# CONFIG_CONSOLE_SIMPLE is not set
# CONFIG_CONSOLE_NONE is not set
# CONFIG_CONSOLE_ACTIVATE_FIRST is not set
# CONFIG_CONSOLE_ACTIVATE_ALL is not set
CONFIG_CONSOLE_ACTIVATE_NONE=y
CONFIG_PARTITION=y
CONFIG_PARTITION_DISK=y
CONFIG_PARTITION_DISK_DOS=y
# CONFIG_PARTITION_DISK_EFI is not set
# CONFIG_DEFAULT_ENVIRONMENT is not set
CONFIG_DEFAULT_COMPRESSION_NONE=y
CONFIG_HAVE_DEFAULT_ENVIRONMENT_NEW=y
# CONFIG_BAREBOXENV_TARGET is not set
# CONFIG_BAREBOXCRC32_TARGET is not set
# CONFIG_POLLER is not set
#
# Debugging
#
CONFIG_COMPILE_LOGLEVEL=6
CONFIG_DEFAULT_LOGLEVEL=7
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_LL is not set
CONFIG_DEBUG_OMAP_UART_PORT=1
# CONFIG_DEBUG_INITCALLS is not set
CONFIG_HAS_DEBUG_LL=y
# CONFIG_HAS_POWEROFF is not set
# CONFIG_NET is not set
#
# Drivers
#
CONFIG_OFTREE=y
CONFIG_OFTREE_MEM_GENERIC=y
CONFIG_DTC=y
CONFIG_OFDEVICE=y
CONFIG_OF_GPIO=y
#
# serial drivers
#
# CONFIG_DRIVER_SERIAL_ARM_DCC is not set
CONFIG_DRIVER_SERIAL_NS16550=y
CONFIG_DRIVER_SERIAL_NS16550_OMAP_EXTENSIONS=y
# CONFIG_DRIVER_SERIAL_CADENCE is not set
#
# SPI drivers
#
# CONFIG_SPI is not set
# CONFIG_I2C is not set
CONFIG_MTD=y
# CONFIG_MTD_WRITE is not set
# CONFIG_MTD_OOB_DEVICE is not set
# CONFIG_MTD_RAW_DEVICE is not set
#
# Self contained MTD devices
#
# CONFIG_MTD_DOCG3 is not set
# CONFIG_MTD_MTDRAM is not set
# CONFIG_DRIVER_CFI is not set
CONFIG_NAND=y
# CONFIG_NAND_ECC_SOFT is not set
# CONFIG_NAND_ECC_BCH is not set
CONFIG_NAND_ECC_HW=y
# CONFIG_NAND_ECC_HW_OOB_FIRST is not set
# CONFIG_NAND_ECC_HW_SYNDROME is not set
# CONFIG_NAND_ECC_HW_NONE is not set
# CONFIG_NAND_INFO is not set
# CONFIG_NAND_BBT is not set
CONFIG_NAND_OMAP_GPMC=y
# CONFIG_MTD_NAND_ECC_SMC is not set
CONFIG_MTD_NAND_IDS=y
# CONFIG_MTD_UBI is not set
CONFIG_DISK=y
# CONFIG_DISK_WRITE is not set
#
# drive types
#
# CONFIG_DISK_ATA is not set
# CONFIG_DISK_AHCI is not set
#
# interface types
#
# CONFIG_DISK_INTF_PLATFORM_IDE is not set
# CONFIG_USB_HOST is not set
# CONFIG_USB_GADGET is not set
# CONFIG_USB_MUSB is not set
# CONFIG_VIDEO is not set
CONFIG_MCI=y
#
# --- Feature list ---
#
CONFIG_MCI_STARTUP=y
# CONFIG_MCI_WRITE is not set
# CONFIG_MCI_MMC_BOOT_PARTITIONS is not set
#
# --- MCI host drivers ---
#
# CONFIG_MCI_DW is not set
CONFIG_MCI_OMAP_HSMMC=y
CONFIG_CLOCKSOURCE_DUMMY_RATE=1000
#
# MFD
#
# CONFIG_MFD_SYSCON is not set
#
# Misc devices
#
# CONFIG_JTAG is not set
# CONFIG_SRAM is not set
# CONFIG_BOOTSTATE_DRV is not set
# CONFIG_LED is not set
#
# EEPROM support
#
#
# Input device support
#
# CONFIG_KEYBOARD_GPIO is not set
# CONFIG_WATCHDOG is not set
# CONFIG_PWM is not set
#
# DMA support
#
CONFIG_GPIOLIB=y
#
# GPIO
#
# CONFIG_GPIO_GENERIC_PLATFORM is not set
# CONFIG_GPIO_IMX is not set
# CONFIG_GPIO_MXS is not set
CONFIG_GPIO_OMAP=y
# CONFIG_GPIO_DESIGNWARE is not set
# CONFIG_W1 is not set
CONFIG_PINCTRL=y
CONFIG_PINCTRL_SINGLE=y
#
# Bus devices
#
CONFIG_BUS_OMAP_GPMC=y
# CONFIG_REGULATOR is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RTC_CLASS is not set
#
# Firmware Drivers
#
#
# PHY Subsystem
#
# CONFIG_GENERIC_PHY is not set
#
# Filesystem support
#
CONFIG_FS=y
# CONFIG_FS_CRAMFS is not set
# CONFIG_FS_EXT4 is not set
# CONFIG_FS_RAMFS is not set
# CONFIG_FS_DEVFS is not set
CONFIG_FS_FAT=y
# CONFIG_FS_FAT_WRITE is not set
CONFIG_FS_FAT_LFN=y
# CONFIG_FS_BPKFS is not set
# CONFIG_FS_UIMAGEFS is not set
#
# Library routines
#
# CONFIG_ZLIB is not set
# CONFIG_BZLIB is not set
# CONFIG_LZ4_DECOMPRESS is not set
# CONFIG_XZ_DECOMPRESS is not set
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
# CONFIG_PROCESS_ESCAPE_SEQUENCE is not set
# CONFIG_LZO_DECOMPRESS is not set
#
# Library gui routines
#
# CONFIG_BOOTSTRAP is not set
# CONFIG_DIGEST is not set

View File

@ -0,0 +1,21 @@
require barebox.inc
SRCREV = "ce8849b03a40718fdaa9d7fc30312eeeb0fafcac"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \
"
PV = "v2015.06+git${SRCPV}"
S = "${WORKDIR}/git"
BAREBOX_IMAGE ?= "barebox-${MACHINE}-mlo-${PKGV}-${PKGR}.img"
BAREBOX_SYMLINK ?= "barebox-${MACHINE}-mlo.img"
do_deploy () {
install -d ${DEPLOYDIR}
install ${S}/images/barebox-am33xx-gsmk-owhw-mlo.img ${DEPLOYDIR}/${BAREBOX_IMAGE}
cd ${DEPLOYDIR}
rm -f ${BAREBOX_SYMLINK}
ln -sf ${BAREBOX_IMAGE} ${BAREBOX_SYMLINK}
}

View File

@ -0,0 +1,29 @@
From 5661d2be63f55e5cbaa72e1da1dae32e7a5c3071 Mon Sep 17 00:00:00 2001
From: Harald Welte <laforge@gnumonks.org>
Date: Mon, 22 Feb 2016 23:42:44 +0100
Subject: [PATCH] OWHW HACK: hard-code the bootstate backend-node
this is required as the spi controller used in barebox is spi-gpio,
while on Linux we use the hardware spi controller of the am335x,
resulting in different devicetree paths.
---
common/state.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/common/state.c b/common/state.c
index 9c0b218..1571b53 100644
--- a/common/state.c
+++ b/common/state.c
@@ -758,7 +758,8 @@ static int of_state_fixup(struct device_node *root, void *ctx)
}
/* backend phandle */
- backend_node = of_find_node_by_path_from(root, state->backend->of_path);
+ //backend_node = of_find_node_by_path_from(root, state->backend->of_path);
+ backend_node = of_find_node_by_path_from(root, "/ocp/spi@481a0000/m95m02@0");
if (!backend_node) {
ret = -ENODEV;
goto out;
--
2.7.0

View File

@ -0,0 +1,615 @@
#
# Automatically generated file; DO NOT EDIT.
# Barebox/arm 2015.06.0 Configuration
#
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
#
# System Type
#
# CONFIG_ARCH_AT91 is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_CLPS711X is not set
# CONFIG_ARCH_DAVINCI is not set
# CONFIG_ARCH_DIGIC is not set
# CONFIG_ARCH_EP93XX is not set
# CONFIG_ARCH_HIGHBANK is not set
# CONFIG_ARCH_IMX is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXS is not set
# CONFIG_ARCH_NETX is not set
# CONFIG_ARCH_NOMADIK is not set
CONFIG_ARCH_OMAP=y
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_ROCKCHIP is not set
# CONFIG_ARCH_SOCFPGA is not set
# CONFIG_ARCH_S3C24xx is not set
# CONFIG_ARCH_S5PCxx is not set
# CONFIG_ARCH_S3C64xx is not set
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_VEXPRESS is not set
# CONFIG_ARCH_TEGRA is not set
# CONFIG_ARCH_UEMD is not set
# CONFIG_ARCH_ZYNQ is not set
#
# Processor Type
#
CONFIG_CPU_32=y
CONFIG_CPU_V7=y
CONFIG_CPU_32v7=y
#
# processor features
#
# CONFIG_BOOT_ENDIANNESS_SWITCH is not set
CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xffffffff
#
# OMAP Features
#
CONFIG_ARCH_AM33XX=y
CONFIG_OMAP_CLOCK_SOURCE_DMTIMER0=y
CONFIG_OMAP_GPMC=y
# CONFIG_OMAP_BUILD_IFT is not set
# CONFIG_OMAP_BUILD_SPI is not set
# CONFIG_BAREBOX_UPDATE_AM33XX_SPI_NOR_MLO is not set
CONFIG_BAREBOX_UPDATE_AM33XX_NAND=y
CONFIG_OMAP_MULTI_BOARDS=y
# CONFIG_MACH_AFI_GF is not set
# CONFIG_MACH_BEAGLEBONE is not set
CONFIG_MACH_PHYTEC_SOM_AM335X=y
CONFIG_ARM_ASM_UNIFIED=y
CONFIG_AEABI=y
CONFIG_THUMB2_BAREBOX=y
CONFIG_ARM_BOARD_APPEND_ATAG=y
#
# ARM specific settings
#
CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y
CONFIG_ARM_EXCEPTIONS=y
CONFIG_ARM_UNWIND=y
CONFIG_DEFCONFIG_LIST="$ARCH_DEFCONFIG"
CONFIG_HAS_KALLSYMS=y
CONFIG_HAS_MODULES=y
CONFIG_ENV_HANDLING=y
CONFIG_HAS_CACHE=y
CONFIG_HAS_DMA=y
CONFIG_GENERIC_GPIO=y
CONFIG_BOOTM=y
CONFIG_FILETYPE=y
CONFIG_BINFMT=y
CONFIG_UIMAGE=y
CONFIG_LOGBUF=y
CONFIG_GLOBALVAR=y
CONFIG_STDDEV=y
CONFIG_BAREBOX_UPDATE=y
CONFIG_MENUTREE=y
CONFIG_FILE_LIST=y
#
# General Settings
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_BANNER=y
CONFIG_MEMINFO=y
CONFIG_ENVIRONMENT_VARIABLES=y
#
# memory layout
#
CONFIG_HAVE_PBL_IMAGE=y
CONFIG_HAVE_PBL_MULTI_IMAGES=y
CONFIG_HAVE_IMAGE_COMPRESSION=y
CONFIG_PBL_IMAGE=y
CONFIG_PBL_MULTI_IMAGES=y
CONFIG_PBL_RELOCATABLE=y
CONFIG_IMAGE_COMPRESSION=y
# CONFIG_IMAGE_COMPRESSION_LZ4 is not set
CONFIG_IMAGE_COMPRESSION_LZO=y
# CONFIG_IMAGE_COMPRESSION_GZIP is not set
# CONFIG_IMAGE_COMPRESSION_XZKERN is not set
# CONFIG_IMAGE_COMPRESSION_NONE is not set
CONFIG_MMU=y
CONFIG_MMU_EARLY=y
CONFIG_HAVE_CONFIGURABLE_TEXT_BASE=y
CONFIG_TEXT_BASE=0x0
CONFIG_BAREBOX_MAX_PBL_SIZE=0xffffffff
CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0xffffffff
CONFIG_STACK_SIZE=0x8000
CONFIG_MALLOC_SIZE=0x0
# CONFIG_EXPERIMENTAL is not set
# CONFIG_MALLOC_DLMALLOC is not set
CONFIG_MALLOC_TLSF=y
CONFIG_KALLSYMS=y
CONFIG_RELOCATABLE=y
# CONFIG_PANIC_HANG is not set
CONFIG_PROMPT="barebox> "
CONFIG_BAUDRATE=115200
CONFIG_CBSIZE=1024
CONFIG_SHELL_HUSH=y
# CONFIG_SHELL_SIMPLE is not set
# CONFIG_SHELL_NONE is not set
CONFIG_GLOB=y
CONFIG_GLOB_SORT=y
CONFIG_PROMPT_HUSH_PS2="> "
CONFIG_HUSH_FANCY_PROMPT=y
CONFIG_CMDLINE_EDITING=y
CONFIG_AUTO_COMPLETE=y
CONFIG_MENU=y
CONFIG_PASSWORD=y
CONFIG_PASSWORD_DEFAULT=""
# CONFIG_PASSWD_SUM_MD5 is not set
CONFIG_PASSWD_SUM_SHA1=y
# CONFIG_PASSWD_SUM_SHA256 is not set
# CONFIG_PASSWD_SUM_SHA512 is not set
# CONFIG_PASSWD_CRYPTO_PBKDF2 is not set
CONFIG_DYNAMIC_CRC_TABLE=y
CONFIG_ERRNO_MESSAGES=y
# CONFIG_TIMESTAMP is not set
CONFIG_IMD=y
CONFIG_IMD_TARGET=y
# CONFIG_KERNEL_INSTALL_TARGET is not set
CONFIG_CONSOLE_FULL=y
# CONFIG_CONSOLE_SIMPLE is not set
# CONFIG_CONSOLE_NONE is not set
# CONFIG_CONSOLE_ACTIVATE_FIRST is not set
CONFIG_CONSOLE_ACTIVATE_ALL=y
# CONFIG_CONSOLE_ACTIVATE_NONE is not set
# CONFIG_PARTITION is not set
CONFIG_DEFAULT_ENVIRONMENT=y
# CONFIG_DEFAULT_COMPRESSION_GZIP is not set
# CONFIG_DEFAULT_COMPRESSION_LZO is not set
CONFIG_DEFAULT_COMPRESSION_NONE=y
CONFIG_HAVE_DEFAULT_ENVIRONMENT_NEW=y
CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y
CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW_MENU=y
CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW_DFU=y
CONFIG_DEFAULT_ENVIRONMENT_PATH=""
CONFIG_BAREBOXENV_TARGET=y
# CONFIG_BAREBOXCRC32_TARGET is not set
CONFIG_POLLER=y
CONFIG_STATE=y
CONFIG_BOOTSTATE=y
CONFIG_RESET_SOURCE=y
#
# Debugging
#
CONFIG_COMPILE_LOGLEVEL=6
CONFIG_DEFAULT_LOGLEVEL=7
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_LL is not set
CONFIG_DEBUG_OMAP_UART_PORT=1
# CONFIG_DEBUG_INITCALLS is not set
CONFIG_HAS_DEBUG_LL=y
CONFIG_COMMAND_SUPPORT=y
# CONFIG_HAS_POWEROFF is not set
CONFIG_COMPILE_HASH=y
CONFIG_COMPILE_MEMORY=y
#
# Commands
#
#
# Information
#
CONFIG_CMD_ARM_CPUINFO=y
CONFIG_CMD_DEVINFO=y
CONFIG_CMD_DMESG=y
CONFIG_CMD_DRVINFO=y
CONFIG_CMD_HELP=y
CONFIG_LONGHELP=y
CONFIG_CMD_IOMEM=y
CONFIG_CMD_IMD=y
CONFIG_CMD_MEMINFO=y
CONFIG_CMD_ARM_MMUINFO=y
CONFIG_CMD_VERSION=y
#
# Boot
#
CONFIG_FLEXIBLE_BOOTARGS=y
CONFIG_CMD_BOOT=y
CONFIG_CMD_BOOTM=y
CONFIG_CMD_BOOTM_SHOW_TYPE=y
CONFIG_CMD_BOOTM_VERBOSE=y
CONFIG_CMD_BOOTM_INITRD=y
CONFIG_CMD_BOOTM_OFTREE=y
# CONFIG_CMD_BOOTM_OFTREE_UIMAGE is not set
# CONFIG_CMD_BOOTM_AIMAGE is not set
# CONFIG_CMD_BOOTU is not set
# CONFIG_CMD_BOOTZ is not set
CONFIG_CMD_GO=y
CONFIG_CMD_LOADB=y
# CONFIG_CMD_LOADS is not set
# CONFIG_CMD_LOADY is not set
CONFIG_CMD_RESET=y
# CONFIG_CMD_UIMAGE is not set
#
# Partition
#
CONFIG_CMD_PARTITION=y
CONFIG_CMD_AUTOMOUNT=y
CONFIG_CMD_MOUNT=y
CONFIG_CMD_UBI=y
CONFIG_CMD_UBIFORMAT=y
CONFIG_CMD_UMOUNT=y
#
# Environment
#
CONFIG_CMD_NV=y
CONFIG_CMD_EXPORT=y
CONFIG_CMD_DEFAULTENV=y
CONFIG_CMD_GLOBAL=y
CONFIG_CMD_LOADENV=y
CONFIG_CMD_PRINTENV=y
CONFIG_CMD_MAGICVAR=y
CONFIG_CMD_MAGICVAR_HELP=y
CONFIG_CMD_SAVEENV=y
#
# File
#
CONFIG_CMD_BASENAME=y
CONFIG_CMD_CAT=y
CONFIG_CMD_CD=y
CONFIG_CMD_CP=y
# CONFIG_CMD_CMP is not set
CONFIG_CMD_DIGEST=y
CONFIG_CMD_DIRNAME=y
CONFIG_CMD_FILETYPE=y
CONFIG_CMD_LN=y
CONFIG_CMD_LS=y
CONFIG_CMD_MD5SUM=y
CONFIG_CMD_MKDIR=y
CONFIG_CMD_PWD=y
CONFIG_CMD_READLINK=y
CONFIG_CMD_RM=y
CONFIG_CMD_RMDIR=y
# CONFIG_CMD_SHA1SUM is not set
# CONFIG_CMD_SHA224SUM is not set
# CONFIG_CMD_SHA256SUM is not set
# CONFIG_CMD_SHA384SUM is not set
# CONFIG_CMD_SHA512SUM is not set
CONFIG_CMD_UNCOMPRESS=y
#
# Shell scripting
#
CONFIG_CMD_FALSE=y
CONFIG_CMD_GETOPT=y
CONFIG_CMD_LET=y
CONFIG_CMD_MSLEEP=y
CONFIG_CMD_READF=y
CONFIG_CMD_SLEEP=y
CONFIG_CMD_TEST=y
CONFIG_CMD_TRUE=y
#
# Network
#
CONFIG_CMD_DHCP=y
# CONFIG_CMD_HOST is not set
CONFIG_NET_CMD_IFUP=y
CONFIG_CMD_MIITOOL=y
CONFIG_CMD_PING=y
CONFIG_CMD_TFTP=y
#
# Console and Framebuffer interaction
#
CONFIG_CMD_CLEAR=y
CONFIG_CMD_ECHO=y
CONFIG_CMD_ECHO_E=y
CONFIG_CMD_EDIT=y
CONFIG_CMD_LOGIN=y
CONFIG_CMD_MENU=y
# CONFIG_CMD_MENU_MANAGEMENT is not set
CONFIG_CMD_MENUTREE=y
CONFIG_CMD_PASSWD=y
# CONFIG_PASSWD_MODE_HIDE is not set
CONFIG_PASSWD_MODE_STAR=y
# CONFIG_PASSWD_MODE_CLEAR is not set
# CONFIG_CMD_SPLASH is not set
CONFIG_CMD_READLINE=y
CONFIG_CMD_TIMEOUT=y
#
# Memory
#
CONFIG_CMD_CRC=y
CONFIG_CMD_CRC_CMP=y
CONFIG_CMD_MD=y
CONFIG_CMD_MEMCMP=y
CONFIG_CMD_MEMCPY=y
CONFIG_CMD_MEMSET=y
CONFIG_CMD_MEMTEST=y
CONFIG_CMD_MM=y
CONFIG_CMD_MW=y
#
# Hardware manipulation
#
CONFIG_CMD_DETECT=y
CONFIG_CMD_FLASH=y
CONFIG_CMD_GPIO=y
CONFIG_CMD_I2C=y
CONFIG_CMD_LED=y
CONFIG_CMD_NAND=y
CONFIG_CMD_SPI=y
CONFIG_CMD_LED_TRIGGER=y
CONFIG_CMD_USBGADGET=y
#
# Miscellaneous
#
# CONFIG_CMD_2048 is not set
CONFIG_CMD_BAREBOX_UPDATE=y
# CONFIG_CMD_FIRMWARELOAD is not set
CONFIG_CMD_OF_DUMP=y
CONFIG_CMD_OF_NODE=y
CONFIG_CMD_OF_PROPERTY=y
CONFIG_CMD_OF_DISPLAY_TIMINGS=y
CONFIG_CMD_OFTREE=y
CONFIG_CMD_TIME=y
CONFIG_CMD_STATE=y
CONFIG_CMD_BOOTCHOOSER=y
CONFIG_NET=y
CONFIG_NET_NFS=y
CONFIG_NET_NETCONSOLE=y
CONFIG_NET_RESOLV=y
CONFIG_NET_IFUP=y
#
# Drivers
#
CONFIG_OFTREE=y
CONFIG_OFTREE_MEM_GENERIC=y
CONFIG_DTC=y
CONFIG_OFDEVICE=y
CONFIG_OF_NET=y
CONFIG_OF_GPIO=y
CONFIG_OF_BAREBOX_DRIVERS=y
#
# serial drivers
#
# CONFIG_DRIVER_SERIAL_ARM_DCC is not set
CONFIG_DRIVER_SERIAL_NS16550=y
CONFIG_DRIVER_SERIAL_NS16550_OMAP_EXTENSIONS=y
# CONFIG_DRIVER_SERIAL_CADENCE is not set
CONFIG_PHYLIB=y
#
# Network drivers
#
# CONFIG_DRIVER_NET_ARC_EMAC is not set
# CONFIG_DRIVER_NET_CALXEDA_XGMAC is not set
CONFIG_DRIVER_NET_CPSW=y
# CONFIG_DRIVER_NET_DESIGNWARE is not set
# CONFIG_DRIVER_NET_ENC28J60 is not set
# CONFIG_DRIVER_NET_KS8851_MLL is not set
# CONFIG_DRIVER_NET_MICREL is not set
# CONFIG_DRIVER_NET_SMC911X is not set
# CONFIG_DRIVER_NET_SMC91111 is not set
#
# phylib
#
#
# MII PHY device drivers
#
# CONFIG_AT803X_PHY is not set
# CONFIG_LXT_PHY is not set
# CONFIG_MARVELL_PHY is not set
CONFIG_MICREL_PHY=y
# CONFIG_NATIONAL_PHY is not set
# CONFIG_SMSC_PHY is not set
#
# MII bus device drivers
#
#
# SPI drivers
#
CONFIG_SPI=y
CONFIG_DRIVER_SPI_GPIO=y
CONFIG_DRIVER_SPI_OMAP3=y
CONFIG_I2C=y
CONFIG_I2C_ALGOBIT=y
#
# I2C Hardware Bus support
#
CONFIG_I2C_GPIO=y
CONFIG_I2C_OMAP=y
CONFIG_MTD=y
CONFIG_MTD_WRITE=y
CONFIG_MTD_OOB_DEVICE=y
# CONFIG_MTD_RAW_DEVICE is not set
#
# Self contained MTD devices
#
# CONFIG_MTD_DATAFLASH is not set
# CONFIG_MTD_M25P80 is not set
# CONFIG_MTD_DOCG3 is not set
# CONFIG_MTD_MTDRAM is not set
# CONFIG_DRIVER_CFI is not set
CONFIG_NAND=y
CONFIG_NAND_ECC_SOFT=y
# CONFIG_NAND_ECC_BCH is not set
CONFIG_NAND_ECC_HW=y
# CONFIG_NAND_ECC_HW_OOB_FIRST is not set
CONFIG_NAND_ECC_HW_SYNDROME=y
CONFIG_NAND_ECC_HW_NONE=y
CONFIG_NAND_INFO=y
CONFIG_NAND_READ_OOB=y
CONFIG_NAND_BBT=y
# CONFIG_NAND_ALLOW_ERASE_BAD is not set
CONFIG_NAND_OMAP_GPMC=y
# CONFIG_MTD_NAND_ECC_SMC is not set
CONFIG_MTD_NAND_IDS=y
CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20
# CONFIG_MTD_UBI_FASTMAP is not set
# CONFIG_DISK is not set
CONFIG_USB=y
# CONFIG_USB_HOST is not set
CONFIG_USB_GADGET=y
#
# USB Gadget drivers
#
CONFIG_USB_GADGET_DFU=y
CONFIG_USB_GADGET_SERIAL=y
# CONFIG_USB_GADGET_FASTBOOT is not set
CONFIG_USB_MUSB=y
CONFIG_USB_MUSB_DSPS=y
CONFIG_USB_MUSB_AM335X=y
CONFIG_USB_MUSB_GADGET=y
# CONFIG_VIDEO is not set
# CONFIG_MCI is not set
CONFIG_CLOCKSOURCE_DUMMY_RATE=1000
#
# MFD
#
# CONFIG_MFD_ACT8846 is not set
# CONFIG_MFD_LP3972 is not set
# CONFIG_MFD_MC13XXX is not set
# CONFIG_MFD_MC34704 is not set
# CONFIG_MFD_MC9SDZ60 is not set
# CONFIG_MFD_STMPE is not set
# CONFIG_MFD_SYSCON is not set
# CONFIG_MFD_TWL4030 is not set
# CONFIG_MFD_TWL6030 is not set
#
# Misc devices
#
# CONFIG_JTAG is not set
# CONFIG_SRAM is not set
CONFIG_STATE_DRV=y
CONFIG_BOOTSTATE_DRV=y
CONFIG_LED=y
CONFIG_LED_GPIO=y
CONFIG_LED_GPIO_OF=y
# CONFIG_LED_GPIO_RGB is not set
# CONFIG_LED_GPIO_BICOLOR is not set
CONFIG_LED_TRIGGERS=y
#
# EEPROM support
#
CONFIG_EEPROM_AT25=y
# CONFIG_EEPROM_AT24 is not set
#
# Input device support
#
CONFIG_KEYBOARD_GPIO=y
# CONFIG_KEYBOARD_QT1070 is not set
# CONFIG_WATCHDOG is not set
# CONFIG_PWM is not set
#
# DMA support
#
CONFIG_GPIOLIB=y
#
# GPIO
#
CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_74164 is not set
CONFIG_GPIO_GENERIC_PLATFORM=y
# CONFIG_GPIO_IMX is not set
# CONFIG_GPIO_MXS is not set
CONFIG_GPIO_OMAP=y
# CONFIG_GPIO_PCA953X is not set
# CONFIG_GPIO_DESIGNWARE is not set
# CONFIG_W1 is not set
CONFIG_PINCTRL=y
CONFIG_PINCTRL_SINGLE=y
#
# Bus devices
#
CONFIG_BUS_OMAP_GPMC=y
# CONFIG_REGULATOR is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RTC_CLASS is not set
#
# Firmware Drivers
#
# CONFIG_FIRMWARE_ALTERA_SERIAL is not set
#
# PHY Subsystem
#
# CONFIG_GENERIC_PHY is not set
#
# Filesystem support
#
CONFIG_FS=y
CONFIG_FS_AUTOMOUNT=y
# CONFIG_FS_CRAMFS is not set
# CONFIG_FS_EXT4 is not set
CONFIG_FS_RAMFS=y
CONFIG_FS_DEVFS=y
CONFIG_FS_TFTP=y
CONFIG_FS_NFS=y
# CONFIG_FS_FAT is not set
CONFIG_FS_UBIFS=y
CONFIG_FS_UBIFS_COMPRESSION_LZO=y
CONFIG_FS_UBIFS_COMPRESSION_ZLIB=y
# CONFIG_FS_BPKFS is not set
# CONFIG_FS_UIMAGEFS is not set
#
# Library routines
#
CONFIG_PARAMETER=y
CONFIG_UNCOMPRESS=y
CONFIG_ZLIB=y
# CONFIG_BZLIB is not set
# CONFIG_LZ4_DECOMPRESS is not set
# CONFIG_XZ_DECOMPRESS is not set
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
CONFIG_PROCESS_ESCAPE_SEQUENCE=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_QSORT=y
CONFIG_LIBSCAN=y
CONFIG_LIBUBIGEN=y
CONFIG_LIBMTD=y
#
# Library gui routines
#
CONFIG_CRC32=y
CONFIG_CRC16=y
CONFIG_DIGEST=y
CONFIG_MD5=y
CONFIG_SHA1=y
# CONFIG_DIGEST_MD5_GENERIC is not set
CONFIG_DIGEST_SHA1_GENERIC=y
# CONFIG_DIGEST_SHA224_GENERIC is not set
# CONFIG_DIGEST_SHA256_GENERIC is not set
# CONFIG_DIGEST_SHA384_GENERIC is not set
# CONFIG_DIGEST_SHA512_GENERIC is not set
# CONFIG_DIGEST_HMAC_GENERIC is not set
# CONFIG_DIGEST_SHA1_ARM is not set
# CONFIG_DIGEST_SHA256_ARM is not set

View File

@ -0,0 +1,32 @@
require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "ec82959f054af3e4a27267290905cfd895f75331"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://0001-OWHW-HACK-hard-code-the-bootstate-backend-node.patch \
file://defconfig \
"
PV = "v2015.06+git${SRCPV}"
S = "${WORKDIR}/git"
BAREBOX_IMAGE ?= "barebox-${MACHINE}-${PKGV}-${PKGR}.img"
BAREBOX_SYMLINK ?= "barebox-${MACHINE}.img"
# generated using echo -n 'owhw-stop' | sha1sum
BAREBOX_PASSWORD = "d797c986b04cdcb86206a990908e27f8c3ae96b4"
do_configure_append () {
mkdir -p ${WORKDIR}/env/nv
echo 5 > ${WORKDIR}/env/nv/login.timeout
}
do_deploy_append () {
install -d ${DEPLOYDIR}
install ${S}/images/barebox-am33xx-gsmk-owhw.img ${DEPLOYDIR}/${BAREBOX_IMAGE}
cd ${DEPLOYDIR}
rm -f ${BAREBOX_SYMLINK}
ln -sf ${BAREBOX_IMAGE} ${BAREBOX_SYMLINK}
}

View File

@ -1,6 +1,6 @@
require barebox.inc
SRCREV = "cb9695a3ead9d62ad1d339409c7b15255d3b10ed"
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,6 +1,6 @@
require barebox.inc
SRCREV = "cb9695a3ead9d62ad1d339409c7b15255d3b10ed"
SRCREV = "34a48171a699560d8a41d00d2c07ed37a79c00d8"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \

View File

@ -2,7 +2,7 @@ require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "cb9695a3ead9d62ad1d339409c7b15255d3b10ed"
SRCREV = "34a48171a699560d8a41d00d2c07ed37a79c00d8"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \

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

@ -0,0 +1,23 @@
SUMMARY = "flash programming utility for Atmel's SAM family of flash-based ARM microcontrollers"
HOMEPAGE = "http://sourceforge.net/projects/b-o-s-s-a/"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d32239bcb673463ab874e80d47fae504"
SRCREV = "05bfcc39bc0453c3028b1161175b95a81af7a901"
SRC_URI = "git://git.code.sf.net/p/b-o-s-s-a/code"
DEPENDS = "readline"
PV = "v0.0+git${SRCPV}"
PR = "r2"
S = "${WORKDIR}/git"
do_compile() {
mkdir -p obj/arm-dis
oe_runmake -f Makefile bin/bossac bin/bossash
}
do_install() {
install -d ${D}${bindir}/
install -m 0755 ${S}/bin/bossac ${D}${bindir}/bossac
install -m 0755 ${S}/bin/bossash ${D}${bindir}/bossash
}

View File

@ -1,147 +0,0 @@
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# The loopback interface
auto lo
iface lo inet loopback
# eth0 is attached to the IDU-internal managed switch (IES-3080)
# in the future we will use VLANs to use individual switch ports as
# break-out interfaces. For now we simply do DHCP.
# Note: when inmarsat is available, its route should have a stronger metric
# than iridium (the route installed by linkmon). For the "inactive" routes, the
# metrics should be reversed, because iridium is more likely to be available
# than inmarsat (as an emergency/fallback measure).
#
# transport "active" metric "inactive" metric
# GSM 10 140
# WIFI 20 130
# Inmarsat 30 120
# Iridium 40 110
# VLAN 2000: The iridium openport satellite modem attached to
# port 1 of the IES-3080
auto eth0.2000
iface eth0.2000 inet static
address 192.168.0.254
netmask 255.255.255.0
network 192.168.0.0
post-up ip r add 10.6.1.0/24 via 192.168.0.1
post-up ip r add 5.9.81.48/32 via 192.168.0.1 metric 110
# VLAN 2001: Reserved for a future C-Band satellite modem
# attached to port 8 of the IES-3080
auto eth0.2001
iface eth0.2001 inet manual
# VLAN 2002: Reserved for a future Inmarsat satellite modem
# attached to port 6 of the IES-3080
auto eth0.2002
iface eth0.2002 inet static
address 10.156.136.99
netmask 255.255.255.224
network 10.156.136.96
#gateway 10.156.136.97 # no route should be installed, linkmon will do that.
# Switch off rp_filter
post-up /sbin/sysctl net.ipv4.conf.eth0/2002.rp_filter=2
# Set a route with high metric nr so a ping -I on this iface will work:
post-up ip r add 5.9.81.48/32 via 10.156.136.97 metric 120
# Once sob-idu-linkmon sees pings working, it will install a route
# with lower metric.
# management VLAN of IES-3080 switch (172.16.2.3)
auto eth0.6
iface eth0.6 inet manual
# video VLAN on IES-3080
auto eth0.9
iface eth0.9 inet manual
#eth1 is our admin interface and will provide dhcp to clients
auto eth1
iface eth1 inet static
address 172.16.6.1
netmask 255.255.255.0
network 172.16.6.0
# eth2 is attached to the IDU-internal SOB-JB02-SW
auto eth2
iface eth2 inet static
bridge_ports eth2
bridge_maxwait 0
address 172.16.4.1
netmask 255.255.254.0
network 172.16.4.0
# management VLAN towards {N,P}JB
auto eth2.6
iface eth2.6 inet manual
# bridge for VLAN 6: management VLAN
auto br-mgmt
iface br-mgmt inet static
bridge_ports eth2.6 eth0.6
bridge_maxwait 0
address 172.16.2.1
netmask 255.255.254.0
network 172.16.2.0
# bridge for VLAN9: video
auto br-video
iface br-video inet static
bridge_ports eth2.9 eth0.9
bridge_maxwait 0
address 172.16.9.1
netmask 255.255.255.0
network 172.16.9.0
# 172.16.1.1 is the service IP address for SOBMGMT
auto br-mgmt:0
iface br-mgmt:0 inet static
address 172.16.1.1
netmask 255.255.255.255
# GSM management VLAN
auto eth2.7
iface eth2.7 inet static
address 172.16.7.1
netmask 255.255.255.0
network 172.16.7.0
# Video VLAN on JB02, part of br-video
auto eth2.9
iface eth2.9 inet manual
# admin WiFi
auto eth2.1001
iface eth2.1001 inet static
address 172.16.8.1
netmask 255.255.255.0
network 172.16.8.0
# onboard WiFi
auto eth2.1002
iface eth2.1002 inet static
address 172.16.128.1
netmask 255.255.252.0
network 172.16.128.0
# remote WiFi
auto eth2.1003
iface eth2.1003 inet static
address 172.16.132.1
netmask 255.255.252.0
network 172.16.132.0
# JB-facing device for Inmarsat Satlite Crew
auto eth2.1004
iface eth2.1004 inet manual
# uplink of Inmarsat Satlite Crew
auto eth0.1004
iface eth0.1004 inet manual
auto br-satlite
iface br-satlite inet manual
bridge_ports eth0.1004 eth2.1004
bridge_maxwait 0

View File

@ -1,147 +0,0 @@
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# The loopback interface
auto lo
iface lo inet loopback
# eth0 is attached to the IDU-internal managed switch (IES-3080)
# in the future we will use VLANs to use individual switch ports as
# break-out interfaces. For now we simply do DHCP.
# Note: when inmarsat is available, its route should have a stronger metric
# than iridium (the route installed by linkmon). For the "inactive" routes, the
# metrics should be reversed, because iridium is more likely to be available
# than inmarsat (as an emergency/fallback measure).
#
# transport "active" metric "inactive" metric
# GSM 10 140
# WIFI 20 130
# Inmarsat 30 120
# Iridium 40 110
# VLAN 2000: The iridium openport satellite modem attached to
# port 1 of the IES-3080
auto eth0.2000
iface eth0.2000 inet static
address 192.168.0.254
netmask 255.255.255.0
network 192.168.0.0
post-up ip r add 10.6.1.0/24 via 192.168.0.1
post-up ip r add 5.9.81.48/32 via 192.168.0.1 metric 110
# VLAN 2001: Reserved for a future C-Band satellite modem
# attached to port 8 of the IES-3080
auto eth0.2001
iface eth0.2001 inet manual
# VLAN 2002: Reserved for a future Inmarsat satellite modem
# attached to port 6 of the IES-3080
auto eth0.2002
iface eth0.2002 inet static
address 10.156.136.99
netmask 255.255.255.224
network 10.156.136.96
#gateway 10.156.136.97 # no route should be installed, linkmon will do that.
# Switch off rp_filter
post-up /sbin/sysctl net.ipv4.conf.eth0/2002.rp_filter=2
# Set a route with high metric nr so a ping -I on this iface will work:
post-up ip r add 5.9.81.48/32 via 10.156.136.97 metric 120
# Once sob-idu-linkmon sees pings working, it will install a route
# with lower metric.
# management VLAN of IES-3080 switch (172.16.2.3)
auto eth0.6
iface eth0.6 inet manual
# video VLAN on IES-3080
auto eth0.9
iface eth0.9 inet manual
#eth1 is our admin interface and will provide dhcp to clients
auto eth1
iface eth1 inet static
address 172.16.6.1
netmask 255.255.255.0
network 172.16.6.0
# eth2 is attached to the IDU-internal SOB-JB02-SW
auto eth2
iface eth2 inet static
bridge_ports eth2
bridge_maxwait 0
address 172.16.4.1
netmask 255.255.254.0
network 172.16.4.0
# management VLAN towards {N,P}JB
auto eth2.6
iface eth2.6 inet manual
# bridge for VLAN 6: management VLAN
auto br-mgmt
iface br-mgmt inet static
bridge_ports eth2.6 eth0.6
bridge_maxwait 0
address 172.16.2.1
netmask 255.255.254.0
network 172.16.2.0
# bridge for VLAN9: video
auto br-video
iface br-video inet static
bridge_ports eth2.9 eth0.9
bridge_maxwait 0
address 172.16.9.1
netmask 255.255.255.0
network 172.16.9.0
# 172.16.1.1 is the service IP address for SOBMGMT
auto br-mgmt:0
iface br-mgmt:0 inet static
address 172.16.1.1
netmask 255.255.255.255
# GSM management VLAN
auto eth2.7
iface eth2.7 inet static
address 172.16.7.1
netmask 255.255.255.0
network 172.16.7.0
# Video VLAN on JB02, part of br-video
auto eth2.9
iface eth2.9 inet manual
# admin WiFi
auto eth2.1001
iface eth2.1001 inet static
address 172.16.8.1
netmask 255.255.255.0
network 172.16.8.0
# onboard WiFi
auto eth2.1002
iface eth2.1002 inet static
address 172.16.128.1
netmask 255.255.252.0
network 172.16.128.0
# remote WiFi
auto eth2.1003
iface eth2.1003 inet static
address 172.16.132.1
netmask 255.255.252.0
network 172.16.132.0
# JB-facing device for Inmarsat Satlite Crew
auto eth2.1004
iface eth2.1004 inet manual
# uplink of Inmarsat Satlite Crew
auto eth0.1004
iface eth0.1004 inet manual
auto br-satlite
iface br-satlite inet manual
bridge_ports eth0.1004 eth2.1004
bridge_maxwait 0

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"

View File

@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
inherit sysmocom-module
PR = "r1"
PR = "r3"
SRC_URI = "http://www.kernel.org/pub/linux/kernel/projects/backports/stable/v3.18.1/backports-3.18.1-1.tar.xz \
file://dont-export-clk_enable-twice.patch \
@ -16,15 +16,25 @@ SRC_URI[sha256sum] = "ff3d4d5192c4d57d7415dfcd60e02ea4fa21e0de224ae0ce2b5b9f2e9c
S = "${WORKDIR}/backports-3.18.1-1"
python __anonymous() {
if d.getVar('DISTRO_VERSION', True)[0:3] == '1.5':
d.setVar('KERNEL_BUILD_DIR', d.getVar('STAGING_KERNEL_DIR', True))
else:
d.setVar('KERNEL_BUILD_DIR', d.getVar('STAGING_KERNEL_BUILDDIR', True))
}
KERNEL_BUILD_DIR = "${@d.getVar('KERNEL_BUILD_DIR', True)}"
do_configure() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC
cp ${WORKDIR}/defconfig ${S}/.config
oe_runmake oldconfig KLIB_BUILD=${STAGING_KERNEL_DIR}
oe_runmake oldconfig KLIB_BUILD=${KERNEL_BUILD_DIR}
}
do_compile() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake KLIB_BUILD=${STAGING_KERNEL_DIR} \
oe_runmake KLIB_BUILD=${KERNEL_BUILD_DIR} \
CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
AR="${KERNEL_AR}" \
${MAKE_TARGETS}
@ -33,7 +43,7 @@ do_compile() {
do_install() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake DEPMOD=echo KLIB="${D}" \
KLIB_BUILD=${STAGING_KERNEL_DIR} \
KLIB_BUILD=${KERNEL_BUILD_DIR} \
CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
install
}

View File

@ -0,0 +1,22 @@
SUMMARY = "small utility to set configuration of USB2514 hub chip on the sysmo-odu"
HOMEPAGE = ""
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e6868d1ce8f058ecc5658ecebb086636"
SRCREV = "1103417819fe855d8d0d3e6a277870679ad01bd2"
SRC_URI = "git://github.com/mlaurijsse/linux-mpu9150.git"
PV = "v0.0+git${SRCPV}"
PR = "r1a"
S = "${WORKDIR}/git"
do_compile() {
oe_runmake -f Makefile-native
}
do_install() {
install -d ${D}${bindir}/
install -m 0755 ${S}/imu ${D}${bindir}/mpu9150-imu
install -m 0755 ${S}/imucal ${D}${bindir}/mpu9150-imu-cal
}

View File

@ -1693,7 +1693,11 @@ CONFIG_IRQCHIP=y
#
# CONFIG_EXT2_FS is not set
# CONFIG_EXT3_FS is not set
# CONFIG_EXT4_FS is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
CONFIG_EXT4_FS=y
CONFIG_JBD=y
CONFIG_JBD2=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set

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

@ -7,12 +7,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
# Set this to 'preempt_rt' in the local.conf if you want a real time kernel
LINUX_KERNEL_TYPE ?= "standard"
module_autoload_mISDN_l1loop = "mISDN_l1loop"
module_autoload_mISDN_dsp = "mISDN_dsp"
module_conf_mISDN_l1loop = "options mISDN_l1loop pri=1 nchannel=20"
KERNEL_MODULE_PROBECONF_append = "mISDN_l1loop mISDN_dsp"
FILES_${PN} = ""
# Remove when using a Poky/OE-Core with that includes e0bf758982843ec1981b74410616b3492c599d06

View File

@ -7,18 +7,18 @@ DEPENDS += "bc-native"
# 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 ?= "3.10.80"
LINUX_VERSION ?= "3.10.84"
LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# Overrides for the sysmocom bts v2
BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2"
SRCREV = "3122273386e140378bfc7f8ec5d76e4e04c32ad1"
SRCREV = "60c9ebbd1a683e8691223042a12958c5dc661feb"
PR = "r43"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=linux-3.10.80 \
SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=linux-3.10.84 \
file://defconfig"
S = "${WORKDIR}/git"
@ -43,6 +43,7 @@ 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"

View File

@ -7,10 +7,10 @@ LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# 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!
SRCREV = "d1a5b8e2ddc3a74c6d81d85a106cb0c33cd7688b"
SRCREV = "d33286eda98596983abf9bd6420741fdfedd192f"
BRANCH = "sob-odu/linux-3.2.69"
PR = "r42"
PR = "r43"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = " \
@ -32,5 +32,14 @@ do_configure() {
# autoload defaults (alphabetically sorted)
module_autoload_leds-gpio = "leds-gpio"
module_autoload_mmc_block = "mmc_block"
KERNEL_MODULE_AUTOLOAD += "leds-gpio mmc_block"
# Legacy for 3.2 and LCR
module_autoload_mISDN_l1loop = "mISDN_l1loop"
module_autoload_mISDN_dsp = "mISDN_dsp"
module_conf_mISDN_l1loop = "options mISDN_l1loop pri=1 nchannel=20"
KERNEL_MODULE_PROBECONF_append = "mISDN_l1loop mISDN_dsp"
KERNEL_MODULE_AUTOLOAD += "mISDN_l1loop mISDN_dsp"
DEFAULT_PREFERENCE = "20"

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

@ -6,6 +6,8 @@ After=network.target
Type=forking
PIDFile=/run/ntpd.pid
ExecStart=/usr/sbin/ntpd -u ntp:ntp -p /run/ntpd.pid -g
Restart=always
RestartSec=2
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,34 @@
#!/bin/sh
# script installed as cronjob for handling
# machines which have not ntp or systemd-timessyncd installed
#
# (C) 2015 by sysmocom - s.f.m.c. GmbH
# Author: Henning Heinold
RUN_NTPDATE=1
# check for systemd otherwise assume sysvinit with ps
systemctl > /dev/null 2>&1
if [ $? -eq 0 ]; then
systemctl status ntpd > /dev/null 2>&1 || systemctl status systemd-timesyncd > /dev/null 2>&1
else
PS="ps"
ps -ef > /dev/null 2>&1
if [ $? -eq 0 ]; then
PS="ps -ef"
fi
# poor man search for a running ntpd
# under sysvinit we have no systemd-timesyncd
$PS | grep -v grep | grep "ntpd " > /dev/null 2>&1
fi
RUN_NTPDATE=$?
# the commands must fail to run ntpdate
if [ ${RUN_NTPDATE} -ne 0 ]; then
__bindir__/ntpdate-sync silent
fi

View File

@ -0,0 +1 @@
*/30 * * * * root __bindir__/ntpdate-cron

View File

@ -21,12 +21,14 @@ SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.g
file://sntp.service \
file://sntp \
file://ntpd.list \
file://ntpdate-cron \
file://ntpdate.cron \
"
PR = "r7"
PR = "r9"
SRC_URI[md5sum] = "65d8cdfae4722226fbe29863477641ed"
SRC_URI[sha256sum] = "948274b88f1ed002d867ced6aaefdfd0999668b11285ac2b3a67ff2629d59d88"
SRC_URI[md5sum] = "60049f51e9c8305afe30eb22b711c5c6"
SRC_URI[sha256sum] = "583d0e1c573ace30a9c6afbea0fc52cae9c8c916dbc15c026e485a0dda4ba048"
inherit autotools update-rc.d useradd systemd pkgconfig
@ -64,6 +66,8 @@ do_install_append() {
install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d
install -d ${D}${bindir}
install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync
install -m 755 ${WORKDIR}/ntpdate-cron ${D}${bindir}/ntpdate-cron
install -D -m 0644 ${WORKDIR}/ntpdate.cron ${D}${sysconfdir}/cron.d/ntpdate
install -m 755 -d ${D}${NTP_USER_HOME}
chown ntp:ntp ${D}${NTP_USER_HOME}
@ -74,6 +78,8 @@ do_install_append() {
sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${bindir}/ntpdate-sync
sed -i 's!__bindir__!${bindir}!g' ${D}${bindir}/ntpdate-cron
sed -i 's!__bindir__!${bindir}!g' ${D}${sysconfdir}/cron.d/ntpdate
sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/ntptrace
sed -i '/use/i use warnings;' ${D}${sbindir}/ntptrace
sed -i '1s,#!.*perl,#! ${bindir}/env perl,' ${D}${sbindir}/ntp-wait
@ -95,9 +101,13 @@ do_install_append() {
install -d ${D}${systemd_unitdir}/ntp-units.d
install -m 0644 ${WORKDIR}/ntpd.list ${D}${systemd_unitdir}/ntp-units.d/60-ntpd.list
if [ `ls -A ${D}${libexecdir} | wc -l` -eq 0 ]; then
rm -rf ${D}${libexecdir}
fi
}
PACKAGES += "ntpdate sntp ${PN}-tickadj ${PN}-utils"
PACKAGES += "ntpdate sntp ${PN}-tickadj ${PN}-utils ${PN}-perl"
# NOTE: you don't need ntpdate, use "ntpd -q -g -x"
# ntp originally includes tickadj. It's split off for inclusion in small firmware images on platforms
@ -128,13 +138,16 @@ FILES_${PN} = "${sbindir}/ntpd ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd
${systemd_unitdir}/ntp-units.d/60-ntpd.list \
"
FILES_${PN}-tickadj = "${sbindir}/tickadj"
FILES_${PN}-utils = "${sbindir} ${datadir}/ntp/lib"
RDEPENDS_${PN}-utils += "perl"
FILES_${PN}-utils = "${sbindir}/ntptime ${sbindir}/ntpq"
FILES_${PN}-perl = "${sbindir} ${datadir}/ntp/lib"
RDEPENDS_${PN}-perl += "perl"
FILES_ntpdate = "${sbindir}/ntpdate \
${sysconfdir}/network/if-up.d/ntpdate-sync \
${bindir}/ntpdate-sync \
${sysconfdir}/default/ntpdate \
${systemd_unitdir}/system/ntpdate.service \
${bindir}/ntpdate-cron \
${sysconfdir}/cron.d/ntpdate \
"
FILES_sntp = "${sbindir}/sntp \
${sysconfdir}/default/sntp \
@ -142,17 +155,24 @@ FILES_sntp = "${sbindir}/sntp \
"
CONFFILES_${PN} = "${sysconfdir}/ntp.conf"
CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate"
CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate ${sysconfdir}/cron.d/ntpdate"
INITSCRIPT_NAME = "ntpd"
# No dependencies, so just go in at the standard level (20)
INITSCRIPT_PARAMS = "defaults"
pkg_postinst_ntpdate() {
if ! grep -q -s ntpdate $D/var/spool/cron/root; then
echo "adding crontab"
test -d $D/var/spool/cron || mkdir -p $D/var/spool/cron
echo "30 * * * * ${bindir}/ntpdate-sync silent" >> $D/var/spool/cron/root
if grep -q -s ntpdate $D/var/spool/cron/root; then
echo "comment the old crontab entry"
sed -i -e "/^[^#]/ s/\(.*\)\(.*ntpdate-sync.*$\)/#\1\2/g" $D/var/spool/cron/root
fi
if [ "x$D" != "x" ]; then
exit 0
fi
systemctl status crond > /dev/null 2>&1
if [ $? -eq 0 ]; then
systemctl restart crond
else
/etc/init.d/cron restart
fi
}

View File

@ -0,0 +1,19 @@
# do not edit this file, it will be overwritten on update
ACTION=="remove", GOTO="owhw_persistent_serial_end"
SUBSYSTEM!="tty", GOTO="owhw_persistent_serial_end"
KERNEL!="ttyUSB[0-9]*", GOTO="owhw_persistent_serial_end"
KERNELS=="2-1.2:1.0", SYMLINK+="ttyModem1DM"
KERNELS=="2-1.2:1.1", SYMLINK+="ttyModem1NMEA"
KERNELS=="2-1.2:1.2", SYMLINK+="ttyModem1AT"
KERNELS=="2-1.2:1.3", SYMLINK+="ttyModem1PPP"
KERNELS=="2-1.2:1.4", SYMLINK+="ttyModem1NDIS"
KERNELS=="2-1.3:1.0", SYMLINK+="ttyModem2DM"
KERNELS=="2-1.3:1.1", SYMLINK+="ttyModem2NMEA"
KERNELS=="2-1.3:1.2", SYMLINK+="ttyModem2AT"
KERNELS=="2-1.3:1.3", SYMLINK+="ttyModem2PPP"
KERNELS=="2-1.3:1.4", SYMLINK+="ttyModem2NDIS"
LABEL="owhw_persistent_serial_end"

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"
@ -12,6 +12,7 @@ PR = "r0"
S = "${WORKDIR}/git"
inherit autotools pkgconfig
B = "${S}"
CFLAGS += ""
LDFLAGS += ""

View File

@ -0,0 +1,75 @@
#!/bin/sh
SYSGPIO=/sys/class/gpio
DEVGPIO=/dev/gpio
[ -d "$DEVGPIO " ] || mkdir "$DEVGPIO"
export_gpio()
{
NUM="$1"
DIR="$2"
GPIOPATH="$SYSGPIO/gpio$NUM"
[ -d "$GPIOPATH" ] || echo $1 > "$SYSGPIO/export"
echo $2 > "$GPIOPATH/direction"
}
export_gpio_out()
{
NUM="$1"
NAME="$2"
VAL="$3"
INV="$4"
GPIOPATH="$SYSGPIO/gpio$NUM"
export_gpio $NUM out
ln -sfn "$GPIOPATH" "$DEVGPIO/$NAME"
if [ "x$INV" != "x" ]; then
echo 1 > "$GPIOPATH/active_low"
else
echo 0 > "$GPIOPATH/active_low"
fi
echo $VAL > "$GPIOPATH/value"
}
export_gpio_in()
{
NUM="$1"
NAME="$2"
INV="$3"
GPIOPATH="$SYSGPIO/gpio$NUM"
export_gpio $NUM in
ln -sfn "$GPIOPATH" "$DEVGPIO/$NAME"
if [ "x$INV" != "x" ]; then
echo 1 > "$GPIOPATH/active_low"
else
echo 0 > "$GPIOPATH/active_low"
fi
}
export_gpio_out 48 pse_i2c_buf_en 0 active_low
export_gpio_in 52 pse_int active_low
export_gpio_out 23 connect_st_usim1 0
export_gpio_out 27 connect_st_usim2 0
export_gpio_out 26 mdm1_rst 0
export_gpio_out 59 mdm1_on 1
export_gpio_out 58 mdm_ldo_en 1
#export_gpio_in 57 button active_low
export_gpio_out 55 mdm2_rst 0
#export_gpio_out 54 system_led 1 active_low
export_gpio_out 51 eeprom_wp 0
export_gpio_out 50 mdm2_on 1
export_gpio_out 113 simtrace_erase 0
export_gpio_out 115 simtrace_bootloader 0
export_gpio_out 114 simtrace_reset 0
export_gpio_in 104 acc_int active_low
export_gpio_out 62 hub_reset 1 active_low

View File

@ -23,6 +23,7 @@
#include <stdint.h>
#include <limits.h>
#include <fcntl.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
@ -30,11 +31,110 @@
/* #include <linux/i2c-dev.h> */
#include "i2c-dev.h"
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
#define USB2514_SLAVE_ADDR 0x2C
enum compare_op {
EQUAL,
NOT_EQUAL,
LESS_THAN_OR_EQUAL,
GREATER_THAN_OR_EQUAL,
};
struct usb2514_board {
const char *name;
unsigned int i2c_bus;
uint8_t i2c_addr;
const char *board_version_file;
unsigned int board_version;
enum compare_op board_version_op;
uint8_t ports_swap;
const char *reset_gpio_path;
int reset_low_active;
};
struct board_group {
/* new /sys/firmware/devicetree/base/model */
const char *device_tree_name;
/* old pre-device tree kernels, "Hardware :" in /proc/cpuinfo */
const char *proc_name;
const struct usb2514_board *boards;
unsigned int num_boards;
};
static const struct usb2514_board odu_boards[] = {
{
.name = "sob-odu v1",
.i2c_bus = 0,
.i2c_addr = 0x2C,
.board_version_file = "/sys/devices/platform/sob-odu.0/board_version",
.board_version = 1,
.board_version_op = EQUAL,
.ports_swap = 0x00, /* ports are still swapped in hardware */
.reset_gpio_path = "/sys/devices/platform/sob-odu.0/gpio_hub_reset/value",
.reset_low_active = 1,
}, {
.name = "sob-odu v2",
.i2c_bus = 0,
.i2c_addr = 0x2C,
.board_version_file = "/sys/devices/platform/sob-odu.0/board_version",
.board_version = 2,
.board_version_op = EQUAL,
.ports_swap = 0x0E, /* swap DN1, DN2, DN3 */
.reset_gpio_path = "/sys/devices/platform/sob-odu.0/gpio_hub_reset/value",
.reset_low_active = 0,
}, {
.name = "sob-odu v2",
.i2c_bus = 0,
.i2c_addr = 0x2C,
.board_version_file = "/sys/devices/platform/sob-odu.0/board_version",
.board_version = 0, /* EEPROM Empty ?!? */
.board_version_op = EQUAL,
.ports_swap = 0x0E, /* swap DN1, DN2, DN3 */
.reset_gpio_path = "/sys/devices/platform/sob-odu.0/gpio_hub_reset/value",
.reset_low_active = 0,
}, {
.name = "sob-odu v3+",
.i2c_bus = 0,
.i2c_addr = 0x2C,
.board_version_file = "/sys/devices/platform/sob-odu.0/board_version",
.board_version = 3,
.board_version_op = GREATER_THAN_OR_EQUAL,
.ports_swap = 0x0C, /* swap only DN2 and DN3 */
.reset_gpio_path = "/sys/devices/platform/sob-odu.0/gpio_hub_reset/value",
.reset_low_active = 0,
},
};
static const struct usb2514_board owhw_boards[] = {
{
.name = "OWHW",
.i2c_bus = 1,
.i2c_addr = 0x2C,
.board_version_op = EQUAL,
.ports_swap = 0x10, /* swap only DN4 */
.reset_gpio_path = "/dev/gpio/hub_reset/value",
.reset_low_active = 0,
},
};
static const struct board_group boards[] = {
{
.proc_name = "sob-odu",
.device_tree_name = "sysmocom ODU",
.boards = odu_boards,
.num_boards = ARRAY_SIZE(odu_boards),
}, {
.device_tree_name = "GSMK OWHW",
.boards = owhw_boards,
.num_boards = ARRAY_SIZE(owhw_boards),
},
};
#define BOARD_VER_PATH "/sys/devices/platform/sob-odu.0/board_version"
#define RESET_PATH "/sys/devices/platform/sob-odu.0/gpio_hub_reset/value"
#define RESET_PATH_OLD "/sys/class/gpio/gpio62/value"
/* Default configuration as per data sheet */
@ -119,7 +219,7 @@ static int g_fd;
static unsigned long get_support(void)
{
int rc;
unsigned long funcs;
unsigned long funcs = 0;
rc = ioctl(g_fd, I2C_FUNCS, funcs);
@ -128,7 +228,6 @@ static unsigned long get_support(void)
return funcs;
}
static int write_regs(const uint8_t *regs)
{
unsigned int i;
@ -145,12 +244,12 @@ static int write_regs(const uint8_t *regs)
}
/* attempt to obtain the board version from sysfs */
static int get_board_version(void)
static int get_board_version(const char *ver_file)
{
FILE *f;
unsigned int ver;
f = fopen(BOARD_VER_PATH, "r");
f = fopen(ver_file, "r");
if (!f)
return -1;
@ -164,20 +263,143 @@ static int get_board_version(void)
return ver;
}
/* attempt to reset the hub via sysfs */
static int reset_hub(void)
static int board_ver_matches(const struct usb2514_board *board,
unsigned int version)
{
switch (board->board_version_op) {
case EQUAL:
return (version == board->board_version);
case NOT_EQUAL:
return (version != board->board_version);
case LESS_THAN_OR_EQUAL:
return (version <= board->board_version);
case GREATER_THAN_OR_EQUAL:
return (version >= board->board_version);
default:
return 0;
}
}
static char *get_proc_name(void)
{
FILE *f = fopen("/proc/cpuinfo", "r");
char linebuf[256];
while (fgets(linebuf, sizeof(linebuf), f)) {
/* strip LF at the end of line */
char *lf = strrchr(linebuf, '\n');
if (lf)
*lf = '\0';
if (strncmp(linebuf, "Hardware", 8) &&
strncmp(linebuf, "machine", 7))
continue;
/* search for the colon */
char *colon = strchr(linebuf, ':');
if (!colon)
continue;
colon++;
/* strip any leading whitespace */
while (*colon == ' ' || *colon == '\t')
colon++;
fclose(f);
return strdup(colon);
}
fclose(f);
return NULL;
}
static char *get_dt_name(void)
{
FILE *f;
int invert_logic = 0;
char *name = NULL;
char linebuf[256];
f = fopen(RESET_PATH, "w");
if (!f) {
f = fopen(RESET_PATH_OLD, "w");
if (!f)
return -1;
invert_logic = 1;
f = fopen("/sys/firmware/devicetree/base/model", "r");
if (!f)
return NULL;
if (!fgets(linebuf, sizeof(linebuf), f)) {
fclose(f);
return NULL;
}
fclose(f);
return strdup(linebuf);
}
static const struct board_group *find_matching_board_group()
{
int i;
char *proc_name, *dt_name;
proc_name = get_proc_name();
dt_name = get_dt_name();
for (i = 0; i < ARRAY_SIZE(boards); i++) {
const struct board_group *bgrp = &boards[i];
if (dt_name && bgrp->device_tree_name &&
!strcmp(dt_name, bgrp->device_tree_name)) {
free(proc_name);
free(dt_name);
return bgrp;
}
if (proc_name && bgrp->proc_name &&
!strcmp(proc_name, bgrp->proc_name)) {
free(proc_name);
free(dt_name);
return bgrp;
}
}
free(proc_name);
free(dt_name);
return NULL;
}
static const struct usb2514_board *
find_matching_board(const struct board_group *bgrp)
{
int i;
for (i = 0; i < bgrp->num_boards; i++) {
const struct usb2514_board *board = &bgrp->boards[i];
int ver;
if (board->board_version_file) {
/* get board version and compare */
ver = get_board_version(board->board_version_file);
if (ver < 0)
continue;
if (!board_ver_matches(board, ver))
continue;
}
return board;
}
return NULL;
}
/* attempt to reset the hub via sysfs */
static int reset_hub(const char *reset_path, int invert_logic)
{
FILE *f;
f = fopen(reset_path, "w");
if (!f)
return -1;
if (invert_logic)
fputs("0", f);
else
@ -198,56 +420,53 @@ static int reset_hub(void)
int main(int argc, char **argv)
{
int rc;
int board_version;
int adapter_nr;
long slave_addr = USB2514_SLAVE_ADDR;
char filename[PATH_MAX];
const struct board_group *bgrp;
const struct usb2514_board *board;
if (argc < 2) {
fprintf(stderr, "You have to specify I2C bus number\n");
exit(2);
}
adapter_nr = atoi(argv[1]);
snprintf(filename, sizeof(filename)-1, "/dev/i2c-%d", adapter_nr);
rc = open(filename, O_RDWR);
if (rc < 0) {
fprintf(stderr, "Error opening the device: %d\n", rc);
bgrp = find_matching_board_group();
if (!bgrp) {
fprintf(stderr, "Cannot find matching board group for this system\n");
exit(1);
}
printf("Found matching board group %s(%s)\n", bgrp->proc_name, bgrp->device_tree_name);
board = find_matching_board(bgrp);
if (!board) {
fprintf(stderr, "Cannot find matching config for this system\n");
exit(1);
}
printf("Found matching board %s\n", board->name);
/* open the I2C bus device */
snprintf(filename, sizeof(filename)-1, "/dev/i2c-%d", board->i2c_bus);
rc = open(filename, O_RDWR);
if (rc < 0) {
fprintf(stderr, "Error opening the device %s: %d\n", filename, rc);
exit(1);
}
g_fd = rc;
get_support();
board_version = get_board_version();
if (board_version >= 3) {
/* on board version 3 and later we don't need to swap
* USB downlink port 1 */
printf("Detected board >= v3, not swapping DN1\n");
usb2514_odu[0xFA] = 0x0C;
} else if (board_version == 1) {
/* ports are still swapped in hardware */
printf("Detected board v1, not swapping any ports\n");
usb2514_odu[0xFA] = 0x00;
} else if (board_version == 2) {
printf("Detected board v2, swapping DN1, DN2 and DN3\n");
/* default */
} else {
printf("Assuming board v2, swapping DN1, DN2 and DN3\n");
/* default */
}
/* set the slave address */
rc = ioctl(g_fd, I2C_SLAVE, slave_addr);
rc = ioctl(g_fd, I2C_SLAVE, board->i2c_addr);
if (rc < 0) {
fprintf(stderr, "Error setting slave addr: %d\n", rc);
exit(1);
}
/* First reset the USB hub before loading data into it */
if (reset_hub() < 0) {
fprintf(stderr, "Couldn't reset the USB hub!\n");
}
if (board->reset_gpio_path) {
/* First reset the USB hub before loading data into it */
if (reset_hub(board->reset_gpio_path, board->reset_low_active) < 0) {
fprintf(stderr, "Couldn't reset the USB hub!\n");
}
} else
fprintf(stderr, "board config doesn't indicate USB hub reset GPIO\n");
/* patch the port inversion byte into the array */
usb2514_odu[0xFA] = board->ports_swap;
rc = write_regs(usb2514_odu);
if (rc < 0) {

View File

@ -4,7 +4,7 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://${WORKDIR}/usb2514.c;beginline=1;endline=18;md5=3b8421a1c05d21add65cc20fccfa29cd"
DEPENDS += "lmsensors-apps"
PR = "r3"
PR = "r4"
SRC_URI = "file://usb2514.c \
file://gpio_usb2514 \

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

@ -0,0 +1,12 @@
#!/bin/sh
set -eu
TEST_VALUE="default"
. /slot/system.conf
cat >/etc/symocom/test.cfg <<EOF
[main]
bla=$TEST_VALUE
EOF

View File

@ -0,0 +1,12 @@
#!/bin/sh
set -eu
OSMOBSC_VALUE="bar"
. /slot/system.conf
cat >/etc/osmocom/osmo-bsc.cfg <<EOF
#dummy: OSMOBSC_VALUE=$OSMOBSC_VALUE
EOF

View File

@ -0,0 +1,11 @@
#!/bin/sh
TEST_VALUE="default"
. /slot/system.conf
cat >/etc/sysmocom/test.cfg <<EOF
[main]
bla=$TEST_VALUE
model=sysmocom-bsc
EOF

View File

@ -0,0 +1,32 @@
#!/bin/sh
if [ ! -e /slot/system.conf ]; then
exit 0
fi
. /slot/system.conf
for HANDLER in $(ls /etc/sysmocom/configure.d/*.sh); do
UNIT=$(basename "$HANDLER" .sh)
cat >$1/${UNIT//./-}-configure.service <<EOF
[Unit]
Description=Generate $UNIT Configuration
After=sysmocom-restore.service
Before=$UNIT
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=$HANDLER
EOF
mkdir -p $1/$UNIT.wants
ln -s /lib/systemd/system/${UNIT//./-}-configure.service $1/$UNIT.wants/
done
if [ -n "$OSMOBSC_ENABLED" ]; then
ln -s /lib/systemd/system/osmo-bsc.service $1/multi-user.target.wants/
fi
if [ -n "$OSMONITB_ENABLED" ]; then
ln -s /lib/systemd/system/osmo-nitb.service $1/multi-user.target.wants/
fi

View File

@ -0,0 +1,19 @@
DESCRIPTION = "sysmocom configuration scripts"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = " \
file://sysmocom-generator \
file://multi-user.target.sh \
file://osmo-bsc.service.sh \
"
do_install() {
install -d ${D}${systemd_unitdir}/system-generators
install -m 0755 ${WORKDIR}/sysmocom-generator ${D}${systemd_unitdir}/system-generators/
install -d ${D}${sysconfdir}/sysmocom/configure.d
install -m 0755 ${WORKDIR}/*.sh ${D}${sysconfdir}/sysmocom/configure.d/
}
FILES_${PN} += "${systemd_unitdir}/system-generators"

View File

@ -0,0 +1,9 @@
[Unit]
Description=Emergency Reboot
DefaultDependencies=no
Conflicts=shutdown.target
Before=shutdown.target
[Service]
ExecStart=/bin/systemctl --force reboot
Type=oneshot

View File

@ -0,0 +1,14 @@
DESCRIPTION = "sysmocom systemd customization"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = " \
file://emergency.service \
"
do_install() {
install -d ${D}${sysconfdir}/systemd/system
install -m 0644 ${WORKDIR}/emergency.service ${D}${sysconfdir}/systemd/system
}
CONFFILES_${PN} += "${sysconfdir}/systemd/system/emergency.service"

View File

@ -0,0 +1,21 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sat, 23 Aug 2014 12:27:34 -0700
Subject: crda: Do not run ldconfig if DESTDIR is set
Upstream-Status: Backport [http://www.spinics.net/lists/linux-wireless/msg126028.html]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
--- a/Makefile
+++ b/Makefile
@@ -132,7 +132,9 @@ install-libreg:
$(NQ) ' INSTALL libreg'
$(Q)mkdir -p $(DESTDIR)/$(LIBDIR)
$(Q)cp $(LIBREG) $(DESTDIR)/$(LIBDIR)/
+ifndef DESTDIR
$(Q)ldconfig
+endif
%.o: %.c regdb.h $(LIBREG)
$(NQ) ' CC ' $@

View File

@ -0,0 +1,50 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sat, 23 Aug 2014 12:26:37 -0700
Subject: Fix linking of libraries used by libreg
The math and crypto libraries are called by and need to be linked to
libreg.so, not to the executables.
Upstream-Status: Backport [http://www.spinics.net/lists/linux-wireless/msg126027.html]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
--- a/Makefile
+++ b/Makefile
@@ -30,7 +30,7 @@ CFLAGS += -std=gnu99 -Wall -Werror -peda
CFLAGS += -Wall -g
LDLIBREG += -lreg
LDLIBS += $(LDLIBREG)
-LDLIBS += -lm
+LIBREGLDLIBS += -lm
LIBREG += libreg.so
LDFLAGS += -L ./
@@ -40,7 +40,7 @@ all_noverify: $(LIBREG) crda intersect r
ifeq ($(USE_OPENSSL),1)
CFLAGS += -DUSE_OPENSSL -DPUBKEY_DIR=\"$(RUNTIME_PUBKEY_DIR)\" `pkg-config --cflags openssl`
-LDLIBS += `pkg-config --libs openssl`
+LIBREGLDLIBS += `pkg-config --libs openssl`
ifeq ($(RUNTIME_PUBKEY_ONLY),1)
CFLAGS += -DRUNTIME_PUBKEY_ONLY
@@ -51,7 +51,7 @@ endif
else
CFLAGS += -DUSE_GCRYPT
-LDLIBS += -lgcrypt
+LIBREGLDLIBS += -lgcrypt
$(LIBREG): keys-gcrypt.c
@@ -121,7 +121,7 @@ keys-%.c: utils/key2pub.py $(wildcard $(
$(LIBREG): regdb.h reglib.h reglib.c
$(NQ) ' CC ' $@
- $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^
+ $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^ $(LIBREGLDLIBS)
install-libreg-headers:
$(NQ) ' INSTALL libreg-headers'

View File

@ -0,0 +1,41 @@
SUMMARY = "Wireless Central Regulatory Domain Agent"
HOMEPAGE = "http://wireless.kernel.org/en/developers/Regulatory/CRDA"
SECTION = "net"
LICENSE = "copyleft-next-0.3.0 & ISC"
LIC_FILES_CHKSUM = "file://copyleft-next-0.3.0;md5=8743a2c359037d4d329a31e79eabeffe \
file://${WORKDIR}/wireless-regdb-2014.11.18/LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c"
DEPENDS = "python-m2crypto-native python-native libgcrypt libnl"
SRC_URI = "https://www.kernel.org/pub/software/network/crda/${BP}.tar.xz;name=crda \
https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2014.11.18.tar.xz;name=bin \
file://do-not-run-ldconfig-if-destdir-is-set.patch \
file://fix-linking-of-libraries-used-by-reglib.patch \
"
SRC_URI[crda.md5sum] = "0431fef3067bf503dfb464069f06163a"
SRC_URI[crda.sha256sum] = "43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf"
SRC_URI[bin.md5sum] = "d750c402c5510add7380edcb1d9b75b2"
SRC_URI[bin.sha256sum] = "eab6b50f30748a8b0065ba38cf3df05aac161a5861ae0a6c3cfd01d38a71c9dd"
inherit python-dir pythonnative
# Recursive make problem
EXTRA_OEMAKE = "MAKEFLAGS= DESTDIR=${D} LIBDIR=${libdir}/crda LDLIBREG='-Wl,-rpath,${libdir}/crda -lreg'"
do_compile() {
oe_runmake all_noverify
}
do_install() {
oe_runmake SBINDIR=${sbindir}/ install
install -d ${D}${libdir}/crda/
install -m 0644 ${WORKDIR}/wireless-regdb-2014.11.18/regulatory.bin ${D}${libdir}/crda/regulatory.bin
}
RDEPENDS_${PN} = "udev"
FILES_${PN} += "${libdir}crda/regulatory.bin \
${base_libdir}/udev/rules.d/85-regulatory.rules \
"

View File

@ -0,0 +1,44 @@
From 5310abba864cfe3a8b65af130729447604190b29 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Tue, 29 Nov 2011 17:03:27 +0100
Subject: [PATCH] iw: version.sh: don't use git describe for versioning
It will detect top-level git repositories like the Angstrom setup-scripts and break.
Upstream-Status: Unknown
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
version.sh | 16 +---------------
1 files changed, 1 insertions(+), 15 deletions(-)
diff --git a/version.sh b/version.sh
index 3fb9f6d..e4a56cb 100755
--- a/version.sh
+++ b/version.sh
@@ -3,21 +3,7 @@
VERSION="3.2"
OUT="$1"
-if head=`git rev-parse --verify HEAD 2>/dev/null`; then
- git update-index --refresh --unmerged > /dev/null
- descr=$(git describe)
-
- # on git builds check that the version number above
- # is correct...
- [ "${descr%%-*}" = "v$VERSION" ] || exit 2
-
- v="${descr#v}"
- if git diff-index --name-only HEAD | read dummy ; then
- v="$v"-dirty
- fi
-else
- v="$VERSION"
-fi
+v="$VERSION"
echo '#include "iw.h"' > "$OUT"
echo "const char iw_version[] = \"$v\";" >> "$OUT"
--
1.7.7.3

View File

@ -0,0 +1,23 @@
SUMMARY = "nl80211 based CLI configuration utility for wireless devices"
DESCRIPTION = "iw is a new nl80211 based CLI configuration utility for \
wireless devices. It supports almost all new drivers that have been added \
to the kernel recently. "
HOMEPAGE = "http://wireless.kernel.org/en/users/Documentation/iw"
SECTION = "base"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=878618a5c4af25e9b93ef0be1a93f774"
DEPENDS = "libnl pkgconfig"
SRC_URI = "http://www.kernel.org/pub/software/network/iw/${P}.tar.bz2 \
file://0001-iw-version.sh-don-t-use-git-describe-for-versioning.patch \
"
SRC_URI[md5sum] = "e633cf7c875c7d8b547abafc0d95f6c4"
SRC_URI[sha256sum] = "09348d4f7371fad00c07cfb67b9e34f24403cbd9361f9634cfb4dff9cdd40139"
EXTRA_OEMAKE = ""
do_install() {
oe_runmake DESTDIR=${D} install
}

View File

@ -1,6 +1,6 @@
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 = "28"
PRINC = "30"
SRC_URI += "file://udhcpc-ntp.sh \
file://udhcpc-ntp.default \

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,6 +1,7 @@
#!/bin/sh
# udhcpc script edited by Tim Riker <Tim@Rikers.org>
# Added INSTALL_DEFAULT_ROUTE flag, by <info@sysmocom.de>
[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
@ -46,7 +47,7 @@ case "$1" in
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
fi
if [ -n "$router" ] ; then
if [ -n "$router" -a "$INSTALL_DEFAULT_ROUTE" != "no" ] ; then
if ! root_is_nfs ; then
if [ $have_bin_ip -eq 1 ]; then
while ip route del default dev $interface 2>/dev/null ; do

View File

@ -0,0 +1,5 @@
# Uncomment the following line, if udhcpc should not touch /etc/resolv.conf
STATIC_DNS="yes"
# Uncomment the following line if udhcpc should not install a default route
INSTALL_DEFAULT_ROUTE="no"

View File

@ -1,2 +1,5 @@
# Uncomment the following line, if udhcpc should not touch /etc/resolv.conf
# STATIC_DNS="yes"
#STATIC_DNS="yes"
# Uncomment the following line if udhcpc should not install a default route
#INSTALL_DEFAULT_ROUTE="no"

View File

@ -7,6 +7,7 @@ PACKAGE_INSTALL = "initramfs-framework-base initramfs-module-debug initramfs-mod
#export IMAGE_BASENAME = "core-image-minimal-initramfs"
IMAGE_LINGUAS = ""
FEED_URIS=""
LICENSE = "MIT"

View File

@ -0,0 +1,43 @@
DESCRIPTION = "rescue initramfs"
PACKAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${ROOTFS_PKGMANAGE} rauc dropbear"
IMAGE_LINGUAS = ""
FEED_URIS=""
LICENSE = "MIT"
# cpio config
XZ_COMPRESSION_LEVEL = "-e -9 --lzma2=dict=512KiB"
XZ_THREADS = "-T 0"
XZ_INTEGRITY_CHECK = "crc32"
IMAGE_FSTYPES = "cpio.xz"
BAD_RECOMMENDATIONS_append = " busybox-syslog kbd kbd-consolefonts kbd-keymaps"
BAD_RECOMMENDATIONS_append_sysmobts-v2 = " e2fsprogs-e2fsck"
BAD_RECOMMENDATIONS_append_sysmocom-odu = " e2fsprogs-e2fsck"
BAD_RECOMMENDATIONS_append_gsmk-owhw = " e2fsprogs-e2fsck"
inherit core-image
require recipes-apps/images/image-manifest.inc
shrink_rescue() {
# The kernel should not be in the initramfs
rm -rf ${IMAGE_ROOTFS}/boot
# In case of the sysmoBTS.. remove files
rm -rf ${IMAGE_ROOTFS}/lib/firmware/sysmobts*
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/staging/sysmobts/msgqueue.ko
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/misc/fpgadl.ko
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/staging/sysmobts/rtfifo.ko
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/misc/dspdl.ko
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/misc/dspdl_dm644x.ko
rm -rf ${IMAGE_ROOTFS}/lib/modules/*/kernel/drivers/misc/fpgadl_par.ko
# Who cares about udev?
rm -rf ${IMAGE_ROOTFS}/lib/udev/hwdb.d/*
rm -rf ${IMAGE_ROOTFS}/etc/udev/hwdb.bin
}
IMAGE_PREPROCESS_COMMAND += "shrink_rescue; "

View File

@ -1,12 +1,13 @@
DESCRIPTION = "slot initramfs"
PACKAGE_INSTALL = "initramfs-framework-base initramfs-module-debug initramfs-module-rauc-overlay busybox udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
PACKAGE_INSTALL = "initramfs-framework-base initramfs-module-debug initramfs-module-rauc-overlay initramfs-module-rauc-backup busybox base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
# Do not pollute the initrd image with rootfs features
#IMAGE_FEATURES = ""
#export IMAGE_BASENAME = "core-image-minimal-initramfs"
IMAGE_LINGUAS = ""
FEED_URIS=""
LICENSE = "MIT"

Some files were not shown because too many files have changed in this diff Show More