Compare commits

...

288 Commits

Author SHA1 Message Date
Oliver Smith 7a2e31aa6b Update Osmocom recipes (202309 patch releases)
Related: OS#6198
Change-Id: I3f4e149c8f5b61a2ad8322754ed3623a566d85b6
2023-12-18 14:07:56 +01:00
Pau Espin 7898066cc6 osmo-bts:Bump version to tag 1.7.1 2023-10-31 17:22:14 +01:00
Pau Espin b66e0ec846 osmo-pcu: Bump version to tag 1.3.1 2023-09-15 11:44:38 +02:00
Pau Espin 4f81666c78 Update Osmocom recipes to latest tags (release 202309) 2023-09-13 14:18:12 +02:00
Oliver Smith 62233ca068 openvpn: bring back "openvpn@.service"
Restore "openvpn@.service" from packaging of openvpn 2.3.6, so we can
start the sysmocom vpn the same way as currently described in the
manuals.

Previous patch 8439e71a99 already
attempted to do this, but only brought back "openvpn.service" and not
"openvpn@.service".

Fixes: 8439e71a ("openvpn: bring back openvpn.service file")
Related: SYS#6303
Change-Id: I28a7f491d74690409f815555743679c69e31b518
2023-06-12 13:06:13 +02:00
Oliver Smith 9c9857bc26 dropbear: depend on sftp-server
Related: SYS#6403
Change-Id: Ieb8d386d92e47cd37174e4d816c3a2126174ce72
2023-05-03 16:59:51 +02:00
Oliver Smith cc8ad7cde7 dropbear: do not disable root login
Related: SYS#6402
Change-Id: Ie9ef36f3008c6f8054f4e8164000a2e9e80c53d9
2023-05-03 16:59:05 +02:00
Oliver Smith fc7d6d4ae2 dropbear: fix build with our OE version
* Replace : with _
* Remove "virtual/crypt" from depends

Related: SYS#6402
Change-Id: Iebeb013ed2829e5008388eed7f8794eb5ae6dad0
2023-05-03 16:58:29 +02:00
Oliver Smith ce45a5bc79 dropbear: import 2022.83 from upstream OE
Import current packaging of dropbear from openembedded-core.git, commit
0defbb5925e309799162e221285e4cfb2e2c2ca5.

Related: SYS#6402
Change-Id: I431934b0558350931bb9571b0fa6efff8ba45387
2023-05-03 16:38:33 +02:00
Oliver Smith 7b7e522ccf recipes-fixes/dropbear: remove
Remove this directory to prepare to upgrade dropbear in following
patches. The directory made changes to the sysvinit script that was
used by pre-201705 systems (SYS#691). 201705 uses systemd services
instead.

On a side note, all customizations made to the init script had been
upstreamed into OE.

Related: SYS#6402
Change-Id: Icb65a68091aff43c5c94ba961a650865a2784b65
2023-05-03 15:30:56 +02:00
Oliver Smith 3140454c3c sftp-server: new package
Package OpenSSH's sftp-server program, so we can install it as
dependency of dropbear in a future patch. Once sftp-server is installed,
the scp tool from OpenSSH can be used with the SFTP protocol, without
enabling the legacy flag for the legacy SCP protocol.

The sftp-server binary is 126K in size.

After packaging this, I realized that we could also have used
the openssh-sftp-server package from poky:
https://gitea.sysmocom.de/sysmo-bts/generic-poky/src/branch/pyro/meta/recipes-connectivity/openssh
But let's use this extra package now, it uses the most recent OpenSSH
source and doesn't build the rest of OpenSSH which we don't need.

Related: SYS#6403
Change-Id: I376bc31413935f7a560afd916a623228550dc6fe
2023-05-03 15:30:56 +02:00
Oliver Smith 7588bee7fa gpsd: fix gpsd.hotplug udev rules
Adjust the bundled udev rules to use gpsd.hotplug instead of
gpsd.hotplug.wrapper, as the wrapper has been removed upstream.

Fix for:
systemd-udevd[1004]: failed to execute '/lib/udev/gpsd.hotplug.wrapper' '/lib/udev/gpsd.hotplug.wrapper': No such file or directory

Fixes: 6a8f914b ("gpsd: upgrade to 3.24")
Related: 711a3f8412
Related: SYS#6222
Change-Id: I95c9d1537a9a7090b1239aecef14f25f8d7ca554
2023-05-03 14:02:59 +02:00
Oliver Smith d69834d507 openvpn: bring back openvpn.service file
Restore the openvpn.service file from packaging of openvpn 2.3.6, so we
can still start it the same way (as currently described in manuals).

Related: SYS#6303
Change-Id: I2cf96bc1ecca79ae98be1181fbd3c15edad15ca8
2023-05-03 13:57:29 +02:00
Oliver Smith 89f6d2b1f0 sysmocom-openvpn-config: update config
Related: SYS#6303
Change-Id: If13ef523b13e15d3b1930396ae67a729a080a3b7
2023-05-03 13:56:52 +02:00
Harald Welte d950005138 openvpn: upgrade openvpn from 2.3.6 to 2.5.8
Our openvpn server has meanwhile been migrated to 2.5.x, and
establishing backwards compatibility with 2.3.x means we have to
disable ciphers + tls versions that are no longer considered secure.

Related: SYS#6303
2023-05-03 13:56:42 +02:00
Oliver Smith fae46a5d5a gpsdate: upgrade to fix build against new gpsd
Upgrade gpsdate to the latest commit, where the build against newer gpsd
was fixed.

Related: SYS#6222
Change-Id: Ia83008933a1e94e556b6908903ad7b63759fc1e3
2023-05-03 13:56:32 +02:00
Oliver Smith 0543e7992b gpsd: upgrade to 3.24
Usually when upgrading packages, we just copy the upstream package and
adjust it slightly. I've looked at the upstream package here:
https://git.openembedded.org/meta-openembedded/tree/meta-oe/recipes-navigation/gpsd
(HEAD at f3d14d41ad60d2d52a0ea795ae10fe0882146ed1)

But as I compared both packaging trees, I found ours is quite different
than upstream. We have a lot of additional patches, still use python2 and
have these extra files:

├── gpsd
│   ├── 60-gpsd.rules
│   ├── gpsd
│   ├── gpsd-default
│   ├── gpsd.service
│   ├── oc2g
│   │   ├── gpsd-default
│   │   └── gpsd.service
│   ├── sysmobts2100
│   │   └── gpsd-default
│   ├── sysmobts-v2
│   │   └── gpsd-default
│   └── sysmocom-idu
│       └── gpsd-default

Therefore I didn't start with the upstream packaging but instead
increased the gpsd version in our packaging and went through each patch
to see if it can be dropped or needs to be forward ported.

Change the version by renaming the .bb file. Reset the version of the
recipe (PR) back to "r0" again, as it is common practice after changing
the package version. The previous value "r3.20" looked a bit like a
package version, but it's not that.

Rebase patches:
* 0001-gps2udp-Add-a-label-timestamp-and-mac-address-to-eac.patch
* 0002-gps2udp-leave-argv-untouched.patch (leave-argv-untouched.patch)
* 0003-tsip-configure-and-enable-1PPS.patch (gpsd-tsip-pps.patch)

Add build fixes:
* 0004-SConscript-force-use-of-pthread.patch

Drop patches:
* 0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch:
  unused in previous version
* 0001-SConstruct-disable-html-and-man-docs-building-becaus.patch:
  doesn't apply, instead disable docs building via manbuild='no'
* 0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch:
  not needed anymore (no splintopts line in 3.24)
* gpsd-3.3-ldflags.patch:
  fixed upstream
* no-rpath-please.patch:
  doesn't apply, not needed anymore (see 5df2de36 in gpsd.git)

Related: https://docs.yoctoproject.org/bitbake/2.2/bitbake-user-manual/bitbake-user-manual-ref-variables.html#term-PR
Related: SYS#6222
Change-Id: I2debe481c5f1cc4ee8290ad0dc883d6a4ea73741
2023-05-03 13:56:23 +02:00
Oliver Smith f9db945110 gpsd: cosmetic fixes in SRC_URI, EXTRA_OESCONS
Change-Id: Ic5af4db7bbce6ba0bf55387265fdfc95a1761230
2023-05-03 13:56:09 +02:00
Pau Espin 1778f7f9d9 osmo-{bts,pcu}: Fix systemd services to run against old systemd
Related: SYS#6340
2023-02-14 11:33:13 +01:00
Oliver Smith ec0d529df0 recipes/sysmobts/osmo-{bts,pcu}: build from tag
Build osmo-bts and osmo-pcu from the tag instead of the commit, so we
don't need to update the commit. This is how it works in
meta-telephony.git already.

Fixes: 9a554791 ("Update Osmocom recipes to latest tags (release 202302)")
Change-Id: Id55552c25dc49fee6d6b48f2b5c50b008104ba60
2023-02-13 17:38:38 +01:00
Pau Espin 3fc844e59a osmo-bts: Depend on libosmo-netif
Since osmo-bts.git a2dc808acc5b99122e97c9013cb1ec2ae0c4a2a1, osmo-bts
depends on libosmo-netif. Let's add the dependency when building.
2023-02-08 10:16:14 +01:00
Pau Espin 9a554791fe Update Osmocom recipes to latest tags (release 202302) 2023-02-08 10:14:22 +01:00
Oliver Smith b8f13e3224 git clones: git.osmocom.org -> gerrit.osmocom.org
Related: SYS#6022
Change-Id: Icaadf455515e03c505884e8fbef8fa052189418c
2022-09-20 13:27:46 +02:00
Oliver Smith ea8cea6735 git clones: update git.sysmocom.de urls
Related: SYS#6022
Change-Id: I1ebd33c26df99e288a281bd2946d6fe43a6a1c25
2022-09-16 15:31:56 +02:00
Oliver Smith 53dc1b9dfb git clones: protocol=git -> protocol=https
Related: SYS#6022
Change-Id: I3287ee8e7c688d900ee2821cb603a41a8d9067a7
2022-09-16 15:31:46 +02:00
Pau Espin accc8c4289 Update Osmocom recipes to latest tags (release 202206) 2022-06-29 13:51:42 +02:00
Pau Espin 705488de0c Move sysmocom-openvpn-config task-sysmocom-tools -> feed
Package sysmocom-openvpn-config was recently added to
task-sysmocom-tools. That task is pulled in by default into images. We
don't actually want that. Instead, we want the package to be available
in feeds, but without being installed into the image by default. Hence,
revert the recent commit and put the package in task-sysmocom-feed.bb
instead.

Fixes: d8cb7e21d0
Related: SYS#5734
2022-03-15 16:19:56 +01:00
Pau Espin f9fba03b36 task-sysmocom-feed: cosmetic: Split into one pkg per line 2022-03-15 16:16:51 +01:00
Pau Espin c0ec9b62e7 Revert "sysmocom-openvpn-config: Always start but rename the config file"
This reverts commit 34d053fbe8.

It was found that this patch (from 7 years ago) breaks upgrade path and
current behavior (user manual) of the sysmocom VPN.
It is expected that the systemd service openvpn.service is disabled by
default, and that the user simply has to enable/disable it to
enable/disable the sysmocom VPN.
This affects all images deployed until today, since until recently an
old sysmocom-openvpn-config package (from around 2013) was being used
during provisioning, instead of using the one we recently made available
into the regular 201705 feeds.

Related: SYS#5734
2022-03-15 14:01:49 +01:00
Harald Welte 9b11700f57 Merge pull request 'task-sysmocom-tools: add sysmocom-openvpn-config' (#5) from osmith/201705 into 201705
Reviewed-on: #5
2022-02-09 20:16:18 +00:00
Oliver Smith d8cb7e21d0 task-sysmocom-tools: add sysmocom-openvpn-config
Fix sysmocom-openvpn-config not getting built by adding it to
task-sysmocom-tools.

Related: SYS#5734
Change-Id: I918f1ef9170f4beefb6ac07ad08678c208476559
2022-02-09 11:22:41 +01:00
Harald Welte b417110988 Revert "migrate from git://github.com to https://github.com"
This reverts commit 8b9e304c23.

git:// doesn't have the same meaning to the bitbake fetcher than
it has to the rest of the world.
2022-01-11 12:18:35 +01:00
Harald Welte 8b9e304c23 migrate from git://github.com to https://github.com
The unauthenticated git protocol on port 9418 is no longer supported.

Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
2022-01-11 11:15:45 +01:00
Harald Welte 929e09d631 Merge pull request 'sysmocom-openvpn-config: drop old ip, add nobind' (#4) from osmith/201705 into 201705
Reviewed-on: #4
2021-11-30 11:56:43 +00:00
Oliver Smith 5631ba69b5 sysmocom-openvpn-config: drop old ip, add nobind
Related: SYS#5734
Change-Id: I464b88e2d18e9f5836e805bac99578429f8d0ebf
2021-11-30 11:46:05 +01:00
Pau Espin 1fbdff091b Update Osmocom recipes to latest tags (release 202111) 2021-11-17 13:03:51 +01:00
Harald Welte 42dbc46c36 Merge pull request 'ca-certificates: fix busybox error in post-upgrade' (#3) from osmith/201705 into 201705
Reviewed-on: #3
2021-11-16 16:26:45 +00:00
Oliver Smith 50145d6174 ca-certificates: fix busybox error in post-upgrade
Do not try to use "mktemp --tmpdir" in the update-ca-certificates
script. This broke upgrading, as the script gets executed during
post-upgrade.

Related: 66951d3b45
Related: SYS#5283
2021-11-16 08:43:45 +01:00
Harald Welte 2b77d822e7 ca-certificates: Fix back-port from modern OE/poky
We cannot just use the new upstream package but have to deal a bit
with package naming convention changes.

Fixes: cbc0de86f4
2021-11-05 12:17:34 +00:00
Harald Welte e862cd6912 Merge pull request 'ca-certificates: get rid of expired "DST Root CA X3"' (#2) from osmith/201705 into 201705
Reviewed-on: #2
2021-11-05 11:49:47 +00:00
Oliver Smith cbc0de86f4 ca-certificates: upgrade to 20211016
Import latest version from openembedded-core.git, which has the expired
"DST Root CA X3" removed.

Fixes: OS#5259
Related: 5b83fd9847
Related: 9c351e7a0b
Related: https://github.com/openembedded/openembedded-core/tree/hardknott/meta/recipes-support/ca-certificates/ca-certificates
2021-11-05 12:38:39 +01:00
Harald Welte dbe8d4b62e ca-certificates: Migrate from DST_X3 to ISRG_X1
Related: OS#5259
Change-Id: I8112e5ba3651ab537a87df5e92cfbc4214d54ab3
2021-11-05 12:37:22 +01:00
Oliver Smith acfacf68ae sysmocom-backup: include all of /etc/osmocom
Current list is missing osmo-sip-connector.cfg. Let's just include the
whole directory.

Fixes: SYS#5632
Change-Id: Ia2376aaa8c5aae90ce00a86fe616a913ecaf025d
2021-10-31 06:48:30 +00:00
Harald Welte 235563c6b0 task-sysmocom-feed: Add nfs-utils to make nfs client available
This allows users to install the nfs client from the package feed.

Closes: OS#5263
2021-10-14 10:13:56 +02:00
Pau Espin c75d0fe631 Introduce libosmocore_git.bbappend to fix TLS bug
Related: OS#5079
2021-04-21 14:59:17 +02:00
Pau Espin c99aa75ef8 Update Osmocom recipes to latest tags (release 202102) 2021-02-24 18:24:38 +01:00
Pau Espin Pedrol 7f34bf633c images: Introduce sysmocom-voice-sip-image.bb
This image contains a CS-only NITB with osmo-sip-connector.

Related: SYS#5326
2021-02-03 12:02:54 +01:00
Pau Espin Pedrol 70f5062cf1 task-sysmocom: Convert to tasks-sysmocom-cs to optionally include PS-domain apps
Related: SYS#5326
2021-02-02 20:22:57 +01:00
Pau Espin Pedrol 48182a62b9 task-sysmocom-legacy: Drop from feed: osmo-nitb, osmo-bsc-sccplite, osmo-bsc-nat
They are not maintained nor used anymore.
* osmo-bsc-sccplite: Use osmo-bsc from osmo-bsc.git instead.
* osmo-nitb: Use osmo-msc from osmo-msc.git instead.

Related: SYS#5247
2020-12-10 13:23:47 +01:00
Pau Espin 7d16100fd6 Update Osmocom recipes to latest tags (release 202001) 2020-01-07 13:04:36 +01:00
Daniel Willmann af88d3a232 Enable iu feature for sysmocom-bsc based machines
sysmocom-alix and sysmocom-apu2 are both based on sysmocom-bsc
Since we use those for the 3G starterkits add iu distro feature which
will install osmo-hnbgw and build osmo-msc and osmo-sgsn with iu
support.
2019-08-16 14:55:38 +02:00
Daniel Willmann 4fe1cbe60b task-sysmocom-tools: Package osmo-config-merge by default
Related: rt#27399
2019-08-15 15:32:04 +02:00
Daniel Willmann 6d5321eefb sysmocom-alix: Change serial console to 115200 baud
This is the baud rate we always use in our devices, don't change it now.

Related: rt#27399
2019-08-13 09:20:43 +02:00
Daniel Willmann 702c59f211 oc2g: Build OC2g support for osmo-pcu 2019-08-09 12:57:47 +02:00
Daniel Willmann 75693575e6 osmo_bts_git.bb: OC2G systemd/config files are installed by autotools 2019-08-09 12:57:47 +02:00
Pau Espin cccb44822a Update Osmocom recipes to latest tags (release 201908) 2019-08-09 12:57:42 +02:00
Pau Espin 14dc7f23b4 task-sysmocom-feed: Build osmo-pcap recipe
osmo-pcap recipe has been recently added to meta-telephony 201705, so
let's make sure it's available in feeds (and at the same time make sure
it builds fine over time).

Depends: meta-telephony.git I5bb85b118029d1559a958803184690a9d0f23e4a
2019-07-03 20:26:25 +02:00
Daniel Willmann 50579753a0 oc2g-sysdev-remap: Use systemd automount to mount /mnt/rom/*
The filesystems are now mounted in the same way the sysmobts2100
build does it.
This fixes the failing checkflash systemd service on the oc2g.

Related: SYS#4493
2019-05-29 17:43:46 +02:00
Daniel Willmann 584c1ccf10 oc2g: Mount the factory partition in the correct place
This is needed for osmo-bts to properly transmit on OC2g because it
contains calibration values for the amplifier. Without the transmit
power will be really low (probably just what leaks through the amp).
2019-03-20 17:29:53 +01:00
Daniel Willmann d66c6f7d7b oc2g: Fix gpsd to use the correct baudrate and port
The autobauding feature of gpsd would not work even once the correct port was
set. The systemd service file now sets the baudrate of 115200 before starting
gpsd.
2019-03-20 17:29:53 +01:00
Daniel Willmann 92196fd94f linux-litecell: Fix kernel version in recipe 2019-02-01 10:32:07 +01:00
Daniel Willmann caf8812ea4 osmo-bts: Fix config file path in newer osmo-bts 2019-02-01 10:32:05 +01:00
Daniel Willmann 1c914678ff python-enum: Fix error fetching from HTTP instead of HTTPS
Resolving pypi.python.org (pypi.python.org)... 151.101.112.223, 2a04:4e42:1b::223
Connecting to pypi.python.org (pypi.python.org)|151.101.112.223|:80... connected.
HTTP request sent, awaiting response... 403 SSL is required
2019-01-16 10:29:27 ERROR 403: SSL is required.
2019-02-01 10:31:15 +01:00
Omar Ramadan 41c877a983 Add machine configuration for OC-2G 2019-02-01 10:31:15 +01:00
Omar Ramadan c967731acb Add OC-2G to sysmocom bts image image task 2019-02-01 10:31:15 +01:00
Omar Ramadan c928243b6b osmo-bts changes for OC-2G 2019-02-01 10:31:12 +01:00
Omar Ramadan 45481b980f Add OC-2G firwmare 2019-01-31 17:31:54 +01:00
Omar Ramadan 9bfc2b3f8a systemd changes for OC-2G 2019-01-31 17:31:54 +01:00
Omar Ramadan 7951329ce3 Add OC-2G u-boot 2019-01-31 17:31:54 +01:00
Omar Ramadan 5e73c5543a Add OC-2G Linux 2019-01-31 17:31:54 +01:00
Omar Ramadan 4dd34c4f6d Add sysdev remap 2019-01-31 17:31:54 +01:00
Omar Ramadan 6eea372883 Add backup scripts needed by OC-2G device remap 2019-01-31 17:31:54 +01:00
Pau Espin 3b9fd8c796 osmo-bts: Package osmo-bts-virtual
This way we remove bitbake QA errors since osmo-bts-virtual.service was
not being shipped by any package.
2019-01-30 23:24:50 +01:00
Pau Espin 830229cdcf osmo-pcu: handle systemd and cfg files through autotools 2019-01-30 23:24:50 +01:00
Pau Espin 1fea555cc9 osmo-bts: handle systemd and cfg files through autotools 2019-01-30 23:24:50 +01:00
Pau Espin 96105ded43 Update osmo-pcu,osmo-bts to latest tag release 2019-01-30 23:24:45 +01:00
Pau Espin 1297b71953 task-sysmocom-feed: Add osmo-sysmon to feeds 2018-12-13 17:50:27 +01:00
Pau Espin 8e88c736b0 atftp: Update recipe to latest meta-oe to fix compilation issues 2018-08-10 12:41:49 +02:00
Pau Espin 04f60f5aa6 libksba: Remove old version, newer provided by poky pyro 2018-08-08 13:24:37 +02:00
Pau Espin 60f4b04f42 gnupg: Remove old 2.0.19 version
Nowadays we depend on poky pyro, which comes with newer v2.1.18.
2018-08-07 16:35:14 +02:00
Pau Espin 686fee5571 lc15: Fix parse error: expansion of REPOGITFN
I got th following error while building meta-sysmocom-bsp in my
ArchLinux setup, probably due to using a newer git version.

ExpansionError: Failure expanding variable REPOGITFN,
expression was ${@get_repo_gitfn(d, '.../system-images/git/meta-sysmocom-bsp/recipes-support/lc15-sysdev-remap/files', '')

REPOGITFN is expanded using function get_repo_gitfn in
gitver-repo.bbclass, which ends up calling:

git -C .../system-images/git/meta-sysmocom-bsp/recipes-support/lc15-sysdev-remap/files rev-list --count HEAD ''
fatal: empty string is not a valid pathspec. please use . instead if you meant to match all paths
2018-08-07 13:46:51 +02:00
Pau Espin b15b3f943c task-sysmocom-legacy: RDEPEND on sccplite osmo-bsc instead of 3GPP AoIP one 2018-05-28 12:06:17 +02:00
Pau Espin 1e96bb0495 osmo-bts: Update 0.8.0 to 0.8.1 (dyn ts fixes) 2018-05-16 11:51:16 +02:00
Pau Espin 2e18616585 osmo-{bts,pcu}: Update to latest release 2018-05-06 22:13:20 +02:00
Pau Espin 181ebdd952 linux-sysmocom: Enable SCTP as built-in for alix and apu2 2018-04-05 18:34:25 +02:00
Pau Espin 5420090972 sysmocom-backup: Update list of backup files 2018-04-05 15:51:01 +02:00
Pau Espin 9fde00db04 sysmocom-nitb-image: Drop osmo-nitb leftovers
osmo-nitb is not used anymore. Furthermore, all new services are enabled
by default now.
2018-04-05 15:39:27 +02:00
Pau Espin af59eeb881 Drop sysmocom-bsc-image.bb
It's not actually being built by any job, and its contents are anyway
wrong since it basically pulls in the same as the sysmocom-nitb-image.

Initially it made sense to have these 2 images because we either
connected the BTS to osmo-bsc or osmo-nitb. This is no longer the case
since we deprecated osmo-nitb, and now it always connects to osmo-bsc.

The initiall idea after osmo-nitb split was to have a sysmo-bsc-image
containing only osmo-bsc, and then a sysmocom-nitb-image superseeding
it by installing all other core network components such as hlr, msc, etc.

Since there's no real need for that now, and in any case we can just
duse the nitb one and disable the extra services, let's drop the bsc
one.
2018-04-05 15:31:32 +02:00
Pau Espin f2daa6fe97 Add dnsmasq to machines with role bsc, not only sysmocom-bsc-image
This way we have it too in sysmocom-nitb-image, but only when needed,
that is: when we build for a machine inheritinh from sysmocom-bsc, which
is a machine not containing any BTS HW and thus requires a BTS connected
to it, so it needs a DNS server to serve it.
2018-04-05 15:26:30 +02:00
Pau Espin b5343fa75a conf: machine: refactor sysmocom-{bsc,alix,apu2}.conf
According to MACHINEOVERRIDES, alix and apu2 are subclass machines of
sysmocom-bsc (abstract superclass). However, only alix requires
sysmocom-bsc.conf. Make both alix and apu2 requires sysmocom-bsc.conf,
and move alix specific stuff to sysmocom-alix.conf.

In the process, linux-firmware-rtl-nic is removed from RDEPENDS for
apu2, since it doesn't use RTL nic but e100e/igb ones.

As a result of these movements, osmo-bsc.conf is actually empty, but
it's left there for future additions which have to affect both machines:
ie. adding stuff which is expected for "bsc" role on machines containing
no BTS.
2018-04-05 15:24:39 +02:00
Pau Espin e4e0793cb5 sysmocom-bsc-image: Remove already defined IMAGE_LINGUAS
It is already set in imported sysmocom-image.inc.
2018-04-05 14:52:25 +02:00
Pau Espin a00799a110 linux-sysmocom: apu2: defconfig: enable IGB config to enable eth ifaces
Otherwise the ifaces are not detected.
2018-04-05 14:22:34 +02:00
Pau Espin 1b0ec652ab init-install: Fix grub menuentry gen after poky upgrade
After upgrading to poky pyro, generation of grub2 menuentry in grub2
became broken. Our init-install.sh script, origianlly coming from an old
poky version, was modified in poky
c2e63957d5abaa4bb10507da5ba16f01112d0bf5 to adapt to the fact that
/etc/grub.d/40_custom was not there anymore. We need to do the same,
otherwise the menyentry is not appended to the grub config and the
installed image won't boot correctly.
2018-04-05 13:11:37 +02:00
Pau Espin 63092f6c83 initramfs-live-install: Add missing dep resize2fs required by our own init-install.sh 2018-04-04 20:17:32 +02:00
Pau Espin ea49b321ac initramfs-live-install: adapt to new mountpoint in /run
Since new poky/base components, automount mounts devices in /run/media,
not /media anymore.
2018-04-04 20:09:15 +02:00
Pau Espin e626b7950b busybox: defconfig: Enable stat cmd, required by initiramfs
poky script ./meta/recipes-core/udev/udev-extraconf/mount.sh is called
by systemd-udev rules every time a storage device is found, and it is
responisble to automount them. The init script waits until the device is
automounted to finish the boot process.

The mount.sh script sues "stat", and right now our busybox doesn't have
it enabled. As a result, stat is not found, the script fails, the
device is not mounted, and the init script hangs forever.
2018-04-04 19:44:49 +02:00
Pau Espin cbea0a81ad busybox: defconfig: update using make oldconfig
New options are assigned default values.

Make oldconfig was called by using bitbake -c devshell, then copying
../defconfig .config && make oldconfig.
2018-04-04 19:32:47 +02:00
Pau Espin 9732cc567a recipes-core: busybox: Remove dangling files for old versions
bbappend files were removed in 9b654e0a7d,
when it was decided to drop support for poky versions older than pyro.
2018-04-04 18:42:29 +02:00
Pau Espin 96674981e4 recipes-apps: busybox: Remove dead recipe files
All those files were moved to recipes-core in 6431d35a85
2018-04-04 18:27:53 +02:00
Pau Espin 8869b1c103 linux-sysmocom: apu2: Enable XHCI USB support
Without it, the kernel doesn't detect USB devices plugged to the
external usb3 ports of the apu2.
2018-04-04 16:56:47 +02:00
Pau Espin 57b0c39ba3 linux-sysmocom: Split defconfig for alix and apu2
As defconfigs will diverge, let's keep them separate.
2018-04-04 16:48:50 +02:00
Pau Espin 5dd16300a1 linux-sysmocom: bsc: Update defconfig for newer kernel 2018-04-04 16:26:34 +02:00
Pau Espin 14eb93657a task-sysmocom-tools: Keep abisip-find after split from osmo-bsc package 2018-03-27 17:42:43 +02:00
Pau Espin 09ad4b6153 task-sysmocom: Remove no longer used osmo-bsc-mgcp
Since osmo-msc a2353c69cc3d2ccc7caee4571b3b8d2a98961150 and
osmo-bsc 3561bd48976dbee8dbd4659dad15be85a3e79ace osmo-bsc-mgcp support
is dropped in favour of osmo-mgw and one instance of osmo-mgw can be
shared between osmo-msc and osmo-bsc.
2018-03-27 17:42:30 +02:00
Pau Espin 6c3b089c8f osmo-bts: sysmo-bts-calib is now handled inside autotools
Since osmo-bts bef6eae05b959b2ce395b3f949675d2a93053f0d sysmobts-calib
is integrated into autotools build system.
2018-03-27 17:42:20 +02:00
Pau Espin 9a59237a7e osmo-bts,pcu: Update to latest master 2018-03-27 17:34:37 +02:00
Pau Espin d843a8b8fb osmo-bts: stop fetching no longer needed openbsc 2018-03-27 17:31:20 +02:00
Pau Espin 56fa1a1a4b osmo-bts: Remove orphaned unused patch
This patch is not longer used since the complete declaration of the
function was removed from the header file in osmo-bts
085569df55ceb3737b79f53b015b0c064698ddc6.
2018-03-23 13:26:17 +01:00
Pau Espin 21defd1df2 task-sysmocom-feed: Add osmo-sip-connector to feeds 2018-02-16 17:42:34 +01:00
Pau Espin bc8fdb3950 lc15-firmware: Update to latest stable to fix RTP clock issues
According the Nuran there is a fix available for this issue in
litecell15-fw.git d7f05ac0b0fc9aab497d952e30c0c87b223e6b16

Related: OS#2412
2018-02-13 12:32:18 +01:00
Pau Espin adff5f7cbc lc15-firmware: Fix whitespace 2018-02-13 12:29:35 +01:00
Pau Espin 24c8cd67a2 task-sysmocom: depend on osmo-bsc-mgcp after osmo-mgw package split
osmo-mgw recipe in meta-telephony has been updated to generate several
packages. Right now, osmo-bsc requires osmo-mgw service, but osmo-msc
still requires osmo-bsc-mgcp, so let's add both to the image.
2017-12-11 18:35:21 +01:00
Pau Espin 50c63c463d Update PV for osmo-bts 2017-12-11 18:35:09 +01:00
Harald Welte 6148c8905a sysmobts-v2/sysmocom-{apu2,bsc,idu}: Update to v4.9.59 kernel 2017-12-11 18:34:19 +01:00
Harald Welte 6c794af995 Set up osmocom recipes to current git master 2017-12-11 18:33:33 +01:00
Pau Espin 77c74e4de1 osmo-pcu: Use CONFFILES for osmo-pcu.cfg 2017-12-04 18:54:12 +01:00
Pau Espin 7b700ba0a0 Drop openggsn config leftovers 2017-12-01 15:57:22 +01:00
Pau Espin 5ced13ee7e task-sysmocom: Add osmo-hnbgw to image if feature iu is enabled 2017-10-18 11:49:49 +02:00
Pau Espin aaf283eaea linux: sysmocom-apu2: Enable defconfig CONFIG_IP_NF_TARGET_MASQUERADE
After switch to linux 4.9.14, make oldconfig run by OE was disabling
CONFIG_IP_NF_TARGET_MASQUERADE even if original defconfig had it enabled
as a module. This target is required for osmo-ggsn.
2017-10-05 17:38:28 +02:00
Pau Espin e88637d7c3 linux: sysmocom-bsc: Update defconfig to kernel 4.9.14
Update with default values after make oldconfig.
2017-10-05 17:24:15 +02:00
Pau Espin f762835c6e task-sysmocom: Add task-gprscore (sgsn+ggsn) to nitb image 2017-09-27 20:34:15 +02:00
Pau Espin c86dbaa2ae task-sysmocom: replace openbsc projects with new split repos 2017-09-27 20:32:39 +02:00
Pau Espin e1793e0a07 task-gprscore: Replace openggsn with osmo-ggsn
Openggsn has been dropped in favour of osmo-sgsn in meta-telephony. Do
the same here.
2017-09-27 20:32:39 +02:00
Pau Espin b965420462 Add task-sysmocom-legacy
This new package group contains what used to be the "task-sysmocom"
group, with an osmo-nitb. In turn, task-sysmocom.bb will be changed to
use new git repositories.
2017-09-27 20:32:39 +02:00
Pau Espin 1af75ceceb Update osmocom versions to point to current master 2017-09-27 20:32:39 +02:00
Pau Espin 373fd0eda7 fixup: kernel bump PR 2017-09-27 20:32:39 +02:00
Pau Espin acd67b3037 linux: 4.9: remove deprecated module_autload_* variables
According to documentation, they are deprecated by
KERNEL_MODULE_AUTOLOAD:

WARNING: linux-sysmocom-4.9.14+gitAUTOINC+8d5d275254-r1 do_package: module_autoload_leds-gpio was replaced by KERNEL_MODULE_AUTOLOAD for cases where basename == module name, please drop it
2017-09-27 20:32:39 +02:00
Pau Espin 1237592c92 linux: sysmobts-v2: Enable defconfig CONFIG_IP_NF_TARGET_MASQUERADE
After switch to linux 4.9.14, make oldconfig run by OE was disabling
CONFIG_IP_NF_TARGET_MASQUERADE even if original defconfig had it enabled
as a module. This target is required for osmo-ggsn.
2017-09-27 20:32:39 +02:00
Pau Espin 2200c8a4ae linux: sysmobts-v2: Update defconfig to kernel 4.9.14
Update with default values after make oldconfig.
2017-09-27 20:32:39 +02:00
Pau Espin 0f1a73c0ff Introduce sysmocom-core-rauc-image
It's the same as existing sysmocom-nitb-rauc-image, but using
sysmocom-core-image as a base instead of sysmocom-nitb-image.
2017-09-08 12:01:12 +02:00
Pau Espin a9c8982a12 osmo-pcu: Fix QA issue: --enable-sysmocom-bts doesn't exist
WARNING: osmo-pcu-0.4+gitAUTOINC+0cd8e4eade-r5.18 do_configure: QA Issue: osmo-pcu: configure was passed unrecognised options: --enable-sysmocom-bts [unknown-configure-option]

Looking at ./configure --help in osmo-pcu, that option doesn't seem to
be available. The recipe is already using --enable-sysmocom-dsp too,
which is correct.

Commit d32cbbb13087eae2617920d4ea980f0e8869a89e changed --enable-sysmocom-bts to --enable-osmo-bts.
Later on, commit 08e5d604d3fce75b955549244b36fde62f20894b removed --enable-osmo-bts option.
2017-09-06 12:26:24 +02:00
Harald Welte 69092958cf autossh: Add download mirror as upstream source disappeared 2017-08-30 08:30:03 +02:00
Pau Espin d7053d5923 osmo-bts: Update SRCREV to current master
This version upgrade included required lc15-bts-mgr changes in
6fe823a7e1aa350584e60ad1813e3e154bbd003a.
2017-08-18 15:12:42 +02:00
Holger Hans Peter Freyther d4d3fb8b23 sysmobts: Change the compiler-gcc*.h to work with gcc5,6,7 and later
In the past I copy and pasted the compiler-gcc4.h to have gcc-5.h and
gcc-6.h suffix. I didn't want to do the same for gcc7 and cherry picked
the original commit. Not compile tested though.
2017-08-08 14:49:03 +08:00
Holger Hans Peter Freyther e5372b0e1d remove dora: We are exclusively using systemd and its watchdog handling 2017-08-08 14:49:03 +08:00
Holger Hans Peter Freyther f7a9058239 remove dora: No need to define an emtpy ROOTFS_PKGMANAGE_BOOTSTRAP
The variable is gone and so far we defined it to something empty in
the local.conf. No that dora support is dropped we can fix that.
2017-08-08 14:49:03 +08:00
Pau Espin 2638f83903 lc15-sysdev-remap: Set factory flash partition to readonly 2017-08-07 12:21:46 +02:00
Pau Espin a849d40a2a linux-litecell: Add patch to change led default trigger 2017-08-07 10:30:58 +02:00
Pau Espin f69a60d261 u-boot-litecell15: Update patch with sysmocom specific content
Add several more commands to flash from tftp.
2017-08-04 17:18:47 +02:00
Pau Espin 822f15f414 sysmobts2100.conf: Avoid dropping virtual/bootloader from EXTRA_IMAGEDEPENDS
Append to EXTRA_IMAGEDEPENDS instead of overriding it, as it is being
previously set by included litecell15.conf.
2017-08-04 10:43:20 +02:00
Pau Espin a3a16cab90 busybox-syslog: Enable mem buffer in syslog 2017-08-04 10:43:20 +02:00
Pau Espin c2a8cf4725 image: Avoid installing bsc and nitb in core image
Before this change, the packages were installed but not enabled to start
at boot time.
2017-08-04 10:43:20 +02:00
Pau Espin ea5a866673 Move ipaccess-utils from task-sysmocom to task-sysmocom-tools 2017-08-04 10:43:20 +02:00
Pau Espin bf6af59cf4 u-boot-litecell15: Use more generic name as default rootfs file for TFTP 2017-08-04 10:43:20 +02:00
Pau Espin 65c87d407a u-boot-litecell15: Add patch with sysmocom specific tweaks 2017-08-04 10:43:20 +02:00
Pau Espin 1db88449c5 sysmobts2100-devtools: Disable ext4 feature 64bit on generated filesystems
Current u-boot version cannot handle correctly ext4 formated with 64bit
option, which is enabled by default with recent versions of mkfs.ext4.

If option 64bit is enabled, u-boot reads the filesystem erroneously,
listing wrong directories or displaying some directories such as /boot
as empty, which forbids itself from loading the kernel and failing to
boot.

See #3733 and https://github.com/armbian/build/issues/279 for more
details.
2017-08-04 10:43:19 +02:00
Pau Espin 27a2040428 Add recipe sysmobts2100-devtools 2017-08-04 10:43:19 +02:00
Pau Espin bd3df0bfff task-sysmocom-bts: Add gpsdate
This way RTC will be updated to correct time once there's a GPS fix
after each boot.
2017-08-04 10:43:19 +02:00
Pau Espin ab9e4afa3a gpsdate: use systemd.bbclass
Also update SRCREV to one commit forward, which fixes installing the
service file when using systemctl enable (which OE uses).
2017-08-04 10:43:19 +02:00
Max 9e9fd0a020 sbts2100: cleanup kernel config
* remove commented lines
* remove tcrypt module which fails to load on the device anyway
2017-08-04 10:43:19 +02:00
Pau Espin 5ba7c52b06 gpsd: Update udev rules syntax for u-blox 4
Fixes following error during boot:
systemd-udevd[1953]: Invalid rule /etc/udev/rules.d/60-gpsd.rules:43: unknown key 'SYSFS{idVendor}'
2017-08-04 10:43:19 +02:00
Pau Espin 0707a1dc06 osmo-bts: Install correct service file for lc15bts-mgr.service 2017-08-04 10:43:19 +02:00
Pau Espin 8ef336e223 Replace base_contains with bb.utils.contains
base_contains is marked as deprecated and the build log outputs lots of lines stating so.
2017-08-04 10:43:19 +02:00
Pau Espin 7990e01fcd Replace systemd_unitdir/system with systemd_system_unitdir 2017-08-04 10:43:19 +02:00
Max c8c2531e08 Package built kernel modules
This ensures that module built from
/recipes-bsp/linux/linux-litecell15_4.4.32.bb are included into
sysmobts2100 rootfs.
2017-08-04 10:43:19 +02:00
Harald Welte eb4fcc8183 Import zeromq and its dependency libsodium from meta-oe.git
http://cgit.openembedded.org/meta-openembedded/plain/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb
http://cgit.openembedded.org/meta-openembedded/plain/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.6.bb
2017-08-04 10:43:19 +02:00
Max ca35320a2d gpsd: fix build by adding missing *systemd stuff 2017-08-04 10:43:19 +02:00
Max 03d679aaab Attempt to fix gpsd build
Backport changes from
upstream (https://layers.openembedded.org/layerindex/branch/master/layer/meta-oe/):

* add systemd support
* remove obsolete idu-specific install
* remove copy-pasted commented strings to simplifa comparison
2017-08-04 10:43:19 +02:00
Max 15cb1d0902 Use gpsd.service for sysmobts2100
This should superceed the broken initscript and fix gpsd startup.
2017-08-04 10:43:19 +02:00
Max b1b0a45698 Add kernel modules to match lc15
Modules in lib/ net/ and mtd/ are ignored as they do not seem to be
relevant. Previous patch did not include it due to interdependency
problems between kernel modules which are not resolved
automatically. This is fixed now.
2017-08-04 10:43:19 +02:00
Max 566de3c67d sysmobts2100: add missing kernel modules 2017-08-04 10:43:19 +02:00
Harald Welte 8dfafd7aca n2n: Add systemd integration (service file + start script)
This allows for configuration of tunnels by putting config files into
/etc/n2n/ similar to what we're used to from /etc/openvpn/
2017-08-04 10:43:19 +02:00
Harald Welte 203b5da2b5 n2n: RRECOMMEND the tun kernel module
this way the tun module should be automatically installed with n2n
together.
2017-08-04 10:43:19 +02:00
Max 75dc0a693a Automount /mnt/rom/user partition 2017-08-04 10:43:19 +02:00
Max c50e63d550 Adjust systemd dependencies
* use systemd class to auto-enable installed services
* make sure lc15-sysdev-remap is started before lc15bts-mgr
* keep BTS-specific name to enable adjustment via service file template
  in future versions
2017-08-04 10:43:19 +02:00
Max 62f1eaed42 sysmobts2100: automount extra partitions 2017-08-04 10:43:19 +02:00
Max e1bcfeb0f5 Add lc15-sysdev-remap to sysmobts2100 rootfs 2017-08-04 10:43:19 +02:00
Max 7b529371dd BTS-specific install of sysmobts-mgr.service
Move sysmobts-mgr.service installation into per-BTS functions: use
BTS-specific config file via appropriate service name.

Related: SYS#3686
2017-08-04 10:43:19 +02:00
Max cc4ab049af Use service name matching binary name
Rename:
sysmobts -> osmo-bts-sysmo (available in master since 114293a414bd5b7c86622ec8c293c4034c80d243)
sysmopcu -> osmo-pcu (available in master since 241f5bcb00f9c6fee4200a3aea9aa497bf0d3eee)

Old names are still available via alias.
2017-08-04 10:43:19 +02:00
Max a121475a64 Import lc15-sysdev-remap from meta-nrw-bsp
Note: the script is imported as-is, but .bb file is modified because we
use .service file from previous patch instead of init file. I'm not
familiar enough with bitbake to be sure that the changes are correct so
I'd appreciate thorough review.
2017-08-04 10:43:19 +02:00
Harald Welte 8777422cfc Add recipe for n2n L2-in-L3 peer-to-peer VPN protocol
This is a basic recipe, not including any configuration or systemd
service files yet.
2017-08-04 10:43:19 +02:00
Harald Welte 40e3e9a646 Add omapconf recipe from aarago-project.org
specifically, recipe was fetched via
http://arago-project.org/git/?p=meta-arago.git;a=blob_plain;f=meta-arago-extras/recipes-devtools/omapconf/omapconf_git.bb;hb=master
2017-08-04 10:43:19 +02:00
Harald Welte e77c036a3d Revert "osmo-bts: Config file in 'stable' version is still in different path"
This reverts commit 4f8f48035a, as it was
only needed for master, but not for nightly
2017-08-04 10:43:19 +02:00
Harald Welte 00607e2b6c upload_nightly.sh: Enable use for different machines 2017-08-04 10:43:19 +02:00
Harald Welte 160687ed71 don't use gcc6 linking patch on nightly builds 2017-08-04 10:43:19 +02:00
Holger Hans Peter Freyther 1af79c6d0e upload_nightly.sh: Add simple upload script for the nightly build
Instead of placing it on the Jenkins node and not being under SCM
let's put it here and keep it in this branch.
2017-08-04 10:43:19 +02:00
Harald Welte 5fdc64f098 Update SRCREV to current master for osmo-bts and osmo-pcu 2017-08-04 10:43:19 +02:00
Holger Hans Peter Freyther 9b654e0a7d Drop multi OpenEmbedded version support and target pyro or later
Move the shared files into yocto-fixes/ and the files from master. The
next step is maybe to remove the indirection again. We will see about
it in the future.
2017-08-04 14:15:05 +08:00
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
310 changed files with 24434 additions and 5065 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

@ -30,8 +30,12 @@ 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 for systemd
PACKAGECONFIG_pn-systemd = "ldconfig"
# 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

@ -3,13 +3,10 @@ BBPATH := "${BBPATH}:${LAYERDIR}"
# We have a packages directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILES += "${LAYERDIR}/yocto-shared/*.bbappend"
# Now we will need to include the matching fixes for a yocto version
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"
# Fixes for the yocto version targeted
BBFILES += "${LAYERDIR}/yocto-fixes/*.bbappend ${LAYERDIR}/yocto-fixes/*/*.bb"
BBFILE_COLLECTIONS += "sysmocom-bsp"
BBFILE_PATTERN_sysmocom-bsp := "^${LAYERDIR}/"

View File

@ -4,7 +4,7 @@
require conf/machine/include/ti33x.inc
IMAGE_FSTYPES += "ubi tar.gz"
IMAGE_FSTYPES += "ubifs"
SERIAL_CONSOLE = "115200 ttyO0"
@ -37,5 +37,5 @@ PREFERRED_PROVIDER_virtual/bootloader = "barebox-gsmk-owhw"
EXTRA_IMAGEDEPENDS += "barebox-gsmk-owhw"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "\
kernel usb2514 \
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.84+git%"
PREFERRED_VERSION_linux-sysmocom = "${@dict([('1.5', '3.10.84+git%')]).get(d.getVar('DISTRO_VERSION', True)[0:3],'4.9.59+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"

59
conf/machine/oc2g.conf Normal file
View File

@ -0,0 +1,59 @@
#@TYPE: Machine
#@NAME: OC-2G
#@DESCRIPTION: Machine configuration for the NRW OC-2G BTS
# (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-oc2g"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-oc2g"
PREFERRED_PROVIDER_u-boot = "u-boot-oc2g"
IMAGE_FSTYPES += "tar.gz"
SERIAL_CONSOLE = "115200 ttyS2"
UBOOT_MACHINE = "oc2g_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"
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-adl5501 \
kernel-module-industrialio-buffer-cb \
kernel-module-input-polldev \
kernel-module-iio-hwmon \
kernel-module-ntc-thermistor \
kernel-module-mcp47x6 \
kernel-module-xilinx-xadc \
kernel-module-industrialio \
kernel-module-omap-remoteproc \
kernel-module-fpgadl \
"
MACHINE_EXTRA_RDEPENDS = "\
task-sysmocom-bts \
${@['watchdog', ''][d.getVar('VIRTUAL-RUNTIME_init_manager', True) == 'systemd']} \
"
KERNEL_VERSION_SANITY_SKIP="1"
EXTRA_IMAGEDEPENDS += "sysmobts2100-devtools"

View File

@ -0,0 +1,26 @@
# 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-adl5501 \
kernel-module-industrialio-buffer-cb \
kernel-module-input-polldev \
kernel-module-iio-hwmon \
kernel-module-ntc-thermistor \
kernel-module-mcp47x6 \
kernel-module-xilinx-xadc \
kernel-module-industrialio \
kernel-module-omap-remoteproc \
kernel-module-fpgadl \
"
MACHINE_EXTRA_RDEPENDS = "\
task-sysmocom-bts \
${@['watchdog', ''][d.getVar('VIRTUAL-RUNTIME_init_manager', True) == 'systemd']} \
"
EXTRA_IMAGEDEPENDS += "sysmobts2100-devtools"

View File

@ -0,0 +1,41 @@
#@TYPE: Machine
#@NAME: common_pc
#@DESCRIPTION: Machine configuration for sysmocom alix2d based hardware
require sysmocom-bsc.conf
TARGET_ARCH = "i586"
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.59+git%')}"
require conf/machine/include/tune-geode.inc
MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi"
KERNEL_IMAGETYPE = "bzImage"
IMAGE_FSTYPES ?= "tar.gz ext4"
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 = "\
${@['', 'busybox-ifplugd'][d.getVar('DISTRO_VERSION', True)[0:3] == '1.5']} \
linux-firmware-rtl-nic "

View File

@ -0,0 +1,39 @@
#@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
require sysmocom-bsc.conf
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.59+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"

View File

@ -1,38 +1,7 @@
#@TYPE: Machine
#@NAME: common_pc
#@DESCRIPTION: Machine configuration for running a common x86
MACHINEOVERRIDES = "${MACHINE}:sysmocom-bsc"
TARGET_ARCH = "i586"
MACHINE_EXTRA_RDEPENDS = "\
dnsmasq \
"
PREFERRED_PROVIDER_virtual/libgl = "mesa-dri"
PREFERRED_PROVIDER_virtual/libx11 ?= "libx11-trim"
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)]}"
require conf/machine/include/tune-geode.inc
MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi"
KERNEL_IMAGETYPE = "bzImage"
IMAGE_FSTYPES ?= "tar.gz ext4"
SERIAL_CONSOLE = "38400 ttyS0"
MACHINE_CONSOLE = "console=ttyS0,38400n8"
# 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 = "\
${@['', 'busybox-ifplugd'][d.getVar('DISTRO_VERSION', True)[0:3] == '1.5']} \
linux-firmware-rtl-nic "
DISTRO_FEATURES_append = " iu "

View File

@ -7,10 +7,11 @@ 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.59+git%')}"
MACHINE_FEATURES += "kernel26 x86 usbhost pci acpi"

View File

@ -7,6 +7,8 @@ SRC_URI = "http://www.harding.motd.ca/autossh/autossh-${PV}.tgz \
file://020_use_destdir_makefile.diff \
file://022_pass_ldflags.diff"
MIRRORS_append = "\n http://www.harding.motd.ca/autossh/.* https://downloads.sysmocom.de/public/mirror/source/ \n"
SRC_URI[md5sum] = "f86684b96e99d22b2e9d35dc63b0aa29"
SRC_URI[sha256sum] = "9e8e10a59d7619176f4b986e256f776097a364d1be012781ea52e08d04679156"

View File

@ -1,77 +0,0 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: sysklogd
# Required-Start: $remote_fs $time
# Required-Stop: $remote_fs $time
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: System logger
### END INIT INFO
set -e
if [ -f /etc/syslog.conf ]; then
. /etc/syslog.conf
LOG_LOCAL=0
LOG_REMOTE=0
for D in $DESTINATION; do
if [ "$D" = "buffer" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -C$BUFFERSIZE"
LOG_LOCAL=1
elif [ "$D" = "file" ]; then
if [ -n "$LOGFILE" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -O $LOGFILE"
fi
if [ -n "$ROTATESIZE" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -s $ROTATESIZE"
fi
if [ -n "$ROTATEGENS" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -b $ROTATEGENS"
fi
LOCAL=0
elif [ "$D" = "remote" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -R $REMOTE"
LOG_REMOTE=1
fi
done
if [ "$LOG_LOCAL" = "1" -a "$LOG_REMOTE" = "1" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -L"
fi
if [ "$REDUCE" = "yes" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -S"
fi
if [ "$DROPDUPLICATES" = "yes" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -D"
fi
if [ -n "$LOGLEVEL" ]; then
SYSLOG_ARGS="$SYSLOG_ARGS -l $LOGLEVEL"
fi
else
# default: log to 16K shm circular buffer
SYSLOG_ARGS="-C"
fi
case "$1" in
start)
echo -n "Starting syslogd/klogd: "
start-stop-daemon -S -b -n syslogd -a /sbin/syslogd -- -n $SYSLOG_ARGS
start-stop-daemon -S -b -n klogd -a /sbin/klogd -- -n
echo "done"
;;
stop)
echo -n "Stopping syslogd/klogd: "
start-stop-daemon -K -n syslogd
start-stop-daemon -K -n klogd
echo "done"
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: syslog { start | stop | restart }" >&2
exit 1
;;
esac
exit 0

View File

@ -1,22 +0,0 @@
DESTINATION="buffer" # log destinations (buffer file remote)
MARKINT=20 # intervall between --mark-- entries
LOGFILE=/var/log/messages # where to log (file)
REMOTE=loghost:514 # where to log (syslog remote)
REDUCE=no # reduce-size logging
#ROTATESIZE=0 # rotate log if grown beyond X [kByte] (incompatible with busybox)
#ROTATEGENS=3 # keep X generations of rotated logs (incompatible with busybox)
BUFFERSIZE=64 # size of circular buffer [kByte]
FOREGROUND=no # run in foreground (don't use!)
LOGLEVEL=6
# magic when a MMC card is mounted
USING_MMC_CARD=`/bin/mount | grep /media/mmcblk0p1 | wc -l`
if [ 1 -eq $USING_MMC_CARD ] ; then
if [ -e /media/mmcblk0p1/log ] ; then
echo "Using mmc card"
LOGFILE=/media/mmcblk0p1/log/messages
DESTINATION="file"
ROTATESIZE=2048
ROTATEGENS=20
fi
fi

View File

@ -1,14 +0,0 @@
require sysmocom-image.inc
IMAGE_LINGUAS = " "
# This variant of the image will run osmo-bts and osmo-bsc
activate_bsc() {
echo "NO_START=0" > ${IMAGE_ROOTFS}/etc/default/osmo-bsc
}
activate_systemd_bsc() {
ln -sf ${systemd_unitdir}/system/osmo-bsc.service ${IMAGE_ROOTFS}/etc/systemd/system/multi-user.target.wants/
}
IMAGE_PREPROCESS_COMMAND += "${@base_contains('DISTRO_FEATURES','systemd','activate_systemd_bsc','activate_bsc',d)}; "

View File

@ -1,4 +1,4 @@
IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} packagegroup-osmocom task-sysmocom"
IMAGE_INSTALL = "task-core-boot packagegroup-osmocom task-sysmocom-tools"
IMAGE_LINGUAS = " "
LICENSE = "MIT"

View File

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

View File

@ -1,5 +1,5 @@
DEPENDS = "${MACHINE_EXTRA_RDEPENDS} util-linux-native"
IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${ROOTFS_PKGMANAGE} packagegroup-osmocom task-sysmocom task-sysmocom-debug task-sysmocom-tools ${MACHINE_EXTRA_RDEPENDS} "
IMAGE_INSTALL = "task-core-boot ${ROOTFS_PKGMANAGE} packagegroup-osmocom task-sysmocom-debug task-sysmocom-tools ${MACHINE_EXTRA_RDEPENDS} "
IMAGE_LINGUAS = " "
IMAGE_FEATURES += " package-management "
LICENSE = "MIT"

View File

@ -1,12 +1,3 @@
require sysmocom-image.inc
# This variant of the image will run osmo-bts and osmo-nitb
activate_nitb() {
echo "NO_START=0" > ${IMAGE_ROOTFS}/etc/default/osmo-nitb
}
activate_systemd_nitb() {
ln -sf ${systemd_unitdir}/system/osmo-nitb.service ${IMAGE_ROOTFS}/etc/systemd/system/multi-user.target.wants/
}
IMAGE_PREPROCESS_COMMAND += "${@base_contains('DISTRO_FEATURES','systemd','activate_systemd_nitb','activate_nitb',d)}; "
IMAGE_INSTALL_append = " task-sysmocom-cs task-gprscore "

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,11 @@
require sysmocom-image.inc
IMAGE_INSTALL_append = " task-sysmocom-cs osmo-sip-connector "
# osmo-pcu is included in sysmobts targets due to machine .conf depending on
# task-sysmocom-bts. Since we only want voice here, let's disable osmo-pcu and
# be done with it:
disable_systemd_osmo_pcu() {
rm -f ${IMAGE_ROOTFS}/etc/systemd/system/multi-user.target.wants/osmo-pcu.service
}
IMAGE_PREPROCESS_COMMAND += "disable_systemd_osmo_pcu "

View File

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

View File

@ -19,9 +19,9 @@ do_install() {
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/
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/data.mount ${D}${systemd_system_unitdir}/
install -m 0644 ${WORKDIR}/sysmocom-restore.service ${D}${systemd_system_unitdir}/
}
SYSTEMD_PACKAGES = "${PN}"

View File

@ -3,20 +3,11 @@ 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/osmocom
etc/default
var/lib/osmocom/hlr.sqlite3
var/lib/osmocom/hlr.db
etc/lcr
etc/udhcpd.conf
/etc/dnsmasq.conf
etc/sysmocom/backup.d
etc/machine-id
etc/dropbear/dropbear_rsa_host_key

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 = "r16"
SRC_URI = " \
file://sysmocom-backup \

View File

@ -14,7 +14,7 @@ FILES_${PN} += "${systemd_unitdir}"
do_install() {
install -d ${D}${sysconfdir}
install -m 0644 ${WORKDIR}/udhcpd.conf ${D}${sysconfdir}/
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 /${WORKDIR}/udhcpd.service ${D}${systemd_unitdir}/system/
ln -sf ../udhcpd.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -d ${D}${systemd_system_unitdir}/multi-user.target.wants/
install -m 0644 /${WORKDIR}/udhcpd.service ${D}${systemd_system_unitdir}/
ln -sf ../udhcpd.service ${D}${systemd_system_unitdir}/multi-user.target.wants/
}

View File

@ -7,8 +7,7 @@ ALLOW_EMPTY_${PN} = "1"
PR = "r1"
RDEPENDS_${PN} = "\
openggsn \
gprs-routing osmo-sgsn \
sysmocom-ggsn-config \
osmo-ggsn \
gprs-routing \
osmo-sgsn \
"

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,23 @@ LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
DEPENDS = "virtual/kernel"
ALLOW_EMPTY_${PN} = "1"
PR = "r23"
PR = "r25"
CALIB = ""
CALIB_sysmobts-v2 = "sysmobts-calib sysmobts-util"
UTIL = ""
UTIL_sysmobts-v2 = "sbts2050-util gpsd gps-utils"
UTIL_sysmobts-v2 = "sbts2050-util gpsd gps-utils gpsdate"
UTIL_sysmobts2100 = "gpsd gps-utils gpsdate lc15-sysdev-remap"
UTIL_oc2g = "gpsd gps-utils gpsdate oc2g-sysdev-remap"
# 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

@ -0,0 +1,16 @@
DESCRIPTION = "Task for sysmocom"
LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
DEPENDS = "virtual/kernel"
ALLOW_EMPTY_${PN} = "1"
PR = "r0"
RDEPENDS_${PN} = "\
osmo-bsc \
osmo-mgw \
osmo-msc \
osmo-hlr \
osmo-stp \
${@bb.utils.contains('DISTRO_FEATURES', 'iu', 'osmo-hnbgw', '', d)} \
"

View File

@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
DEPENDS = "virtual/kernel"
ALLOW_EMPTY_${PN} = "1"
PR = "r4"
PR = "r5"
RDEPENDS_${PN} = "\
dropbear \
@ -14,5 +14,6 @@ RDEPENDS_${PN} = "\
gdb \
gdbserver \
net-tools \
n2n \
"

View File

@ -3,17 +3,54 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
ALLOW_EMPTY_${PN} = "1"
PR = "r20"
PR = "r25"
RDEPENDS_${PN} = "\
task-sysmocom-tools \
task-sysmocom-debug \
minicom vlan patch procps psmisc \
ppp rsync sed usbutils openvpn iperf \
lcr cronie iproute2 i2c-tools cu \
python-pyserial python-pexpect bridge-utils \
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 \
netcat-openbsd perf"
task-sysmocom-legacy \
task-gprscore \
packagegroup-sysmobts-sob \
sysmocom-openvpn-config \
minicom \
vlan \
patch \
procps \
psmisc \
ppp \
rsync \
sed \
usbutils \
openvpn \
iperf \
lcr \
cronie \
iproute2 \
i2c-tools \
cu \
python-pyserial \
python-pexpect \
bridge-utils \
pciutils \
nfacct \
logrotate \
dnsmasq \
ifupdown \
logrotate \
python-jsonrpclib \
python-enum \
iputils \
rtl8169-eeprom \
autossh \
perl \
libdbd-sqlite-perl \
libdbi-perl \
libjson-perl \
netcat-openbsd \
perf \
lksctp-tools \
osmo-sip-connector \
osmo-sysmon \
osmo-pcap \
nfs-utils \
"

View File

@ -4,15 +4,9 @@ LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
DEPENDS = "virtual/kernel"
ALLOW_EMPTY_${PN} = "1"
PR = "r11"
PR = "r1"
RDEPENDS_${PN} = "\
task-sysmocom-tools \
osmo-bsc \
osmo-bsc-mgcp \
osmo-bsc-nat \
osmo-gbproxy \
osmo-nitb \
ipaccess-utils \
"

View File

@ -3,7 +3,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = " \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
ALLOW_EMPTY_${PN} = "1"
PR = "r10"
PR = "r14"
RDEPENDS_${PN} = "\
lmsensors-scripts \
@ -14,8 +14,11 @@ RDEPENDS_${PN} = "\
ntpdate \
wget \
ca-cacert-rootcert \
ipaccess-utils \
abisip-find \
sysmocom-backup \
sysmocom-backup-default \
sysmocom-systemd \
sysmocom-configure \
osmo-config-merge \
"

View File

@ -1,8 +1,8 @@
require barebox.inc
SRCREV = "4d1c656aa7ba155d8a555602d832ff1fc76d63f8"
SRCREV = "ce8849b03a40718fdaa9d7fc30312eeeb0fafcac"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
git://gitea.sysmocom.de/sysmo-bts/barebox.git;protocol=https;branch=v2015.06 \
file://defconfig \
"

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

@ -343,6 +343,7 @@ 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
@ -393,7 +394,9 @@ CONFIG_PHYLIB=y
# 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
@ -418,13 +421,16 @@ CONFIG_MICREL_PHY=y
#
# SPI drivers
#
# CONFIG_SPI is not set
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 is not set
CONFIG_I2C_GPIO=y
CONFIG_I2C_OMAP=y
CONFIG_MTD=y
CONFIG_MTD_WRITE=y
@ -434,6 +440,8 @@ CONFIG_MTD_OOB_DEVICE=y
#
# 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
@ -504,7 +512,8 @@ CONFIG_LED_TRIGGERS=y
#
# EEPROM support
#
CONFIG_EEPROM_AT24=y
CONFIG_EEPROM_AT25=y
# CONFIG_EEPROM_AT24 is not set
#
# Input device support
@ -523,6 +532,7 @@ 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
@ -544,6 +554,7 @@ CONFIG_BUS_OMAP_GPMC=y
#
# Firmware Drivers
#
# CONFIG_FIRMWARE_ALTERA_SERIAL is not set
#
# PHY Subsystem

View File

@ -2,9 +2,10 @@ require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "4d1c656aa7ba155d8a555602d832ff1fc76d63f8"
SRCREV = "ec82959f054af3e4a27267290905cfd895f75331"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
git://gitea.sysmocom.de/sysmo-bts/barebox.git;protocol=https;branch=v2015.06 \
file://0001-OWHW-HACK-hard-code-the-bootstate-backend-node.patch \
file://defconfig \
"

View File

@ -1,8 +1,8 @@
require barebox.inc
SRCREV = "95e1a85cb276362e0b76396841e4e6988ab523b0"
SRCREV = "d87c27d7ab143d58f358df5722be2b9675103d2e"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
git://gitea.sysmocom.de/sysmo-bts/barebox.git;protocol=https;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,8 +1,8 @@
require barebox.inc
SRCREV = "95e1a85cb276362e0b76396841e4e6988ab523b0"
SRCREV = "34a48171a699560d8a41d00d2c07ed37a79c00d8"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
git://gitea.sysmocom.de/sysmo-bts/barebox.git;protocol=https;branch=v2015.06 \
file://defconfig \
"

View File

@ -2,9 +2,9 @@ require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "95e1a85cb276362e0b76396841e4e6988ab523b0"
SRCREV = "34a48171a699560d8a41d00d2c07ed37a79c00d8"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
git://gitea.sysmocom.de/sysmo-bts/barebox.git;protocol=https;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="5"

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;protocol=https"
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

@ -6,16 +6,16 @@ SRC_URI = "\
file://early-date \
file://early-date.service"
FILES_${PN} = "${systemd_unitdir}/system /sbin"
FILES_${PN} = "${systemd_system_unitdir} /sbin"
RDPEPENDS_${PN} = "systemd"
do_install() {
install -d ${D}/sbin
install -d ${D}${systemd_unitdir}/system/basic.target.wants
install -d ${D}${systemd_system_unitdir}/basic.target.wants
# Copy the service file and link it
install -m 0644 ${WORKDIR}/early-date.service ${D}${systemd_unitdir}/system
ln -sf ../early-date.service ${D}${systemd_unitdir}/system/basic.target.wants/
install -m 0644 ${WORKDIR}/early-date.service ${D}${systemd_system_unitdir}
ln -sf ../early-date.service ${D}${systemd_system_unitdir}/basic.target.wants/
# Hardcode to /sbin
# TODO: Set the date as of the build time..

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 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e6868d1ce8f058ecc5658ecebb086636"
SRCREV = "1103417819fe855d8d0d3e6a277870679ad01bd2"
SRC_URI = "git://github.com/mlaurijsse/linux-mpu9150.git"
SRC_URI = "git://github.com/mlaurijsse/linux-mpu9150;protocol=https"
PV = "v0.0+git${SRCPV}"
PR = "r1a"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,33 @@
From 83bf55510af35cc9e0872bc25ad5628dfae2f4a8 Mon Sep 17 00:00:00 2001
From: Pau Espin Pedrol <pespin@sysmocom.de>
Date: Mon, 7 Aug 2017 10:27:36 +0200
Subject: [PATCH] litecell15.dts: Set default let trigger to none
---
arch/arm/boot/dts/litecell15.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/litecell15.dts b/arch/arm/boot/dts/litecell15.dts
index a0c9db31eaf4..a2a08d64f313 100644
--- a/arch/arm/boot/dts/litecell15.dts
+++ b/arch/arm/boot/dts/litecell15.dts
@@ -318,14 +318,14 @@
led@0 {
label = "usr0";
gpios = <&gpio7 31 GPIO_ACTIVE_HIGH>;
- linux,default-trigger = "heartbeat";
+ linux,default-trigger = "none";
default-state = "on";
};
led@1 {
label = "usr1";
gpios = <&gpio7 30 GPIO_ACTIVE_HIGH>;
- linux,default-trigger = "cpu0";
+ linux,default-trigger = "none";
default-state = "off";
};
--
2.13.4

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,79 @@
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.33+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 \
file://0001-litecell15.dts-Set-default-let-trigger-to-none.patch"
# autoload defaults
module_autoload_nrw_clkerr = "nrw-clkerr"
module_autoload_nrw_vswr = "nrw-vswr"
module_autoload_rpmsg_proto = "rpmsg-proto"
module_autoload_rpmsg_rpc = "rpmsg-rpc"
module_autoload_iio_hwmon = "iio-hwmon"
module_autoload_ntc_thermistor = "ntc-thermistor"
KERNEL_MODULE_PROBECONF_append = "adl5501 configfs fpgadl iio_hwmon industrialio industrialio-buffer-cb input-polldev mcp47x6 nrw_clkerr nrw_vswr ntc_thermistor omap_remoteproc rpmsg_proto rpmsg_rpc xilinx-xadc"
KERNEL_MODULE_AUTOLOAD_append = "adl5501 configfs fpgadl iio_hwmon industrialio industrialio-buffer-cb input-polldev mcp47x6 nrw_clkerr nrw_vswr ntc_thermistor omap_remoteproc rpmsg_proto rpmsg_rpc xilinx-xadc"
RDEPENDS_kernel-module-omap-remoteproc += "lc15-firmware"
RDEPENDS_kernel-module-fpgadl += "lc15-firmware"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
use-kernel-config=oc2g_defconfig

View File

@ -0,0 +1,63 @@
SECTION = "kernel"
DESCRIPTION = "Linux kernel for the OC-2G"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d7810fab7487fb0aad327b76f1be7cd7"
require recipes-kernel/linux/linux-yocto.inc
KERNEL_IMAGETYPE = "zImage"
COMPATIBLE_MACHINE = "oc2g"
RDEPENDS_kernel-base += "kernel-devicetree"
KERNEL_DEVICETREE_oc2g = "oc2g.dtb oc2gplus.dtb"
RDEPENDS_kernel-devicetree += "update-alternatives-opkg"
LINUX_VERSION = "${PV}"
LINUX_VERSION_EXTENSION = "-oc2g"
RDEPENDS_kernel-image += "update-alternatives-opkg"
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
S = "${WORKDIR}/git"
NRW_OC2G_MIRROR ??= "git@gitlab.com/nrw_oc2g"
inherit gitver-pkg gitver-repo
REPODIR = "${THISDIR}"
REPOFILE = "linux-oc2g_4.4.32.bb"
PR := "r${REPOGITFN}"
REPODIR = "${THISDIR}/linux-oc2g-4.4.32"
REPOFILE = ""
PR := "${PR}.${REPOGITFN}"
PV = "4.4.32+git${SRCPV}"
PKGV = "${PKGGITV}"
DEV_BRANCH = "${@ 'nrw/oc2g-next' if d.getVar('NRW_BSP_DEVEL', False) == "next" else 'nrw/oc2g'}"
DEV_SRCREV = "${AUTOREV}"
DEV_SRCURI := "git://${NRW_OC2G_MIRROR}/processor-sdk-linux.git;protocol=ssh;branch=${DEV_BRANCH}"
REL_BRANCH = "nrw/oc2g"
REL_SRCREV = "5a36597a52fe4fc24fc0d9f8a02e3c3ff30e6aff"
REL_SRCURI := "git://${NRW_OC2G_MIRROR}/processor-sdk-linux.git;protocol=ssh;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}-oc2g/g' ${S}/Makefile
}
SRC_URI += "file://defconfig"

View File

@ -18,7 +18,7 @@ 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.84 \
SRC_URI = "git://gitea.sysmocom.de/sysmo-bts/linux.git;protocol=https;branch=linux-3.10.84 \
file://defconfig"
S = "${WORKDIR}/git"

View File

@ -14,7 +14,7 @@ PR = "r43"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = " \
git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=${BRANCH} \
git://gitea.sysmocom.de/sysmo-bts/linux.git;protocol=https;branch=${BRANCH} \
file://mISDN_loop.patch;patch=1 \
file://defconfig"
S = "${WORKDIR}/git"

View File

@ -0,0 +1,51 @@
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.59"
LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# Overrides for the sysmocom bts v2
BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2"
SRCREV = "27afed74546b4fa5546aeea26128eae2dcdc7c1f"
PR = "r6"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = "git://gitea.sysmocom.de/sysmo-bts/linux.git;protocol=https;branch=tracking/linux-stable-4.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)
KERNEL_MODULE_PROBECONF += "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
KERNEL_MODULE_AUTOLOAD += "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

@ -27,8 +27,8 @@ SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.g
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
@ -94,13 +94,17 @@ do_install_append() {
install -d ${D}/${sysconfdir}/network/if-up.d
ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/ntpdate.service ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/ntpd.service ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/sntp.service ${D}${systemd_unitdir}/system/
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/ntpdate.service ${D}${systemd_system_unitdir}/
install -m 0644 ${WORKDIR}/ntpd.service ${D}${systemd_system_unitdir}/
install -m 0644 ${WORKDIR}/sntp.service ${D}${systemd_system_unitdir}/
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 ${PN}-perl"
@ -141,13 +145,13 @@ FILES_ntpdate = "${sbindir}/ntpdate \
${sysconfdir}/network/if-up.d/ntpdate-sync \
${bindir}/ntpdate-sync \
${sysconfdir}/default/ntpdate \
${systemd_unitdir}/system/ntpdate.service \
${systemd_system_unitdir}/ntpdate.service \
${bindir}/ntpdate-cron \
${sysconfdir}/cron.d/ntpdate \
"
FILES_sntp = "${sbindir}/sntp \
${sysconfdir}/default/sntp \
${systemd_unitdir}/system/sntp.service \
${systemd_system_unitdir}/sntp.service \
"
CONFFILES_${PN} = "${sysconfdir}/ntp.conf"

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

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 \
@ -25,9 +25,9 @@ do_install() {
install -m 0755 ${WORKDIR}/usb2514 ${D}${bindir}/
install -m 0755 ${WORKDIR}/gpio_usb2514 ${D}${bindir}/
install -m 0755 ${WORKDIR}/odu-gpiotool ${D}${bindir}/
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 /${WORKDIR}/usb2514.service ${D}${systemd_unitdir}/system/
ln -sf ../usb2514.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -d ${D}${systemd_system_unitdir}/multi-user.target.wants/
install -m 0644 /${WORKDIR}/usb2514.service ${D}${systemd_system_unitdir}/
ln -sf ../usb2514.service ${D}${systemd_system_unitdir}/multi-user.target.wants/
}
FILES_${PN} += "${systemd_unitdir}"

View File

@ -0,0 +1,183 @@
From b33c1d7ab8881cf9e68ef9692a8c5079f1b53db7 Mon Sep 17 00:00:00 2001
From: Pau Espin Pedrol <pespin@sysmocom.de>
Date: Fri, 28 Jul 2017 12:12:05 +0200
Subject: [PATCH] Add sysmocom specific tweaks
---
common/autoboot.c | 2 +-
include/configs/litecell15.h | 91 +++++++++++++++++++++++++++++++++------
include/configs/ti_armv7_common.h | 2 +-
3 files changed, 80 insertions(+), 15 deletions(-)
diff --git a/common/autoboot.c b/common/autoboot.c
index c4e21452df..369f2c55a1 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -352,7 +352,7 @@ const char *bootdelay_process(void)
s = getenv("bootcmd");
process_fdt_options(gd->fdt_blob);
- stored_bootdelay = bootdelay;
+ stored_bootdelay = CONFIG_BOOTDELAY;
return s;
}
diff --git a/include/configs/litecell15.h b/include/configs/litecell15.h
index bb6629a3ce..6d030bedcb 100644
--- a/include/configs/litecell15.h
+++ b/include/configs/litecell15.h
@@ -81,13 +81,19 @@
#define CONFIG_SYS_NS16550_COM9 UART9_BASE /* GPS Port B */
#define CONFIG_BAUDRATE 115200
-/* These 3 lines keep from inadvertly stopping u-boot by any serial glitch, at least a specific character must be pressed */
+#define CONFIG_SYS_AUTOLOAD "n" /* No autoload */
+/* These lines keep from inadvertly stopping u-boot by any serial glitch, at least a specific character must be pressed */
#define CONFIG_AUTOBOOT_KEYED
-#define CONFIG_AUTOBOOT_DELAY_STR "c"
-#define CONFIG_AUTOBOOT_PROMPT "Autoboot in %d seconds, press <" CONFIG_AUTOBOOT_DELAY_STR "> to abort...\n",bootdelay
+#define CONFIG_AUTOBOOT_DELAY_STR "bts-delay"
+#define CONFIG_AUTOBOOT_STOP_STR "bts-stop"
+#define CONFIG_BOOTDELAY 8 /* -1 disables auto-boot */
+#define CONFIG_AUTOBOOT_PROMPT "Autoboot in %d seconds, press <" CONFIG_AUTOBOOT_STOP_STR "> to abort...\n"
#define CONFIG_SYS_OMAP_ABE_SYSCK
+/* Write to ext4 partitions */
+#define CONFIG_CMD_EXT4_WRITE
+
/* CONFIG_HW_WATCHDOG when activated implies a lot of boot mechanisms to allow wdt reboot, boot counting, reset event detection (available for kernel info also), */
/* multiple u-boot qspi images alternance, hardware watchdog ticking, failsafe boot alternative after a specific boot count limit exausted, */
/* autoboot failing protection, etc. */
@@ -99,9 +105,9 @@
/*#define CONFIG_WDT_LOCK*/
/* Comment the following 3 definitions to allow to stay at u-boot command prompt forever when autoboot was manually stopped (defeat WDT safe boot protection in that case) */
-#define CONFIG_BOOT_RETRY_TIME 600
-#define CONFIG_BOOT_RETRY_MIN 60
-#define CONFIG_RESET_TO_RETRY
+/* #define CONFIG_BOOT_RETRY_TIME 600 */
+/* #define CONFIG_BOOT_RETRY_MIN 60 */
+/* #define CONFIG_RESET_TO_RETRY */
/* WDT by default 128 secs (2<<CONFIG_WDT_INIT, max 128secs), theorically do not use lower than 1 (2 secs) to match CONFIG_MIN_WDT_TICK_TIME */
/* WARNING: actual wdt expiration min value is (2<<CONFIG_WDT_INIT) secs, but it could be as long as 2 * (2<<CONFIG_WDT_INIT) secs */
@@ -204,21 +210,75 @@
"sf erase 0x120000 0x80000 && " \
"sf write 0x83000000 0x120000 0x80000 \0"
+#define ERASE_UBOOT_ENV \
+ "erase_uboot_env=echo Erasing saved u-boot env...; " \
+ "sf probe 0 && " \
+ "sf erase 0x100000 0x10000 && " \
+ "sf erase 0x110000 0x10000;\0"
+
+#define TFTP_FLASH_MLO \
+ "tftp_flash_mlo=echo Loading MLO from network and flashing it....; " \
+ "setenv prev_bootfile ${bootfile}; " \
+ "setenv autoload no; " \
+ "dhcp && " \
+ "setenv filesize 0 && " \
+ "if tftp ${loadaddr} MLO; then " \
+ "sf probe 0 && " \
+ "sf erase 0x00000 0x20000 && " \
+ "sf write ${loadaddr} 0x00000 0x20000 && " \
+ "sf erase 0x20000 0x20000 && " \
+ "sf write ${loadaddr} 0x20000 0x20000 && " \
+ "sf erase 0x40000 0x20000 && " \
+ "sf write ${loadaddr} 0x40000 0x20000 && " \
+ "sf erase 0x60000 0x20000 && " \
+ "sf write ${loadaddr} 0x60000 0x20000; " \
+ "fi; " \
+ "setenv bootfile ${prev_bootfile};\0"
+
+#define TFTP_FLASH_UBOOT \
+ "tftp_flash_uboot=echo Loading u-boot.img from network and flashing it....; " \
+ "setenv prev_bootfile ${bootfile}; " \
+ "setenv autoload no; " \
+ "dhcp && " \
+ "setenv filesize 0 && " \
+ "if tftp ${loadaddr} u-boot.img; then " \
+ "sf probe 0 && " \
+ "sf erase 0x80000 0x80000 && " \
+ "sf write ${loadaddr} 0x80000 0x80000 && " \
+ "sf erase 0x120000 0x80000 && " \
+ "sf write ${loadaddr} 0x120000 0x80000; " \
+ "fi; " \
+ "setenv bootfile ${prev_bootfile};\0"
+
+#define TFTP_FLASH_ROOTFS \
+ "tftp_flash_rootfs=echo Loading rootfs from network and flashing to mmc...; " \
+ "setenv prev_bootfile ${bootfile}; " \
+ "setenv autoload no; " \
+ "dhcp && " \
+ "setenv filesize 0 && " \
+ "if tftp ${loadaddr} rootfs-sysmobts2100.img; then " \
+ "setexpr fs ${filesize} + 0x1ff; " \
+ "setexpr fs ${fs} / 0x200; " \
+ "mmc write ${fileaddr} 0x0001f000 ${fs} && " \
+ "mmc write ${fileaddr} 0x003ef800 ${fs}; " \
+ "fi; " \
+ "setenv bootfile ${prev_bootfile};\0"
+
#include <configs/ti_omap5_common.h>
/* Internal memory boot */
#ifdef CONFIG_SPL_INTMEM_BOOT
-#undef CONFIG_SPL_STACK
+#undef CONFIG_SPL_STACK
#undef CONFIG_SPL_BSS_START_ADDR
#undef CONFIG_SPL_BSS_MAX_SIZE
#undef CONFIG_SYS_SPL_MALLOC_START
#undef CONFIG_SYS_SPL_MALLOC_SIZE
-#define CONFIG_SPL_STACK 0x40400000
-#define CONFIG_SPL_BSS_START_ADDR 0x40500000
-#define CONFIG_SPL_BSS_MAX_SIZE 0x00080000
-#define CONFIG_SYS_SPL_MALLOC_START 0x40580000
-#define CONFIG_SYS_SPL_MALLOC_SIZE 0x00080000
+#define CONFIG_SPL_STACK 0x40400000
+#define CONFIG_SPL_BSS_START_ADDR 0x40500000
+#define CONFIG_SPL_BSS_MAX_SIZE 0x00080000
+#define CONFIG_SYS_SPL_MALLOC_START 0x40580000
+#define CONFIG_SYS_SPL_MALLOC_SIZE 0x00080000
#endif
/* Overwrite extra settings */
@@ -226,6 +286,7 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
DEFAULT_LINUX_BOOT_ENV \
"console=" CONSOLEDEV ",115200n8\0" \
+ "bootdelay=" __stringify(CONFIG_BOOTDELAY) "\0" \
"fdtfile=litecell15.dtb\0" \
"bootdir=/boot\0" \
"bootfile=zImage\0" \
@@ -292,7 +353,11 @@
MYBOOT_LIMIT \
NANDARGS \
FLASH_UBOOT_LINUXFS \
- FLASH_UBOOT2
+ FLASH_UBOOT2 \
+ ERASE_UBOOT_ENV \
+ TFTP_FLASH_MLO \
+ TFTP_FLASH_UBOOT \
+ TFTP_FLASH_ROOTFS
#undef CONFIG_BOOTCOMMAND
#define CONFIG_BOOTCOMMAND \
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index 6011cf8c65..9680246feb 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -93,7 +93,7 @@
/*
* Default to a quick boot delay.
*/
-#define CONFIG_BOOTDELAY 1
+/* #define CONFIG_BOOTDELAY 1 */
/*
* DDR information. If the CONFIG_NR_DRAM_BANKS is not defined,
--
2.13.3

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,42 @@
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"
SRC_URI += "file://0001-Add-sysmocom-specific-tweaks.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,41 @@
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95"
NRW_OC2G_MIRROR ??= "git@gitlab.com/nrw_oc2g"
inherit gitver-pkg gitver-repo
# Should match the one in u-boot.inc
INC_PR ??= "r1"
REPODIR = "${THISDIR}"
REPOFILE = "u-boot-oc2g-2015.07.inc"
INC_PR := "${INC_PR}.${REPOGITFN}"
PV = "2015.07+git${SRCPV}"
PKGV = "${PKGGITV}"
DEV_BRANCH = "${@ 'nrw/oc2g-next' if d.getVar('NRW_BSP_DEVEL', False) == "next" else 'nrw/oc2g'}"
DEV_SRCREV = "${AUTOREV}"
DEV_SRCURI := "git://${NRW_OC2G_MIRROR}/u-boot.git;protocol=ssh;branch=${DEV_BRANCH}"
REL_BRANCH = "nrw/oc2g"
REL_SRCREV = "f8da7e9b975e1806b6cb896600b6a67c5fcf4afd"
REL_SRCURI := "git://${NRW_OC2G_MIRROR}/u-boot.git;protocol=ssh;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 = -oc2g/g' ${S}/Makefile
}

View File

@ -0,0 +1,20 @@
require u-boot.inc
require ${PN}-${PV}.inc
PROVIDES_oc2g = " \
u-boot \
virtual/bootloader \
"
DESCRIPTION = "u-boot bootloader for TI devices supported by the GLSDK product"
REPODIR = "${THISDIR}"
REPOFILE = "u-boot-oc2g_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 = "r2"
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,81 +0,0 @@
#!/bin/sh
#/etc/init.d/watchdog: start watchdog daemon.
#based on debian/init of watchdog
### BEGIN INIT INFO
# Provides: watchdog
# Short-Description: Start software watchdog daemon
# Required-Start: $local_fs
# Required-Stop:
# Should-Start:
# Should-Stop:
# Default-Start: S
# Default-Stop:
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
test -x /usr/sbin/watchdog || exit 0
# For configuration of the init script use the file
# /etc/default/watchdog, do not edit this init script.
# Set run_watchdog to 1 to start watchdog or 0 to disable it.
# Specify additional watchdog options here (see manpage).
watchdog_options=""
# Specify module to load
watchdog_module="none"
run_watchdog=1
[ -e /etc/default/watchdog ] && . /etc/default/watchdog
NAME=watchdog
DAEMON=/usr/sbin/watchdog
case "$1" in
start)
if [ $run_watchdog = 1 ]
then
# do we have to load a module?
[ ${watchdog_module:-none} != "none" ] && /sbin/modprobe $watchdog_module
# Unconditionally start watchdog daemon because we want to run it even
# if wd_keepalive wasn't running
echo "Starting watchdog daemon..."
start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $watchdog_options
fi
;;
stop)
if [ $run_watchdog = 1 ]
then
echo "Stopping watchdog daemon..."
start-stop-daemon --stop -s 9 --quiet \
--pidfile /var/run/$NAME.pid
fi
;;
restart)
$0 force-reload
;;
force-reload)
if [ $run_watchdog = 0 ]; then exit 0; fi
echo "Restarting ${NAME}"
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/watchdog {start|stop|restart|force-reload}"
exit 1
esac
exit 0

View File

@ -1,41 +0,0 @@
#ping = 172.31.14.1
#ping = 172.26.1.255
#interface = eth0
#file = /var/log/messages
#change = 1407
# Uncomment to enable test. Setting one of these values to '0' disables it.
# These values will hopefully never reboot your machine during normal use
# (if your machine is really hung, the loadavg will go much higher than 25)
#max-load-1 = 24
#max-load-5 = 18
#max-load-15 = 12
# Note that this is the number of pages!
# To get the real size, check how large the pagesize is on your machine.
#min-memory = 1
#repair-binary = /usr/sbin/repair
#repair-timeout =
#test-binary =
#test-timeout =
watchdog-device = /dev/watchdog
# Defaults compiled into the binary
#temperature-device =
#max-temperature = 120
# Defaults compiled into the binary
#admin = root
#interval = 1
#logtick = 1
#log-dir = /var/log/watchdog
# This greatly decreases the chance that watchdog won't be scheduled before
# your machine is really loaded
realtime = yes
priority = 1
# Check if syslogd is still running by enabling the following line
#pidfile

View File

@ -1,24 +0,0 @@
SYSMOCOM := "${@os.path.dirname(bb.data.getVar('FILE', d, True))}"
FILESEXTRAPATHS_prepend := "${SYSMOCOM}/${PN}-${PV}:${SYSMOCOM}/${PN}:"
PRINC = "9"
inherit update-rc.d
SRC_URI_append_sysmobts-v2 = " file://watchdog.conf file://init"
do_install_append() {
if [ -e ${WORKDIR}/watchdog.conf ]; then
install -D -m 0644 ${WORKDIR}/watchdog.conf ${D}/${sysconfdir}/
fi
install -D -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/watchdog
}
CONFFILES_${PN} = "${sysconfdir}/watchdog.conf"
INITSCRIPT_PACKAGES = "${PN}"
INITSCRIPT_NAME_${PN} = "watchdog"
INITSCRIPT_PARAMS_${PN} = "start 06 S ."
# bug in poky meta/classes/base.bbclass?
PACKAGE_ARCH = "${MACHINE_ARCH}"

View File

@ -1,88 +0,0 @@
##############################################################################
#
# Sample ggsn configuration file
#
##############################################################################
# TAG: fg
# Include this flag if process is to run in the foreground
#
#fg
# TAG: debug
# Include this flag to include debug information.
#debug
# TAG: conf
# Configuration file to use. This file is the configuration file,
# so changing this parameter in the configuration file does not make
# sense. Use it on the command line instead.
# TAG: pidfile
# File to store information about the process id of the program.
# The program must have write access to this file/directory.
#pidfile /var/run/ggsn.pid
# TAG: statedir
# Directory to use for nonvolatile storage.
# The program must have write access to this directory.
#statedir /var/lib/ggsn/
# TAG: listen
# Specifies the local IP address to listen to
#listen 10.0.0.240
listen 127.0.0.2
# TAG: net
# IP network address of external packet data network
# Used to set up network interface.
net 10.23.42.0/24
# TAG: ipup
# Script executed after network interface has been brought up.
# Executed with the following parameters: <devicename> <ip address>
#ipup /etc/ggsn/ip-up
# TAG: ipdown
# Script executed after network interface has been taken down.
# Executed with the following parameters: <devicename> <ip address>
#ipdown /etc/ggsn/ip-down
# TAG: dynip
# Dynamic IP address pool.
# Used for allocation of dynamic IP address when address is not given
# by HLR.
# If this option is not given then the net option is used as a substitute.
#dynip 192.168.0.0/24
# TAG: statip
# Use of this tag is currently UNSUPPORTED
# Static IP address pool.
# Used for allocation of static IP address by means of HLR.
#statip 192.168.1.0/24
# TAG: pcodns1
# Protocol configuration option domain name system server 1.
pcodns1 8.8.8.8
# TAG: pcodns2
# Protocol configuration option domain name system server 2.
#pcodns2 0.0.0.0
# TAG: timelimit
# Exit after timelimit seconds.
# Setting timelimit to zero will cause the program not to exit.
#timelimit 0
# TAG: apn
# Use of this tag is EXPERIMENTAL
# Access point name to connect to when run in client mode.
#apn internet
# TAG: qos
# Use of this tag is EXPERIMENTAL
# Requested Quality of Service used when run in client mode.
# 3 bytes corresponding to ????
#qos 0x0b921f

View File

@ -1,88 +0,0 @@
##############################################################################
#
# Sample ggsn configuration file
#
##############################################################################
# TAG: fg
# Include this flag if process is to run in the foreground
#
#fg
# TAG: debug
# Include this flag to include debug information.
#debug
# TAG: conf
# Configuration file to use. This file is the configuration file,
# so changing this parameter in the configuration file does not make
# sense. Use it on the command line instead.
# TAG: pidfile
# File to store information about the process id of the program.
# The program must have write access to this file/directory.
#pidfile /var/run/ggsn.pid
# TAG: statedir
# Directory to use for nonvolatile storage.
# The program must have write access to this directory.
#statedir /var/lib/ggsn/
# TAG: listen
# Specifies the local IP address to listen to
#listen 10.0.0.240
listen 10.23.123.1
# TAG: net
# IP network address of external packet data network
# Used to set up network interface.
net 10.23.42.0/24
# TAG: ipup
# Script executed after network interface has been brought up.
# Executed with the following parameters: <devicename> <ip address>
#ipup /etc/ggsn/ip-up
# TAG: ipdown
# Script executed after network interface has been taken down.
# Executed with the following parameters: <devicename> <ip address>
#ipdown /etc/ggsn/ip-down
# TAG: dynip
# Dynamic IP address pool.
# Used for allocation of dynamic IP address when address is not given
# by HLR.
# If this option is not given then the net option is used as a substitute.
#dynip 192.168.0.0/24
# TAG: statip
# Use of this tag is currently UNSUPPORTED
# Static IP address pool.
# Used for allocation of static IP address by means of HLR.
#statip 192.168.1.0/24
# TAG: pcodns1
# Protocol configuration option domain name system server 1.
pcodns1 8.8.8.8
# TAG: pcodns2
# Protocol configuration option domain name system server 2.
#pcodns2 0.0.0.0
# TAG: timelimit
# Exit after timelimit seconds.
# Setting timelimit to zero will cause the program not to exit.
#timelimit 0
# TAG: apn
# Use of this tag is EXPERIMENTAL
# Access point name to connect to when run in client mode.
#apn internet
# TAG: qos
# Use of this tag is EXPERIMENTAL
# Requested Quality of Service used when run in client mode.
# 3 bytes corresponding to ????
#qos 0x0b921f

View File

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

View File

@ -1,11 +0,0 @@
DESCRIPTION = "OpenGGSN config by sysmocom"
SRC_URI = "file://ggsn.conf"
LICENSE = "closed"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
do_install() {
install -d ${D}${sysconfdir}
install -m 0660 ${WORKDIR}/ggsn.conf ${D}${sysconfdir}/
}
CONFFILES_${PN} = "${sysconfdir}/ggsn.conf"

View File

@ -1,12 +1,12 @@
#OpenVPN client conf
tls-client
client
ns-cert-type server
remote-cert-tls server
dev tun
proto udp
tun-mtu 1500
remote admin.sysmocom.de
remote 78.46.147.238
remote vpn.sysmocom.de
comp-lzo
pkcs12 sysmocom-client-cert.p12
cipher BF-CBC
cipher AES-256-CBC
nobind

View File

@ -5,21 +5,12 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://sysmocom-vpn.conf"
PR = "r4"
PR = "r7"
CONFFILES_${PN} = "${sysconfdir}/openvpn/sysmocom-vpn.conf.off"
CONFFILES_${PN} = "${sysconfdir}/openvpn/sysmocom-vpn.conf"
PACKAGE_ARCH = "all"
do_install() {
install -d ${D}${sysconfdir}/openvpn
install -m 0644 ${WORKDIR}/sysmocom-vpn.conf ${D}${sysconfdir}/openvpn/sysmocom-vpn.conf.off
}
# Always enable the OpenVPN service. This assumes that
# this package will never be inside the nornal sysmocom
# feed.
FILES_${PN} += "${systemd_unitdir}"
do_install_append() {
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
ln -sf ../openvpn.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 ${WORKDIR}/sysmocom-vpn.conf ${D}${sysconfdir}/openvpn
}

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

@ -0,0 +1,10 @@
#!/bin/sh
cd tests
for i in `ls *`; do
if [ ./$i ] ; then
echo "PASS: $i"
else
echo "FAIL: $i"
fi
done

View File

@ -0,0 +1,32 @@
DESCRIPTION = "ZeroMQ looks like an embeddable networking library but acts like a concurrency framework"
HOMEPAGE = "http://www.zeromq.org"
LICENSE = "LGPLv3+"
LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=d5311495d952062e0e4fbba39cbf3de1"
PACKAGECONFIG ??= "libsodium"
PACKAGECONFIG[libsodium] = "--with-libsodium, --without-libsodium, libsodium"
SRC_URI = "http://github.com/zeromq/zeromq4-1/releases/download/v${PV}/zeromq-${PV}.tar.gz \
file://run-ptest \
"
SRC_URI[md5sum] = "c89db4dbc0b90c34c9f4983cbff6d321"
SRC_URI[sha256sum] = "02ebf60a43011e770799336365bcbce2eb85569e9b5f52aa0d8cc04672438a0a"
S = "${WORKDIR}/zeromq-${PV}"
#Uncomment to choose polling system manually. valid values are kqueue, epoll, devpoll, poll or select
#EXTRA_OECONF += "--with-poller=kqueue"
#CFLAGS_append = " -O0"
#CXXFLAGS_append = " -O0"
inherit autotools ptest pkgconfig
do_compile_ptest () {
echo 'buildtest-TESTS: $(check_PROGRAMS)' >> ${B}/Makefile
oe_runmake buildtest-TESTS
}
do_install_ptest () {
install -d ${D}${PTEST_PATH}/tests
install -m 0755 ${B}/.libs/test_* ${D}${PTEST_PATH}/tests
}

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