Compare commits

...

300 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
Holger Hans Peter Freyther 33b6d83edd u-boot: Add the compiler-gcc5.h header file
When trying to compile with gcc5 we need this file to be present
as otherwise the build will fail.
2015-11-21 21:39:28 +00:00
Holger Hans Peter Freyther 0700c55790 lm-sensors: Attempt to move to a URI where the code still exists
lm-sensors.org seems to have vanished from the internet. Start to
use a copy what was found by googling.
2015-11-21 10:15:57 +00:00
Holger Hans Peter Freyther 9170107271 task-sysmocom-feed: Attempt to put perf into the feed as well
Make perf (perf-python, perf-perl) available to us as well. Let's
see what the CI is saying about it.
2015-11-20 22:13:23 +00:00
Holger Hans Peter Freyther 8ce4ab4927 sysmocom-backup-data: Avoid an absolute symlink to fix restoring
When restoring the backup the rootfs is mounted in /rootfs/data
and the symlink to the real file would then not work. Attempt to
change the directory first to get a relative symlink.

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

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

* comment the entry in the old
  crontab file when found

Fixes: SYS#1841
2015-10-02 11:34:46 +02:00
319 changed files with 25597 additions and 5064 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

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

View File

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

@ -70,7 +70,8 @@ do_backup_files() {
tar -rf $BACKUP_FILE --transform='s,^,info/,' -C $NAME installed_packages mac_addr
# 6. Create stable link
ln -sf $BACKUP_FILE /data/sysmocom-backup.tar
cd /data/
ln -sf `basename $BACKUP_FILE` sysmocom-backup.tar
# 76
echo "The backup was stored to $BACKUP_FILE"

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 = "r19"
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"
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,7 +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

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1,32 @@
require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "ec82959f054af3e4a27267290905cfd895f75331"
SRC_URI = " \
git://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 \
"
PV = "v2015.06+git${SRCPV}"
S = "${WORKDIR}/git"
BAREBOX_IMAGE ?= "barebox-${MACHINE}-${PKGV}-${PKGR}.img"
BAREBOX_SYMLINK ?= "barebox-${MACHINE}.img"
# generated using echo -n 'owhw-stop' | sha1sum
BAREBOX_PASSWORD = "d797c986b04cdcb86206a990908e27f8c3ae96b4"
do_configure_append () {
mkdir -p ${WORKDIR}/env/nv
echo 5 > ${WORKDIR}/env/nv/login.timeout
}
do_deploy_append () {
install -d ${DEPLOYDIR}
install ${S}/images/barebox-am33xx-gsmk-owhw.img ${DEPLOYDIR}/${BAREBOX_IMAGE}
cd ${DEPLOYDIR}
rm -f ${BAREBOX_SYMLINK}
ln -sf ${BAREBOX_IMAGE} ${BAREBOX_SYMLINK}
}

View File

@ -1,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

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

View File

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

View File

@ -21,12 +21,14 @@ SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.g
file://sntp.service \
file://sntp \
file://ntpd.list \
file://ntpdate-cron \
file://ntpdate.cron \
"
PR = "r7"
PR = "r9"
SRC_URI[md5sum] = "65d8cdfae4722226fbe29863477641ed"
SRC_URI[sha256sum] = "948274b88f1ed002d867ced6aaefdfd0999668b11285ac2b3a67ff2629d59d88"
SRC_URI[md5sum] = "60049f51e9c8305afe30eb22b711c5c6"
SRC_URI[sha256sum] = "583d0e1c573ace30a9c6afbea0fc52cae9c8c916dbc15c026e485a0dda4ba048"
inherit autotools update-rc.d useradd systemd pkgconfig
@ -64,6 +66,8 @@ do_install_append() {
install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d
install -d ${D}${bindir}
install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync
install -m 755 ${WORKDIR}/ntpdate-cron ${D}${bindir}/ntpdate-cron
install -D -m 0644 ${WORKDIR}/ntpdate.cron ${D}${sysconfdir}/cron.d/ntpdate
install -m 755 -d ${D}${NTP_USER_HOME}
chown ntp:ntp ${D}${NTP_USER_HOME}
@ -74,6 +78,8 @@ do_install_append() {
sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${bindir}/ntpdate-sync
sed -i 's!__bindir__!${bindir}!g' ${D}${bindir}/ntpdate-cron
sed -i 's!__bindir__!${bindir}!g' ${D}${sysconfdir}/cron.d/ntpdate
sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/ntptrace
sed -i '/use/i use warnings;' ${D}${sbindir}/ntptrace
sed -i '1s,#!.*perl,#! ${bindir}/env perl,' ${D}${sbindir}/ntp-wait
@ -88,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"
@ -135,25 +145,34 @@ 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"
CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate"
CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate ${sysconfdir}/cron.d/ntpdate"
INITSCRIPT_NAME = "ntpd"
# No dependencies, so just go in at the standard level (20)
INITSCRIPT_PARAMS = "defaults"
pkg_postinst_ntpdate() {
if ! grep -q -s ntpdate $D/var/spool/cron/root; then
echo "adding crontab"
test -d $D/var/spool/cron || mkdir -p $D/var/spool/cron
echo "30 * * * * ${bindir}/ntpdate-sync silent" >> $D/var/spool/cron/root
if grep -q -s ntpdate $D/var/spool/cron/root; then
echo "comment the old crontab entry"
sed -i -e "/^[^#]/ s/\(.*\)\(.*ntpdate-sync.*$\)/#\1\2/g" $D/var/spool/cron/root
fi
if [ "x$D" != "x" ]; then
exit 0
fi
systemctl status crond > /dev/null 2>&1
if [ $? -eq 0 ]; then
systemctl restart crond
else
/etc/init.d/cron restart
fi
}

View File

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

View File

@ -4,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

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

View File

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

View File

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

View File

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

View File

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

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