Compare commits

..

No commits in common. "main" and "feature/fitimage" have entirely different histories.

78 changed files with 62 additions and 11623 deletions

4
.gitmodules vendored
View File

@ -2,7 +2,3 @@
path = coreos
url = ssh://git@bitbucket.gad.local:7999/ico/coreos.git
branch = master
[submodule "layers/meta-netmodule-wlan"]
path = external-layers/meta-netmodule-wlan
url = gitea@git.netmodule.intranet:nrsw-oe/meta-netmodule-wlan.git
branch = kirkstone

View File

@ -1,10 +0,0 @@
{
"recommendations": [
"ms-vscode.makefile-tools",
"timonwong.shellcheck",
"eugenwiens.bitbake",
"kweihmann.oelint-vscode",
"lextudio.restructuredtext",
"trond-snekvik.simple-rst"
]
}

12
.vscode/settings.json vendored
View File

@ -1,12 +0,0 @@
{
"files.watcherExclude": {
"**/build/cache/**": true,
"**/build/downloads/**": true,
"**/build/sstate-cache/**": true,
"**/build/tmp/**": true,
"**/documentation/_build/**": true,
"**/build/workspace": true
},
"python.formatting.provider": "black",
"editor.rulers": [80,100,120]
}

2
coreos

@ -1 +1 @@
Subproject commit fd9b3e0a0ff210f95a384dc884dcf848adcc478f
Subproject commit 0001e685fa10b312ed3ff244f1076f830a4cc65d

@ -1 +0,0 @@
Subproject commit e14df2a2ec15acca43b3bd14f2b9df75c7933904

View File

@ -1,18 +0,0 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "netmodule-legacy-bsp"
BBFILE_PATTERN_netmodule-legacy-bsp = "^${LAYERDIR}/"
BBFILE_PRIORITY_netmodule-legacy-bsp = "6"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_netmodule-legacy-bsp = "1"
LAYERDEPENDS_netmodule-legacy-bsp = "core meta-belden-coreos"
LAYERSERIES_COMPAT_netmodule-legacy-bsp = "kirkstone"

View File

@ -1 +0,0 @@
MACHINE_FEATURES += "nrsw-ready"

View File

@ -1,19 +0,0 @@
MAX_FS_SIZE = "279542"
KERNEL_DEVICETREE = "\
am335x-nbhw16.dtb \
am335x-nbhw16-prod2.dtb \
am335x-nbhw16-prod3.dtb \
am335x-nbhw16-prod4.dtb \
am335x-nbhw16-prod5.dtb \
am335x-nmhw24-prod1.dtb \
"
DEBUG_SERIAL_CONSOLE ?= "115200;ttyS1"
COMIO_SERIAL_CONSOLE ?= "115200;ttyS0"
SERIAL_CONSOLES = "${DEBUG_SERIAL_CONSOLE} ${COMIO_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
wifi \
ti-wifi \
"

View File

@ -1,29 +0,0 @@
require all-netmodule.inc
SOC_FAMILY = "armada"
require conf/machine/include/soc-family.inc
DEFAULTTUNE ?= "cortexa9thf-neon"
require conf/machine/include/arm/armv7a/tune-cortexa9.inc
KERNEL_IMAGETYPE = "zImage"
NM_TARGET = "netbolt"
NM_ARCH = "arm"
KMACHINE = "netmodule-armada"
INODE_SIZE = "1024"
DIR_INODE_SIZE = "1024"
FILE_INODE_SIZE = "0"
WKS_FILE ?= "nm-armada-385-mmc.wks"
do_image_wic[depends] += "virtual/bootloader:do_deploy"
MACHINE_FEATURES:remove = "bluetooth"
PREFERRED_PROVIDER_virtual/kernel = "linux-nrsw"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-armada"
UBOOT_MACHINE = "${MACHINE}_defconfig"
UBOOT_ENTRYPOINT = "0x13000000"
UBOOT_LOADADDRESS = "${UBOOT_ENTRYPOINT}"

View File

@ -1,52 +0,0 @@
#@TYPE: Machine
#@NAME: TI33x machine
#@DESCRIPTION: Generic machine configuration for TI33x
# PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
# XSERVER ?= "xserver-xorg \
# xf86-video-modesetting \
# "
require all-netmodule.inc
MACHINE_EXTRA_RRECOMMENDS = "kernel-modules kernel-devicetree"
NM_TARGET = "netbird"
NM_ARCH = "arm"
KMACHINE = "netmodule-sitara"
# EXTRA_IMAGEDEPENDS += "u-boot"
SOC_FAMILY = "sitara"
require conf/machine/include/soc-family.inc
DEFAULTTUNE ?= "cortexa8hf-neon"
include conf/machine/include/arm/armv7a/tune-cortexa8.inc
# IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap"
# EXTRA_IMAGECMD_jffs2 = "-lnp "
# IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage"
# do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot"
# SERIAL_CONSOLES = "115200;ttyO0"
WKS_FILE ?= "nm-am335x-mmc.wks"
do_image_wic[depends] += "virtual/bootloader:do_deploy"
KERNEL_IMAGETYPE = "zImage"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-ti33x"
UBOOT_MACHINE = "${MACHINE}_defconfig"
# SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
# MACHINE_FEATURES = "usbgadget usbhost vfat alsa"
IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} MLO"
INODE_SIZE = "1024"
DIR_INODE_SIZE = "1024"
FILE_INODE_SIZE = "0"
PREFERRED_PROVIDER_virtual/kernel = "linux-nrsw"

View File

@ -1,22 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW14 based routers like NB3800
#@DESCRIPTION: Machine configuration for the NBHW14 based routers http://netmodule.com/en/products/iot-routers
require include/armada.inc
NRHW = "14"
NM_MODELS = "3701 3711 3800"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "armada-385-hw14_defconfig"
# U-Boot reads actual DTB file name from board descriptor, see:
# printenv fdt_image
KERNEL_DEVICETREE = "\
openwrt-nbhw14.dtb \
openwrt-nbhw14-sgmii.dtb \
"
# May be an external console on some devices
DEBUG_SERIAL_CONSOLE ?= "115200;ttyS0"
SERIAL_CONSOLES = "${DEBUG_SERIAL_CONSOLE}"

View File

@ -1,13 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW16 based routers like NB800
#@DESCRIPTION: Machine configuration for the NBHW16 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "16"
NM_MODELS = "800"
# WARNING: This file needs to be kept in sync with HW24. Therefor use the common include:
require include/am335x-nrhw16-nrhw24.inc
UBOOT_MACHINE = "am335x_nbhw16_defconfig"

View File

@ -1,22 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW14 based routers like NB2800
#@DESCRIPTION: Machine configuration for the NBHW17 based routers http://netmodule.com/en/products/iot-routers
require include/armada.inc
NRHW = "17"
NM_MODELS = "2800 2810"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "armada-385-hw17_defconfig"
# U-Boot reads actual DTB file name from board descriptor, see:
# printenv fdt_image
KERNEL_DEVICETREE = "openwrt-nbhw17.dtb"
EXT_SERIAL_CONSOLE ?= "115200;ttyS1"
SERIAL_CONSOLES = "${EXT_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
fpga \
"

View File

@ -1,26 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW18 based routers like NB1800
#@DESCRIPTION: Machine configuration for the NBHW18 based routers http://netmodule.com/en/products/iot-routers
require include/armada.inc
NRHW = "18"
NM_MODELS = "1800 1810"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "armada-385-hw18_defconfig"
# U-Boot reads actual DTB file name from board descriptor, see:
# printenv fdt_image
KERNEL_DEVICETREE = " \
armada-385-nbhw18-recovery.dtb \
armada-385-nbhw18-prod1.dtb \
"
DEBUG_SERIAL_CONSOLE ?= "115200;ttyS0"
EXT_SERIAL_CONSOLE ?= "115200;ttyS1"
SERIAL_CONSOLES = "${EXT_SERIAL_CONSOLE} ${DEBUG_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
fpga \
"

View File

@ -1,24 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW16 based routers like NB800
#@DESCRIPTION: Machine configuration for the NBHW16 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "20"
NM_MODELS = "1601 B-1601"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "am335x_nrhw20_defconfig"
KERNEL_DEVICETREE = "\
am335x-nrhw20-prod1.dtb \
"
EXT_SERIAL_CONSOLE ?= "115200;ttyS1"
COMIO_SERIAL_CONSOLE ?= "115200;ttyS0"
SERIAL_CONSOLES = "${EXT_SERIAL_CONSOLE} ${COMIO_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
wifi \
ti-wifi \
"

View File

@ -1,23 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW22 based routers like NB650 / Phoenix Timeserver
#@DESCRIPTION: Machine configuration for the NBHW22 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "22"
NM_MODELS = "650"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "am335x_nrhw22_defconfig"
KERNEL_DEVICETREE = "\
am335x-nrhw22-prod1.dtb \
"
DEBUG_SERIAL_CONSOLE ?= "115200;ttyS0"
SERIAL_CONSOLES = "${DEBUG_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
wifi \
ti-wifi \
"

View File

@ -1,14 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW24 based routers like NB800 facelift / NB800mk2 (or however you like to call it)
#@DESCRIPTION: Machine configuration for the NBHW24 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "24"
NM_MODELS = "B-800"
UBOOT_MACHINE = "am335x_nrhw24_defconfig"
# WARNING: This file needs to be kept in sync with HW24. Therefor use the common include:
require include/am335x-nrhw16-nrhw24.inc

View File

@ -1,25 +0,0 @@
#@TYPE: Machine
#@NAME: NRHW25 based routers like TC-Router
#@DESCRIPTION: Machine configuration for the NBHW24 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "25"
NM_MODELS ?= "660 670"
MAX_FS_SIZE = "279542"
UBOOT_MACHINE = "am335x_hw25_defconfig"
KERNEL_DEVICETREE = "\
am335x-hw25-prod1.dtb \
"
# ext serial only on Sc models
EXT_SERIAL_CONSOLE ?= "115200;ttyS5"
DEBUG_SERIAL_CONSOLE ?= "115200;ttyS0"
SERIAL_CONSOLES = "${EXT_SERIAL_CONSOLE} ${DEBUG_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
wifi \
ti-wifi \
"

View File

@ -1,25 +0,0 @@
#@TYPE: Machine
#@NAME: HW26 based routers like NG800
#@DESCRIPTION: Machine configuration for the HW26 based routers http://netmodule.com/en/products/iot-routers
require include/ti33x.inc
NRHW = "26"
NM_MODELS = "G-800"
MAX_FS_SIZE = "279542"
# HW26 is based on HW21, the boot config is the same
UBOOT_MACHINE = "am335x_nmhw21_defconfig"
KERNEL_DEVICETREE = "\
am335x-hw26-prod1.dtb \
"
EXT_SERIAL_CONSOLE ?= "115200;ttyS2"
SERIAL_CONSOLES = "${EXT_SERIAL_CONSOLE}"
MACHINE_FEATURES += " \
wifi \
ti-wifi \
"

View File

@ -1,60 +0,0 @@
diff --git a/license_info.c b/license_info.c
index 5e56753..d88d590 100644
--- a/license_info.c
+++ b/license_info.c
@@ -32,8 +32,53 @@
#include "license_info.h"
#include "bigdigits.h"
-#include <license-key.h>
-#include <bofh-key.h>
+#ifndef _LICENSE_KEY_H
+#define _LICENSE_KEY_H
+
+#define HMAC_KEY_SIZE 20
+#define SHA1_DIGEST_SIZE 20
+#define MOD_LENGTH 1536
+
+/* RSA public key */
+
+static
+unsigned char rsa1536E[MOD_LENGTH/8] =
+{
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
+} ;
+
+static
+unsigned char rsa1536N[MOD_LENGTH/8] =
+{
+ 0xA1, 0xFD, 0x5A, 0xC5, 0x77, 0xB8, 0xCC, 0x20, 0xFC, 0x80, 0xC2, 0xF0, 0xBD, 0x6F, 0x6F, 0x4A,
+ 0xEC, 0x70, 0xEE, 0x18, 0xBD, 0x6C, 0x07, 0xBB, 0xD6, 0x57, 0xE2, 0xE7, 0x3F, 0x2D, 0x51, 0x6D,
+ 0x9B, 0x76, 0xD7, 0x93, 0xCC, 0x1B, 0x7B, 0x38, 0x2F, 0x10, 0xEC, 0xAD, 0x3A, 0x79, 0x0C, 0xC6,
+ 0x74, 0x76, 0x93, 0x13, 0x6A, 0x20, 0xD9, 0xEB, 0x5B, 0x3C, 0x47, 0xB7, 0xCA, 0xAA, 0xFF, 0x7B,
+ 0x7F, 0x5A, 0x7D, 0xEE, 0xA3, 0x0B, 0xA0, 0x57, 0xB4, 0xB8, 0x77, 0xE9, 0xAD, 0x6D, 0xE8, 0xF7,
+ 0xF8, 0x2F, 0xE7, 0x49, 0xE5, 0x17, 0xBB, 0x7D, 0x5A, 0x6D, 0xF2, 0xD8, 0x1B, 0x01, 0x51, 0xB1,
+ 0x63, 0x48, 0xC1, 0x9E, 0x74, 0xE6, 0x64, 0xB1, 0x9C, 0xC9, 0xFC, 0x75, 0x73, 0x9F, 0x61, 0x89,
+ 0xE1, 0x10, 0x88, 0xFF, 0x90, 0x53, 0xE6, 0x4A, 0x41, 0x63, 0x01, 0x60, 0x2F, 0x85, 0x93, 0xAC,
+ 0x1A, 0x68, 0xAA, 0x8D, 0xBD, 0x31, 0x70, 0xF7, 0x48, 0x5B, 0xFF, 0x44, 0xC9, 0x63, 0xDC, 0xE4,
+ 0x25, 0x5E, 0xBA, 0xD5, 0x3E, 0x11, 0x55, 0xF4, 0x41, 0x58, 0xCF, 0xB3, 0x8A, 0x7A, 0x2B, 0xC3,
+ 0xA7, 0x07, 0x47, 0xAA, 0x88, 0x44, 0x18, 0x5C, 0x8B, 0x88, 0x64, 0x39, 0x07, 0xC4, 0xD1, 0x82,
+ 0x62, 0xA7, 0xDB, 0x9A, 0x53, 0x4D, 0xB9, 0x36, 0x69, 0x72, 0x01, 0x75, 0x88, 0x40, 0xD5, 0xF5,
+} ;
+
+static char checksumKey[HMAC_KEY_SIZE] = {0x17, 0x5e, 0x73, 0x42, 0xb9, 0xae, 0x11, 0xcd, 0x91, 0xa3,
+ 0x9a, 0xf4, 0x8c, 0xa1, 0x7b, 0x4f, 0x63, 0xf1, 0x75, 0xd3};
+
+#endif
/*--- defines ----------------------------------------------------------------*/

View File

@ -1,27 +0,0 @@
HOMEPAGE = "http://www.netmodule.com"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://git.netmodule.intranet/NRSW/board-descriptor.git;protocol=ssh;user=gitea;branch=master \
file://0001-license-key.patch \
"
PV = "1.0+git${SRCPV}"
SRCREV="75b608d47b1c98cb66caf9a5d5a82b27990d8bbf"
S = "${WORKDIR}/git"
DEPENDS = "virtual/kernel"
inherit module
do_install:append() {
install -d ${D}/usr/include/board-descriptor/linux/
install -m 0755 ${S}/board_descriptor.h ${D}/usr/include/board-descriptor/linux/
install -m 0755 ${S}/bdparser.h ${D}/usr/include/board-descriptor/linux/
}
EXTRA_OEMAKE:append:task-install = " -C ${STAGING_KERNEL_DIR} M=${S}"
KERNEL_MODULE_AUTOLOAD += " board-descriptor "

View File

@ -1,22 +0,0 @@
HOMEPAGE = "http://www.netmodule.com"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://git.netmodule.intranet/NRSW/netbox_pcie.git;protocol=ssh;user=gitea;branch=master \
"
PV = "1.0+git${SRCPV}"
SRCREV = "b479888720835ae1a03c78531e08ff5f70e26b50"
S = "${WORKDIR}/git"
DEPENDS = "virtual/kernel kernel-module-board-descriptor"
inherit module
KERNEL_CC:append = " -I${STAGING_DIR_TARGET}/usr/include/board-descriptor"
EXTRA_OEMAKE:append:task-install = " -C ${STAGING_KERNEL_DIR} M=${S}"
KERNEL_MODULE_AUTOLOAD += " pcie "

View File

@ -1,35 +0,0 @@
diff --git a/netbox_system_info.c b/netbox_system_info.c
index e6bf81e..823479b 100644
--- a/netbox_system_info.c
+++ b/netbox_system_info.c
@@ -26,7 +26,11 @@
#include <linux/mmc/sdio_func.h>
#include <net/rtnetlink.h>
#include <asm/byteorder.h>
-#include <nbsw.h>
+#define NBSW_VERSION_MAJOR 0
+#define NBSW_VERSION_MINOR 0
+#define NBSW_VERSION_PATCH 0
+#define NBSW_VERSION_BUILD 0
+#define NBSW_VERSION_DATE "20230101000000"
#include <linux/board_descriptor.h>
#include <linux/bdparser.h>
#include <linux/version.h>
diff --git a/netmodule_system_init.c b/netmodule_system_init.c
index dbf3c8b..1fa531b 100755
--- a/netmodule_system_init.c
+++ b/netmodule_system_init.c
@@ -14,7 +14,12 @@
#include <linux/of_device.h>
#include <linux/i2c.h>
#include <linux/board_descriptor.h>
-#include <bd-key.h>
+#ifndef _BD_KEY_H
+#define _BD_KEY_H
+
+static const unsigned char BD_KEY[] = { 0xa1, 0x73, 0x17, 0x9a, 0x5e, 0xf4, 0x42, 0xb9, 0xae, 0x8c,
+ 0xa3, 0xcd, 0x75, 0x63, 0xd3, 0x91, 0x4f, 0x11, 0xf1, 0x7b};
+#endif
#include <misc/nrsw-global.h>
#include "netbox_system_info.h"

View File

@ -1,514 +0,0 @@
diff --git a/netbox-sim.c b/netbox-sim.c
index 3c4eefd..2eb34ee 100644
--- a/netbox-sim.c
+++ b/netbox-sim.c
@@ -579,7 +579,6 @@ int netbox_sim_init (void)
major = 235;
switch (NBHW) {
-#ifdef NBSW_TARGET_netbolt_arm
case 14 :
hwops = &netbox_sim14_ops;
break;
@@ -589,7 +588,6 @@ int netbox_sim_init (void)
case 18 :
hwops = &netbox_sim17_ops;
break;
-#elif defined(NBSW_TARGET_netbird_arm)
case 16 :
hwops = &netbox_sim16_ops;
break;
@@ -605,7 +603,6 @@ int netbox_sim_init (void)
case 26 :
hwops = &netbox_sim26_ops;
break;
-#endif
default :
SIM_LOG(KERN_ERR, "netbox_sim_init: Hardware not supported");
return -1;
diff --git a/netbox-sim.h b/netbox-sim.h
index 336234f..2585ec8 100644
--- a/netbox-sim.h
+++ b/netbox-sim.h
@@ -11,8 +11,6 @@
#ifndef _NETBOX_SIM_H
#define _NETBOX_SIM_H
-#include <nbsw.h>
-
#define SIM_LOG(level, format, arg...) printk(level "sim: " format "\n", ##arg)
#define MAX_SIMS 14
@@ -54,18 +52,13 @@ extern int netbox_sim_init (void);
extern void netbox_sim_uninit (void);
extern void netbox_sim_changed (int dindex, int inserted);
-#ifdef NBSW_TARGET_netbolt_arm
extern struct sim_ops netbox_sim14_ops;
extern struct sim_ops netbox_sim17_ops;
-#endif
-
-#ifdef NBSW_TARGET_netbird_arm
extern struct sim_ops netbox_sim16_ops;
extern struct sim_ops netbox_sim20_ops;
extern struct sim_ops netbox_sim24_ops;
extern struct sim_ops netbox_sim25_ops;
extern struct sim_ops netbox_sim26_ops;
-#endif
#endif /* _NETBOX_SIM_H */
diff --git a/netbox-sim14.c b/netbox-sim14.c
index b00d010..e8c0f03 100644
--- a/netbox-sim14.c
+++ b/netbox-sim14.c
@@ -17,22 +17,17 @@
#include <linux/module.h>
#include <linux/timer.h>
#include <linux/device.h>
-#include <nbsw.h>
#include <linux/board_descriptor.h>
#include "netbox-sim.h"
#include "netbox_system_info.h"
-#if defined(NBSW_TARGET_netbolt_arm)
-
/**********************************************************************/
#include <asm/io.h>
-#if defined(NBSW_TARGET_netbolt_arm)
#define FPGA_BASE_ADDRESS 0xFD000000
#define EXT_IRQ_PIN 24
#include <linux/gpio.h>
-#endif
#define FPGA_BASE_SIZE 131072
#define FPGA_IDENTIFICATION 0x0000
@@ -486,4 +481,3 @@ struct sim_ops netbox_sim14_ops = {
};
EXPORT_SYMBOL(netbox_sim14_ops);
-#endif
diff --git a/netbox-sim16.c b/netbox-sim16.c
index 9120e9a..d40eb94 100644
--- a/netbox-sim16.c
+++ b/netbox-sim16.c
@@ -16,8 +16,6 @@
#include <linux/gpio.h>
#include "netbox-sim.h"
-#ifdef NBSW_TARGET_netbird_arm
-
#define DEBUG 0
/**********************************************************************/
@@ -108,4 +106,3 @@ struct sim_ops netbox_sim16_ops = {
};
EXPORT_SYMBOL(netbox_sim16_ops);
-#endif /* NBSW_TARGET_netbird_arm */
diff --git a/netbox-sim17.c b/netbox-sim17.c
index 8711390..5e70391 100644
--- a/netbox-sim17.c
+++ b/netbox-sim17.c
@@ -17,12 +17,9 @@
#include <linux/module.h>
#include <linux/timer.h>
#include <linux/device.h>
-#include <nbsw.h>
#include <misc/nrsw-global.h>
#include "netbox-sim.h"
-#if defined(NBSW_TARGET_netbolt_arm)
-
/**********************************************************************/
#include <asm/io.h>
@@ -325,4 +322,3 @@ struct sim_ops netbox_sim17_ops = {
};
EXPORT_SYMBOL(netbox_sim17_ops);
-#endif
diff --git a/netbox-sim20.c b/netbox-sim20.c
index d0c4ea3..4e52197 100644
--- a/netbox-sim20.c
+++ b/netbox-sim20.c
@@ -16,8 +16,6 @@
#include <linux/gpio.h>
#include "netbox-sim.h"
-#ifdef NBSW_TARGET_netbird_arm
-
#define DEBUG 0
/**********************************************************************/
@@ -138,4 +136,3 @@ struct sim_ops netbox_sim20_ops = {
};
EXPORT_SYMBOL(netbox_sim20_ops);
-#endif /* NBSW_TARGET_netbird_arm */
diff --git a/netbox-sim24.c b/netbox-sim24.c
index f5e20bf..1601a9f 100644
--- a/netbox-sim24.c
+++ b/netbox-sim24.c
@@ -16,8 +16,6 @@
#include <linux/gpio.h>
#include "netbox-sim.h"
-#ifdef NBSW_TARGET_netbird_arm
-
#define DEBUG 0
/**********************************************************************/
@@ -139,4 +137,3 @@ struct sim_ops netbox_sim24_ops = {
};
EXPORT_SYMBOL(netbox_sim24_ops);
-#endif /* NBSW_TARGET_netbird_arm */
diff --git a/netbox-sim25.c b/netbox-sim25.c
index 05370f8..5b16de5 100644
--- a/netbox-sim25.c
+++ b/netbox-sim25.c
@@ -16,8 +16,6 @@
#include <linux/gpio.h>
#include "netbox-sim.h"
-#ifdef NBSW_TARGET_netbird_arm
-
#define DEBUG 0
/**********************************************************************/
@@ -139,4 +137,3 @@ struct sim_ops netbox_sim25_ops = {
};
EXPORT_SYMBOL(netbox_sim25_ops);
-#endif /* NBSW_TARGET_netbird_arm */
diff --git a/netbox-sim26.c b/netbox-sim26.c
index 050c8e5..cd53d45 100644
--- a/netbox-sim26.c
+++ b/netbox-sim26.c
@@ -16,8 +16,6 @@
#include <linux/gpio.h>
#include "netbox-sim.h"
-#ifdef NBSW_TARGET_netbird_arm
-
#define DEBUG 0
/**********************************************************************/
@@ -140,4 +138,3 @@ struct sim_ops netbox_sim26_ops = {
};
EXPORT_SYMBOL(netbox_sim26_ops);
-#endif /* NBSW_TARGET_netbird_arm */
diff --git a/netbox_system_info.c b/netbox_system_info.c
index e6bf81e..1f7ee01 100644
--- a/netbox_system_info.c
+++ b/netbox_system_info.c
@@ -35,7 +35,7 @@
#include "netbox-sim.h"
#include "../../../drivers/net/wireless/ath/ath9k/ath9k.h"
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
extern int mvebu_get_soc_id(u32 *dev, u32 *rev);
#endif
@@ -1197,7 +1197,6 @@ static netbox_dev_t netbox_c_can_dev = {
.gnss_type = 0
};
-#if defined(NBSW_TARGET_netbird_arm)
static netbox_dev_t netbox_uart_gnss_dev = {
/* c_can (CAN) */
.idVendor = 0x00,
@@ -1230,7 +1229,6 @@ static netbox_dev_t netbox_uart_gnss_hw22_dev = {
.gnss_type = GNSS_TYPE_GPS | GNSS_TYPE_GLONASS | GNSS_TYPE_GALILEO |
GNSS_TYPE_QZSS
};
-#endif
static netbox_dev_t * netbox_lookup_dev (uint16_t idVendor, uint16_t idProduct,
const char *product, const char *serial)
@@ -1334,7 +1332,7 @@ static int starts_with (const char* usb_id, const char* prefix)
/*-------------------------------------------------------------------------*/
-#if defined(NBSW_TARGET_netbird_arm)
+#if defined(CONFIG_SOC_AM33XX)
static int nr_usb_controllers (void)
{
static int nr = 0;
@@ -1359,7 +1357,7 @@ static int nr_usb_controllers (void)
int pcie_slot_number_from_usb_id (const char* usb_id)
{
switch (NBHW) {
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_SOC_AM33XX)
case 14 :
if ((NBMCver<5) || ((NBMCver==5) && (NBMCrel<=1))) {
/* MC board < 5.2 */
@@ -1427,9 +1425,9 @@ int pcie_slot_number_from_usb_id (const char* usb_id)
} else if (starts_with(usb_id, "1-1.4")) {
return 4;
}
-
break;
-#elif defined(NBSW_TARGET_netbird_arm)
+#endif /* CONFIG_ARCH_MVEBU */
+#if defined(CONFIG_SOC_AM33XX)
case 16 :
if (nr_usb_controllers() == 2) {
/* modems are connected to 2nd USB controller if present */
@@ -1452,7 +1450,7 @@ int pcie_slot_number_from_usb_id (const char* usb_id)
case 26 :
if (starts_with(usb_id, "2-1")) return 0;
break;
-#endif
+#endif /* CONFIG_SOC_AM33XX */
default :
break;
}
@@ -1460,7 +1458,7 @@ int pcie_slot_number_from_usb_id (const char* usb_id)
}
EXPORT_SYMBOL(pcie_slot_number_from_usb_id);
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
static int get_pex2_slot(void) {
/* Determine based on the FPGA PCIe mux config to which slot PEX2 is routed */
@@ -1494,7 +1492,7 @@ int pcie_slot_number_from_pdev (struct pci_dev *pdev)
if (!pdev) return -1;
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
switch (NBHW) {
case 14 :
if (NBMCver >= 4) {
@@ -1525,7 +1523,7 @@ int pcie_slot_number_from_pdev (struct pci_dev *pdev)
default:
break;
}
-#endif
+#endif /* CONFIG_ARCH_MVEBU */
return slot;
}
@@ -1789,7 +1787,7 @@ static void free_usb_devices (void)
/*-------------------------------------------------------------------------*/
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
static int add_pci_device (struct pci_dev * pdev, void * user_data)
{
@@ -1816,7 +1814,9 @@ static void find_pci_devices (void)
pci_probed = 1;
}
-#else
+#endif
+
+#if defined(CONFIG_SOC_AM33XX)
static void find_pci_devices (void)
{
@@ -1836,7 +1836,7 @@ int sdio_slot_number_from_func (struct sdio_func *func)
{
int slot = -1;
-#ifdef NBSW_TARGET_netbird_arm
+#if defined(CONFIG_SOC_AM33XX)
switch (NBHW) {
case 16:
case 20:
@@ -1852,7 +1852,7 @@ int sdio_slot_number_from_func (struct sdio_func *func)
return slot;
}
-#if defined(NBSW_TARGET_netbird_arm)
+#if defined(CONFIG_SOC_AM33XX)
static int add_sdio_device (struct sdio_func *func)
{
return add_device_list(&sdio_devices, func->vendor, func->device, sdio_slot_number_from_func(func), NULL);
@@ -2682,7 +2682,7 @@ static void check_buses (void)
netbox_dev_t *nbdev;
tmpdev_t *d;
-#if defined(NBSW_TARGET_netbird_arm)
+#if defined(CONFIG_SOC_AM33XX)
uint16_t shield;
int res;
#endif
@@ -2780,7 +2780,7 @@ static void check_buses (void)
add_can_interface(nbdev, d->slot, d->bus, d->hwinfo);
}
-#if defined(NBSW_TARGET_netbird_arm)
+#if defined(CONFIG_SOC_AM33XX)
if ((NBHW==20) || /* NBHW20 has a built in GNSS on slot 2 */
(NBHW==22) || /* NBHW22 has a built in GNSS on slot 0 */
(NBHW==24) || /* NBHW24 has a built in GNSS on slot 2 */
@@ -2842,7 +2842,7 @@ unlock:
#define BLMAGIC_START 0x424C5354
#define BLMAGIC_END 0x424C454E
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
static int read_uboot_version_from_part(const char* path)
{
struct file *f;
@@ -2917,7 +2917,7 @@ static int armada_read_mmc_uboot_version (void)
return rc;
}
-#elif defined(NBSW_TARGET_netbird_arm)
+#elif defined(CONFIG_SOC_AM33XX)
static const char* get_sitara_boot_device(void)
{
@@ -5047,7 +5047,13 @@ static const struct proc_ops proc_release_version_fops = {
static int proc_nbsw_profile_show (struct seq_file *seq, void *v)
{
- seq_printf(seq, "%s\n", NBSW_PROFILE);
+#if defined(CONFIG_ARCH_MVEBU)
+ seq_printf(seq, "%s\n", "NETBOLT");
+#elif defined(CONFIG_SOC_AM33XX)
+ seq_printf(seq, "%s\n", "NETBIRD");
+#else
+#error "unknown target"
+#endif
return 0;
}
@@ -5104,7 +5110,7 @@ static const struct proc_ops proc_release_date_fops = {
/*-------------------------------------------------------------------------*/
-#ifdef NBSW_TARGET_netbird_arm
+#if defined(CONFIG_SOC_AM33XX)
static int sitara_read_spl_version_from_location(const int location, char* version, int version_length)
{
@@ -5168,10 +5174,6 @@ static int proc_spl_version_show (struct seq_file *seq, void *v)
return 0;
}
-#endif
-
-#if defined(NBSW_TARGET_netbird_arm)
-
static int proc_spl_version_open (struct inode *inode, struct file *file)
{
return single_open(file, proc_spl_version_show, PDE_DATA(inode));
@@ -5193,15 +5195,15 @@ static const struct proc_ops proc_spl_version_fops = {
.proc_release = single_release,
};
#endif
-#endif /* NBSW_TARGET_netbird_arm */
+#endif /* CONFIG_SOC_AM33XX */
/*-------------------------------------------------------------------------*/
static int proc_uboot_version_show (struct seq_file *seq, void *v)
{
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
armada_read_mmc_uboot_version();
-#elif defined(NBSW_TARGET_netbird_arm)
+#elif defined(CONFIG_SOC_AM33XX)
sitara_read_mmc_uboot_version();
#endif
if (uboot_version != 0xFFFFFFFF) {
@@ -5241,7 +5243,7 @@ static const struct proc_ops proc_uboot_version_fops = {
static int proc_cpuinfo_show (struct seq_file *seq, void *v)
{
-#if defined(NBSW_TARGET_netbolt_arm)
+#if defined(CONFIG_ARCH_MVEBU)
{
u32 dev, rev;
char* rev_str;
@@ -5266,7 +5268,7 @@ static int proc_cpuinfo_show (struct seq_file *seq, void *v)
}
seq_printf(seq, "MV%4.4X Rev %s (0x%2.2x)\n", dev, rev_str, rev);
}
-#elif defined(NBSW_TARGET_netbird_arm)
+#elif defined(CONFIG_SOC_AM33XX)
{
void* iomap;
unsigned int device_id, rev, part, mfgr;
@@ -5509,7 +5511,7 @@ static void usbport_probe (struct usb_device *hdev, int port)
if (usbports_probed) return;
switch (NBHW) {
-#ifdef NBSW_TARGET_netbolt_arm
+#if defined(CONFIG_ARCH_MVEBU)
case 14 :
if (NBMCver == 0) {
/* happens early, check if MC version has been provided on cmdline */
@@ -5566,7 +5568,8 @@ static void usbport_probe (struct usb_device *hdev, int port)
if (usbports[0]) probed++;
}
break;
-#elif defined(NBSW_TARGET_netbird_arm)
+#endif /* CONFIG_ARCH_MVEBU */
+#if defined(CONFIG_SOC_AM33XX)
case 16 :
case 24 :
case 25 :
@@ -5586,7 +5589,7 @@ static void usbport_probe (struct usb_device *hdev, int port)
if (usbports[0]) probed = MAX_NUMBER_OF_USBPORTS;
}
break;
-#endif
+#endif /* CONFIG_SOC_AM33XX */
default:
break;
}
@@ -5898,7 +5901,6 @@ int netbox_system_info_prepare (void)
if (NRSW_SYSTEM_INFO_DIR) return 0;
-#ifdef NBSW_TARGET_netbolt_arm
switch (NBHW) {
case 14 :
MAX_NUMBER_OF_WWAN_INTERFACES = 6;
@@ -5929,11 +5931,6 @@ int netbox_system_info_prepare (void)
MAX_NUMBER_OF_CAN_INTERFACES = 4;
MAX_NUMBER_OF_UART_INTERFACES = 2;
break;
- default :
- break;
- }
-#elif defined(NBSW_TARGET_netbird_arm)
- switch (NBHW) {
case 16 :
MAX_NUMBER_OF_WWAN_INTERFACES = 1;
MAX_NUMBER_OF_WLAN_INTERFACES = 1;
@@ -5988,7 +5985,7 @@ int netbox_system_info_prepare (void)
default :
break;
}
-#endif
+
NRSW_SYSTEM_INFO_DIR = proc_mkdir("sysinfo", NULL);
if (!NRSW_SYSTEM_INFO_DIR) return -1;
@@ -6104,9 +6101,9 @@ int netbox_system_info_prepare (void)
proc_create_data(SI_RELEASE_VERSION, S_IRUGO, dir, &proc_release_version_fops, (void *) 0);
proc_create_data(SI_NBSW_PROFILE, S_IRUGO, dir, &proc_nbsw_profile_fops, (void *) 0);
proc_create_data(SI_RELEASE_DATE, S_IRUGO, dir, &proc_release_date_fops, (void *) 0);
-#if defined(NBSW_TARGET_netbird_arm)
+#if defined(CONFIG_SOC_AM33XX)
proc_create_data(SI_SPL_VERSION, S_IRUGO, dir, &proc_spl_version_fops, (void *) 0);
-#endif /* NBSW_TARGET_netbird_arm */
+#endif /* CONFIG_SOC_AM33XX */
proc_create_data(SI_UBOOT_VERSION, S_IRUGO, dir, &proc_uboot_version_fops, (void *) 0);
proc_create_data(SI_CPU_INFO, S_IRUGO, dir, &proc_cpuinfo_fops, (void *) 0);
proc_create_data(SI_MODULES_PROBED, S_IRUGO, dir, &proc_modules_probed_fops, (void *) 0);

View File

@ -1,28 +0,0 @@
HOMEPAGE = "http://www.netmodule.com"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://git.netmodule.intranet/NRSW/system-info.git;protocol=ssh;user=gitea;branch=master \
file://0001-dummy-version-info-and-bd-key.patch \
"
PV = "1.0+git${SRCPV}"
SRCREV = "9ac224b6411758ec399518b0781659f1d8b7beb7"
S = "${WORKDIR}/git"
DEPENDS = "virtual/kernel kernel-module-board-descriptor kernel-module-pcie"
inherit module
KERNEL_CC:append = " -I${STAGING_DIR_TARGET}/usr/include/board-descriptor"
do_install:append() {
install -d ${D}/usr/include/system-info/linux/
install -m 0755 ${S}/netbox_system_info.h ${D}/usr/include/system-info/linux/
}
EXTRA_OEMAKE:append:task-install = " -C ${STAGING_KERNEL_DIR} M=${S}"
KERNEL_MODULE_AUTOLOAD += " system-info "

View File

@ -1,26 +0,0 @@
DESCRIPTION = "Fpga images"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28"
inherit deploy
COMPATIBLE_MACHINE = "(netmodule-hw17|netmodule-hw18)"
SRC_URI = "file://LG00000000"
PACKAGE_ARCH = "${MACHINE_ARCH}"
PV = "1.0.0"
do_install () {
install -d ${D}/logic
install -m 0644 ${WORKDIR}/LG00000000 ${D}/logic/
}
do_deploy () {
cp ${WORKDIR}/LG00000000 ${DEPLOYDIR}/fpga-image-${MACHINE}
}
FILES:${PN} += "/logic/LG00000000"
addtask deploy before do_build after do_compile

View File

@ -1,44 +0,0 @@
From 52c3ac31426131c555093542d51f1e6e0623507c Mon Sep 17 00:00:00 2001
From: Marc Mattmueller <marc.mattmueller@netmodule.com>
Date: Mon, 18 Jul 2022 19:26:59 +0200
Subject: [PATCH] u-boot-armada: Remove redundant YYLOC global declaration
Same as the upstream fix for building dtc with gcc 10.
After having consulted the team, this patch is only applied to
the armada bootloader as this one is used on the core os
environment build-up.
Signed-off-by: Marc Mattmueller <marc.mattmueller@netmodule.com>
---
scripts/dtc/dtc-lexer.l | 1 -
scripts/dtc/dtc-lexer.lex.c_shipped | 1 -
2 files changed, 2 deletions(-)
diff --git a/scripts/dtc/dtc-lexer.l b/scripts/dtc/dtc-lexer.l
index fd825ebba6..24af549977 100644
--- a/scripts/dtc/dtc-lexer.l
+++ b/scripts/dtc/dtc-lexer.l
@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n
#include "srcpos.h"
#include "dtc-parser.tab.h"
-YYLTYPE yylloc;
extern bool treesource_error;
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */
diff --git a/scripts/dtc/dtc-lexer.lex.c_shipped b/scripts/dtc/dtc-lexer.lex.c_shipped
index 3934d8624d..22f6e0d1f8 100644
--- a/scripts/dtc/dtc-lexer.lex.c_shipped
+++ b/scripts/dtc/dtc-lexer.lex.c_shipped
@@ -639,7 +639,6 @@ char *yytext;
#include "srcpos.h"
#include "dtc-parser.tab.h"
-YYLTYPE yylloc;
extern bool treesource_error;
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */
--
2.20.1

View File

@ -1,27 +0,0 @@
require u-boot-nm.inc
SRC_URI = "git://git.netmodule.intranet/nmrouter/u-boot.git;protocol=ssh;user=gitea;branch=nrsw-armada-2017.11 \
file://0001-remove-redundant-YYLOC-declaration.patch;name=yylloc \
"
SRC_URI[yylloc.md5sum] = "504cb5b73a174a32e55c58f60608925d"
DEPENDS += "bc-native"
SRCREV = "2fe363eb69a360c9e9b6bd53dfdab32772b2f41a"
UBOOT_SUFFIX = "kwb"
UBOOT_BINARY = "u-boot-spl.${UBOOT_SUFFIX}"
do_deploy() {
# xmodem files
cp ${B}/spl/u-boot-spl.bin ${DEPLOYDIR}/spl-u-boot-${MACHINE}.xmodem.bin
cp ${B}/u-boot.bin ${DEPLOYDIR}/u-boot-${MACHINE}.xmodem.bin
# file for wic file
cp ${B}/${UBOOT_BINARY} ${DEPLOYDIR}/u-boot-spl.${UBOOT_SUFFIX}
# file for user usage
cp ${B}/${UBOOT_BINARY} ${DEPLOYDIR}/u-boot-${MACHINE}.${UBOOT_SUFFIX}
}

View File

@ -1,19 +0,0 @@
require recipes-bsp/u-boot/u-boot.inc
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
do_configure[cleandirs] = "${B}"
UBOOT_INITIAL_ENV = ""
# This variable is set to "0" in distro in order to get reproducible build
# It is however not needed for uboot and unsetting it allows us to keep the build date in uboot output
unset SOURCE_DATE_EPOCH
# CFLAGS are unset by u-boot.inc
# The user flags should be passed by KCFLAGS, but for some reason, it does not work
# KCCPFLAGS on the other hand also end in the actual cflags
export KCPPFLAGS = "-DCONFIG_NRSW_BUILD"

View File

@ -1,22 +0,0 @@
require u-boot-nm.inc
SRC_URI = "git://git.netmodule.intranet/nmrouter/u-boot.git;protocol=ssh;user=gitea;branch=nrsw-sitara-2016.04"
SRCREV = "66fb8f8532ba174b14542c0c8a0245818df14f02"
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
do_deploy() {
# xmodem files
cp ${B}/spl/u-boot-spl.bin ${DEPLOYDIR}/spl-u-boot-${MACHINE}.xmodem.bin
cp ${B}/u-boot.bin ${DEPLOYDIR}/u-boot-${MACHINE}.xmodem.bin
# files for wic file
cp ${B}/MLO ${DEPLOYDIR}/
cp ${B}/u-boot.img ${DEPLOYDIR}/
# files for user usage
cp ${B}/MLO ${DEPLOYDIR}/spl-u-boot-${MACHINE}.${UBOOT_SUFFIX}
cp ${B}/u-boot.img ${DEPLOYDIR}/u-boot-${MACHINE}.${UBOOT_SUFFIX}
}

View File

@ -1,14 +0,0 @@
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_RD_GZIP is not set
# CONFIG_RD_BZIP2 is not set
# CONFIG_RD_LZMA is not set
CONFIG_RD_XZ=y
# CONFIG_RD_LZO is not set
# CONFIG_RD_LZ4 is not set
# CONFIG_RD_ZSTD is not set
CONFIG_BOOT_CONFIG=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_DECOMPRESS_XZ=y

View File

@ -1,4 +0,0 @@
define KFEATURE_DESCRIPTION "Enable RAMDISK support"
define KFEATURE_COMPATIBILITY all
kconf non-hardware initrd.cfg

View File

@ -1,65 +0,0 @@
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_CFG80211=y
# CONFIG_NL80211_TESTMODE is not set
# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
CONFIG_CFG80211_DEFAULT_PS=y
CONFIG_CFG80211_CRDA_SUPPORT=y
# CONFIG_CFG80211_WEXT is not set
CONFIG_MAC80211=y
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
# CONFIG_MAC80211_MESH is not set
# CONFIG_MAC80211_LEDS is not set
# CONFIG_MAC80211_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_WLAN=y
# CONFIG_WIRELESS_WDS is not set
# CONFIG_WLAN_VENDOR_ADMTEK is not set
# CONFIG_WLAN_VENDOR_ATH is not set
# CONFIG_WLAN_VENDOR_ATMEL is not set
# CONFIG_WLAN_VENDOR_BROADCOM is not set
# CONFIG_WLAN_VENDOR_CISCO is not set
# CONFIG_WLAN_VENDOR_INTEL is not set
# CONFIG_WLAN_VENDOR_INTERSIL is not set
# CONFIG_WLAN_VENDOR_MARVELL is not set
# CONFIG_WLAN_VENDOR_MEDIATEK is not set
# CONFIG_WLAN_VENDOR_MICROCHIP is not set
# CONFIG_WLAN_VENDOR_RALINK is not set
# CONFIG_WLAN_VENDOR_REALTEK is not set
# CONFIG_WLAN_VENDOR_RSI is not set
# CONFIG_WLAN_VENDOR_ST is not set
CONFIG_WLAN_VENDOR_TI=y
# CONFIG_WL1251 is not set
# CONFIG_WL12XX is not set
CONFIG_WL18XX=y
CONFIG_WLCORE=y
# CONFIG_WLCORE_SPI is not set
CONFIG_WLCORE_SDIO=y
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WLAN_VENDOR_ZYDAS is not set
# CONFIG_WLAN_VENDOR_QUANTENNA is not set
# CONFIG_MAC80211_HWSIM is not set
# CONFIG_USB_NET_RNDIS_WLAN is not set
# CONFIG_VIRT_WIFI is not set
# CONFIG_PRISM2_USB is not set
# CONFIG_RTLLIB is not set
# CONFIG_RTL8723BS is not set
# CONFIG_R8712U is not set
# CONFIG_R8188EU is not set
# CONFIG_VT6656 is not set
# CONFIG_WFX is not set
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_LIB_ARC4=y
# CONFIG_PKCS7_TEST_KEY is not set
# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_SYSTEM_TRUSTED_KEYS=""
# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
# CONFIG_SECONDARY_TRUSTED_KEYRING is not set

View File

@ -1,4 +0,0 @@
define KFEATURE_DESCRIPTION "Wifi support for TI chips"
define KFEATURE_COMPATIBILITY all
kconf non-hardware wifi-ti.cfg

View File

@ -1,198 +0,0 @@
KERNEL_MODULE_AUTOLOAD += "\
act_ipt \
act_mirred \
act_police \
act_skbedit \
af_key \
ah4 \
ah6 \
asix \
ax88179_178a \
cdc-acm \
cdc_ether \
cdc_mbim \
cdc_ncm \
cdc_subset \
cls_basic \
cls_flow \
cls_fw \
cls_route \
cls_tcindex \
cls_u32 \
ebtables \
ebtable_filter \
ebt_log \
echainiv \
em_cmp \
em_meta \
em_nbyte \
em_text \
em_u32 \
esp4 \
esp4_offload \
esp6 \
fou \
ftdi_sio \
gcm \
gf128mul \
ghash-generic \
gre \
hso \
huawei_cdc_ncm \
ip6table_filter \
ip6table_mangle \
ip6table_raw \
ip6_tables \
ip6t_REJECT \
ipcomp \
ipcomp6 \
ip_gre \
ipip \
iptable_filter \
iptable_mangle \
iptable_nat \
iptable_raw \
ip_tables \
ipt_ah \
ipt_ECN \
ipt_MASQUERADE \
ipt_REJECT \
md4 \
mii \
nf_conncount \
nf_conntrack \
nf_conntrack_amanda \
nf_conntrack_broadcast \
nf_conntrack_ftp \
nf_conntrack_h323 \
nf_conntrack_irc \
nf_conntrack_netlink \
nf_conntrack_pptp \
nf_conntrack_proto_gre \
nf_conntrack_sip \
nf_conntrack_snmp \
nf_conntrack_tftp \
nf_defrag_ipv4 \
nf_defrag_ipv6 \
nf_log_common \
nf_log_ipv4 \
nf_log_ipv6 \
nf_nat \
nf_nat_amanda \
nf_nat_ftp \
nf_nat_h323 \
nf_nat_ipv4 \
nf_nat_irc \
nf_nat_pptp \
nf_nat_proto_gre \
nf_nat_sip \
nf_nat_tftp \
nfnetlink \
nf_reject_ipv4 \
nf_reject_ipv6 \
ppp_async \
ppp_mppe \
pppoe \
pptp \
qcserial \
qmi_wwan \
r8152 \
sch_codel \
sch_dsmark \
sch_fq \
sch_gred \
sch_hfsc \
sch_htb \
sch_ingress \
sch_pie \
sch_prio \
sch_red \
sch_sfq \
sch_tbf \
sch_teql \
sierra \
sierra_net \
snd \
snd-hwdep \
snd-mixer-oss \
snd-pcm \
snd-pcm-oss \
snd-rawmidi \
snd-seq-device \
snd-timer \
snd-usb-audio \
snd-usbmidi-lib \
soundcore \
ts_bm \
ts_fsm \
ts_kmp \
tun \
tunnel4 \
tunnel6 \
usbnet \
xfrm4_mode_beet \
xfrm4_mode_transport \
xfrm4_mode_tunnel \
xfrm4_tunnel \
xfrm6_mode_beet \
xfrm6_mode_transport \
xfrm6_mode_tunnel \
xfrm6_tunnel \
xfrm_algo \
xfrm_ipcomp \
xfrm_user \
x_tables \
xt_addrtype \
xt_CLASSIFY \
xt_comment \
xt_connbytes \
xt_connlimit \
xt_connmark \
xt_conntrack \
xt_CT \
xt_dscp \
xt_DSCP \
xt_ecn \
xt_esp \
xt_helper \
xt_hl \
xt_HL \
xt_iprange \
xt_length \
xt_limit \
xt_LOG \
xt_mac \
xt_mark \
xt_multiport \
xt_nat \
xt_NETMAP \
xt_owner \
xt_physdev \
xt_pkttype \
xt_policy \
xt_PORTMAP \
xt_quota \
xt_recent \
xt_REDIRECT \
xt_state \
xt_statistic \
xt_string \
xt_tcpmss \
xt_TCPMSS \
xt_tcpudp \
xt_time \
zlib_deflate \
zlib_inflate \
"
KERNEL_MODULE_AUTOLOAD_sitara += " \
snd-pcm-dmaengine \
snd-soc-core \
snd-soc-davinci-i2s \
snd-soc-davinci-mcasp \
snd-soc-edma \
"
KERNEL_MODULE_AUTOLOAD_armada += "\
kvaser_usb \
"

View File

@ -1,37 +0,0 @@
SUMMARY = "Recipe based on linux-yocto to build the NRSW kernel"
inherit kernel
require recipes-kernel/linux/linux-yocto.inc
require kernel-modules-autoload.inc
GIT_BRANCH = "nmlinux-5.15"
GIT_OPTIONS = "protocol=ssh;user=gitea;branch=${GIT_BRANCH};nocheckout=1"
SRC_URI = "\
git://git.netmodule.intranet/NRSW/nmlinux-kernel.git;${GIT_OPTIONS} \
file://defconfig \
file://features;type=kmeta;destsuffix=features \
"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
KERNEL_VERSION_SANITY_SKIP="1"
LINUX_VERSION = "5.15"
LINUX_VERSION_EXTENSION = "-netmodule"
SRCREV = "5a18cd05107545cb6f971c01126a13fc6a5d7eb6"
PV = "${LINUX_VERSION}+git${SRCPV}"
COMPATIBLE_MACHINE = "netmodule-hw*"
KERNEL_FEATURES ??= "\
initrd.scc \
wifi-ti.scc \
"
# This is set by linux-yocto but we need to remove it in
# order to automatically update the SRCREV
unset RECIPE_NO_UPDATE_REASON

View File

@ -1,13 +0,0 @@
# Dual root partition for sitara devices
part SPL --offset 256S --source rawcopy --sourceparams="file=MLO" --ondisk mmcblk1 --part-name "spl" --no-table
part u-boot --offset 768S --source rawcopy --sourceparams="file=u-boot.img" --ondisk mmcblk1 --part-name "uboot0" --no-table
part u-boot --offset 6912S --source rawcopy --sourceparams="file=u-boot.img" --ondisk mmcblk1 --part-name "uboot1" --no-table
part / --source rootfs --fstype=ext4 --ondisk mmcblk1 --fixed-size 1G --label "rootfs0"
part / --source rootfs --fstype=ext4 --ondisk mmcblk1 --fixed-size 1G --label "rootfs1"
# Shared data partition to be extended on live system
part /data --fstype=ext4 --ondisk mmcblk1 --size 100M --label "data" --part-name "data"
bootloader --ptable gpt

View File

@ -1,11 +0,0 @@
# Dual root partition for armada devices
bootloader --ptable gpt
part u-boot --source rawcopy --sourceparams="file=u-boot-spl.kwb" --ondisk mmcblk --no-table --align 384
part / --source rootfs --fstype=ext4 --ondisk mmcblk0 --fixed-size 1G --label "rootfs0"
part / --source rootfs --fstype=ext4 --ondisk mmcblk0 --fixed-size 1G --label "rootfs1"
# Shared data partition
part /data --fstype=ext4 --ondisk mmcblk0 --size 100M --label data

View File

@ -1,23 +0,0 @@
do_assemble_fitimage[depends] += "fpga-image:do_deploy"
#
# Emit the fitImage ITS fpga section
#
# $1 ... .its filename
# $2 ... Image counter
# $3 ... Path to fpga image
fitimage_emit_section_kernel:append() {
fpgacount=1
cat << EOF >> ${1}
fpga-${fpgacount} {
description = "FPGA";
data = /incbin/("${DEPLOY_DIR_IMAGE}/fpga-image-${MACHINE}");
type = "fpga";
arch = "${UBOOT_ARCH}";
compression = "none";
hash-1 {
algo = "sha1";
};
};
EOF
}

View File

@ -1,109 +0,0 @@
# This class generate a fitimage
# This class should ihnerited after the nwl-image class
# Configuration:
# ==============================================================================
# Set the initramfs to the current image being build by default
# This can be overriden if another image as to be included
INITRAMFS_IMAGE ??= "${IMAGE_BASENAME}"
INITRAMFS_IMAGE_NAME ??= "${INITRAMFS_IMAGE}-${MACHINE}"
# Glue for kernel-fitimage
# ==============================================================================
kernel_do_deploy () {
# The kernel-fitimage class appends the deployment to this task. We just have to provide the task.
deployDir=${DEPLOY_DIR_IMAGE}
}
inherit kernel-fitimage
inherit kernel-arch
inherit ${@bb.utils.contains('MACHINE_FEATURES', 'fpga', 'kernel-fitimage-fpga', '', d)}
do_assemble_fitimage:prepend() {
install -d ${S}/arch/${ARCH}/boot/
install -m 0644 ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${KERNEL_IMAGE_LINK_NAME}${KERNEL_IMAGE_BIN_EXT} ${S}/arch/${ARCH}/boot/vmlinuz.bin
for DTB in ${KERNEL_DEVICETREE}; do
# We have to watch out for when the device-tree is located in its own subdirectory in the kernel sources.
# DTB_SUBDIR will contain this directory.
DTB_DEPLOY=`basename ${DTB}`
DTB_SUBDIR=`dirname ${DTB}`
install -d arch/${ARCH}/boot/${DTB_SUBDIR}
install -m 0644 ${DEPLOY_DIR_IMAGE}/${DTB_DEPLOY} ${S}/arch/${ARCH}/boot/${DTB}
done
}
KERNEL_CLASSES = "kernel-fitimage"
KERNEL_IMAGETYPES += "fitImage"
# We want the initramfs inside the fitimage as a separate part and not bundle
# inside the kernel part
INITRAMFS_IMAGE_BUNDLE = "0"
do_image_fitimage() {
kernel_do_deploy
}
addtask image_fitimage after do_image before do_image_complete
addtask assemble_fitimage_initramfs after do_image before do_image_fitimage
addtask assemble_fitimage after do_image before do_image_fitimage
do_assemble_fitimage_initramfs[depends] += "virtual/kernel:do_deploy virtual/${TARGET_PREFIX}binutils:do_populate_sysroot"
do_assemble_fitimage[depends] += "virtual/kernel:do_deploy virtual/${TARGET_PREFIX}binutils:do_populate_sysroot"
# a fitimage image can be embedded into a WIC image
do_image_wic[recrdeptask] += "do_image_fitimage"
python __anonymous () {
initramfs = d.getVar('INITRAMFS_IMAGE')
image = d.getVar('IMAGE_BASENAME')
if image == initramfs:
# If the initramfs is the same as the image being build, we should
# not depend on do_image_complete but on do_image_${FSTYPE_WITHOUT_EXT}
fstype = d.getVar('IMAGE_FSTYPES').split('.')[0]
d.appendVarFlag('do_assemble_fitimage_initramfs', 'recrdeptask', f' do_image_{fstype}')
depends = d.getVarFlag('do_assemble_fitimage_initramfs', 'depends')
depends = depends.replace(f'{initramfs}:do_image_complete', '')
d.setVarFlag('do_assemble_fitimage_initramfs', 'depends', depends)
# If the initramfs is the same as the image being build, it should
# come from IMGDEPLOYDIR instead of DEPLOY_DIR_IMAGE
# This is done by using an ugly monkey patching of the
# fitimage_assemble function
imgdeploydir = d.getVar('IMGDEPLOYDIR')
deploy_dir_image = d.getVar('DEPLOY_DIR_IMAGE')
task = d.getVar('fitimage_assemble')
task = task.replace(f'initramfs_path="{deploy_dir_image}', f'initramfs_path="{imgdeploydir}')
d.setVar('fitimage_assemble', task)
}
# Glue for coreos-image-ci.bbclass
# ==============================================================================
def get_nwl_fitimage_ci_artifacts(d):
bundle = d.getVar('INITRAMFS_IMAGE_BUNDLE')
initramfs = d.getVar('INITRAMFS_IMAGE_NAME')
# We only support fitimage with INITRAMFS_IMAGE_BUNDLE set to 0
if bundle == "1":
bb.warn(f"Adding a fitimage built with INITRAMFS_IMAGE_BUNDLE into COREOS_CI_DEPLOY_ARTIFACTS is currently not supported")
return ""
# If an initramfs is used, publish the fitImage that contains it
# otherwise the image without an initramfs
if initramfs.strip() != "":
return "fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_LINK_NAME}"
else:
return "fitImage-linux.bin-${KERNEL_FIT_LINK_NAME}"
# Add the generated fitImage to the list of artifacts to publish in the CI
COREOS_CI_DEPLOY_ARTIFACTS += "${@get_nwl_fitimage_ci_artifacts(d)}"

View File

@ -1,7 +1,8 @@
# Remove EFI support for machines which don't support it
EFI = "${@bb.utils.contains("MACHINE_FEATURES", "efi", "1", "0", d)}"
COREOS_IMAGE_GENERATE_UKI = "${EFI}"
COREOS_IMAGE_GENERATE_INSTALLER = "${EFI}"
COREOS_IMAGE_GENERATE_SWU = "${EFI}"
# Base classe for all image based on NWL
inherit coreos-image
IMAGE_INSTALL:append = " \
packagegroup-nwl-core \
"

View File

@ -26,26 +26,5 @@ DISTRO_FEATURES_BACKFILL_CONSIDERED = "ldconfig pulseaudio gobject-introspection
DISTRO_FEATURES:remove = "ptest virtualization"
PACKAGECONFIG:pn-systemd = "usrmerge rfkill kmod timedated vconsole"
# systemd-conf provides a packageconfig for a default dhcp client that we don't need
PACKAGECONFIG:pn-systemd-conf = ""
PACKAGECONFIG:pn-networkmanager = "systemd nss gnutls wifi bluez5 nmcli modemmanager"
# NetworkManager is starting dnsmasq when it needs it for AP mode
SYSTEMD_AUTO_ENABLE:pn-dnsmasq = "disable"
PACKAGECONFIG:pn-networkmanager = "systemd wifi bluez5 nmcli"
PACKAGECONFIG:pn-bluez5 = "systemd udev"
# ModemManager is started by wwan-config
SYSTEMD_AUTO_ENABLE:pn-modemmanager = "disable"
PACKAGECONFIG:pn-modemmanager = "systemd qmi"
EXTRA_OEMESON:pn-modemmanager = "-Dauto_features=disabled -Dplugin_generic=enabled"
# Enable the python3 bindings for libgpiod
PACKAGECONFIG:append:pn-libgpiod = " python3"
# With busybox "less" the output of "nmcli c" does not show up properly
RDEPENDS:networkmanager-nmcli += "less"
# Dependency to meta-netmodule-wlan
# Reduce priority as we want only what we explicitly take from this layer
BBFILE_PRIORITY_netmodule-wlan = "1"

View File

@ -9,9 +9,5 @@ BBFILE_COLLECTIONS += "meta-nwl-distro"
BBFILE_PATTERN_meta-nwl-distro = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-nwl-distro = "6"
LAYERDEPENDS_meta-nwl-distro = "core netmodule-wlan"
LAYERDEPENDS_meta-nwl-distro = "core"
LAYERSERIES_COMPAT_meta-nwl-distro = "kirkstone"
# Set a variable to get to the top of the metadata location
NWL_ROOT = '${@os.path.normpath("${LAYERDIR}/../../")}'

View File

@ -1,69 +0,0 @@
DESCRIPTION = "WWAN modems configuration tool"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Proprietary;md5=0557f9d92cf58f2ccdd50f62f8ac0b28"
RDEPENDS:${PN} += " \
python3-pyserial \
libgpiod-python \
python3-setuptools \
python3-systemd \
lmsensors-sensors \
lmsensors-config-libsensors \
"
DEPENDS = "python3-setuptools-scm-native"
inherit gitpkgv systemd allarch
# Package Version (built from tags)
PKGV = "${GITPKGVTAG}"
# Recipe Version
PV = "1.0-git${SRCPV}"
PR = "r1"
SRCREV = "a943fa76d5385c3f9bc54023c6fcf8b7bf339fd1"
SRC_URI = "git://gitlab.com/netmodule/tools/wwan-config.git;protocol=ssh;user=git;branch=master \
file://wwan-config@.service \
file://default.conf \
file://0001-Hotfixes-for-gemini.patch \
file://0002-hotfix-for-kirkstone.patch \
"
S = "${WORKDIR}/git"
inherit setuptools3_legacy
# Should be set by machine.conf
WWAN_NBR ??= "1"
do_install:append() {
install -d ${D}/${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/wwan-config@.service ${D}/${systemd_unitdir}/system/
install -d ${D}/${sysconfdir}/wwan
if [ ! -z "${WWAN_NBR}" ] ; then
install -d ${D}${sysconfdir}/systemd/system/multi-user.target.requires/
for i in `seq 0 ${WWAN_NBR}`; do
if [ $i = ${WWAN_NBR} ]; then continue; fi
if [ "${SYSTEMD_AUTO_ENABLE}" = "enable" ] ; then
ln -sf ${systemd_unitdir}/system/wwan-config@.service \
${D}${sysconfdir}/systemd/system/multi-user.target.requires/wwan-config@wwan$i.service
fi
install -m 0644 ${WORKDIR}/default.conf ${D}${sysconfdir}/wwan/wwan$i.conf
if [ ! -z "${NM_WWAN_APN}" ]; then
sed -i 's/apn=/apn=${NM_WWAN_APN}/g' ${D}${sysconfdir}/wwan/wwan$i.conf
fi
if [ ! -z "${NM_WWAN_USER}" ]; then
sed -i 's/user=/user=${NM_WWAN_USER}/g' ${D}${sysconfdir}/wwan/wwan$i.conf
fi
if [ ! -z "${NM_WWAN_PASSWORD}" ]; then
sed -i 's/password=/password=${NM_WWAN_PASSWORD}/g' ${D}${sysconfdir}/wwan/wwan$i.conf
fi
done
fi
}

View File

@ -1,68 +0,0 @@
From 3ffd1a9c0b42c32e720f05b36b6b837fb1ea8c46 Mon Sep 17 00:00:00 2001
From: Alexandre Bard <alexandre.bard@netmodule.com>
Date: Thu, 22 Feb 2024 17:21:09 +0100
Subject: [PATCH] Hotfixes for gemini
- Handling HUB_RST and GSM_RST lines
- Using GSM_EN instead of GSM_PWR
- Using gpio line EXT_SUPPLY_EN0 instead of "kernel" supply
Signed-off-by: Alexandre Bard <alexandre.bard@netmodule.com>
---
wwan_config/modems/wwan_modem.py | 28 +++++++++++++++++++++++-----
1 file changed, 23 insertions(+), 5 deletions(-)
diff --git a/wwan_config/modems/wwan_modem.py b/wwan_config/modems/wwan_modem.py
index 710ec76..cc12a53 100755
--- a/wwan_config/modems/wwan_modem.py
+++ b/wwan_config/modems/wwan_modem.py
@@ -25,8 +25,24 @@ class WwanModem:
def __init__(self, device_name):
self.name = device_name
- self.pwr_line = gpiod.find_line('GSM_PWR')
+
+ # Start by disabling the power supply
+ self.supply_line = gpiod.find_line('EXT_SUPPLY_EN0')
+ self.supply_line.request(consumer=self.name, type=gpiod.LINE_REQ_DIR_OUT, default_vals=[0])
+
+ # Release all RST lines
+ self.hub_rst_line = gpiod.find_line('HUB_RST~')
+ self.hub_rst_line.request(consumer=self.name, type=gpiod.LINE_REQ_DIR_OUT, default_vals=[1])
+
+ self.rst_line = gpiod.find_line('GSM_RST')
+ self.rst_line.request(consumer=self.name, type=gpiod.LINE_REQ_DIR_OUT, default_vals=[0])
+
+
+ # Prepare the the PWR line for the pulse
+ self.pwr_line = gpiod.find_line('GSM_EN')
self.pwr_line.request(consumer=self.name, type=gpiod.LINE_REQ_DIR_OUT, default_vals=[0])
+ time.sleep(1)
+
while True:
try:
@@ -34,7 +50,11 @@ class WwanModem:
break
except ModemNotPoweredException as e:
logger.error("The modem did not power up, turning power off and on again")
- self.power_down()
+ try:
+ self.power_down()
+ except PwrNotControllableException as e:
+ logger.error("The power cannot be controlled, not shutting down, the only we can do is wait...");
+
# Make sure the power is down long enough to avoid a glitch
# With toby-l2 this down time must be at least 130ms
time.sleep(1)
@@ -158,9 +178,7 @@ class WwanModem:
raise ModemNotPoweredException()
def set_pwr_state(self, value):
- state = "enabled" if value == 1 else "disabled"
- with open("/sys/devices/platform/" + self.name + "-supply/state", "w") as supply_file:
- supply_file.write(state + "\n")
+ self.supply_line.set_value(value)
def power_up(self):
logger.info("modem power up")

View File

@ -1,26 +0,0 @@
From a2b92fb896bdf2c5579676f05df4fcc7c488d94f Mon Sep 17 00:00:00 2001
From: Alexandre Bard <alexandre.bard@netmodule.com>
Date: Thu, 22 Feb 2024 17:28:56 +0100
Subject: [PATCH] hotfix for kirkstone
With the upgrade from dunfell to kirkstone, setuptools-git-version does
not exists anymore.
Signed-off-by: Alexandre Bard <alexandre.bard@netmodule.com>
---
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
index 8009e49..88415ae 100755
--- a/setup.py
+++ b/setup.py
@@ -5,7 +5,7 @@ from setuptools import setup, find_packages
setup(
name='wwan_config',
version_format='{tag}.{commitcount}+{gitsha}',
- setup_requires=['setuptools-git-version'],
+ setup_requires=['setuptools-scm'],
description='WWAN modem configurator',
author='Alexandre Bard',
author_email='alexandre.bard@netmodule.com',

View File

@ -1,51 +0,0 @@
#
# This file is part of wwan-config service
#
# Define a private APN to be used by the modem
# ! ONLY REQUIRED WHEN USING UBLOX TOBY-L2, will be ignored for other modems
#
# Required fields:
# apn: Name of the access point
# user: Username used to authenticate on APN
# password: Password used to authenticate on APN
#
[apn]
apn=
user=
password=
#
# Select the SIM card to be used by the modem
#
# auto: The script will detect if a physical SIM card is
# present and switch to eSIM if it is not the case
# sim1: Use the physical SIM card on the main board
# m2m: Use the eSIM of the main board
# ui-top: Use the SIM card that is on top of the User Interface
# ui-btm: Use the SIM card that is on the bottom of the User Interface
#
[sim]
SIM=auto
#
# ublox specific configurations:
#
# mode (+UBMCONF) :
# - Router : The modem will act as router and DHCP server.
# - Bridge : The modem will only act as a Bridge between the local and the GSM network.
#
# usb_profile (+UUSBCONF) :
# ! ONLY USED WITH TOBY-L2, will be ignored for other modems
# Select between different network/usb interfaces :
# - RNDIS
# - ECM
#
[ublox]
mode=Bridge
usb_profile=ECM

View File

@ -1,18 +0,0 @@
[Unit]
Description=WWAN configurator for device %I
[Service]
Type=forking
ExecStart=/usr/bin/wwan-config %I
PIDFile=/run/%I.pid
Restart=on-failure
Nice=-20
# Start time may include power cycles and start of ModemManager
TimeoutStartSec=180
# The default kill mode is killing the subprocesses created by the "os.system"
# calls used to stop ModemManager when handling the kill signal.
KillMode=mixed
[Install]
RequiredBy=multi-user.target

View File

@ -0,0 +1,47 @@
SUMMARY = "Create a fitimage with included kernel, dtb and ramdisk"
MAINTAINER = "Lucien Müller <lucien.mueller@netmodule.com>"
LICENSE = "CLOSED"
inherit kernel-fitimage
inherit kernel-arch
inherit deploy
PACKAGE_ARCH = "${MACHINE_ARCH}"
KERNEL_CLASSES = "kernel-fitimage"
KERNEL_IMAGETYPES += "fitImage"
addtask assemble_fitimage_initramfs before do_install after do_compile
addtask do_deploy after assemble_fitimage_initramfs
do_configure[depends] += "virtual/kernel:do_deploy"
do_bundle_initramfs[depends] += "${INITRAMFS_IMAGE}:do_image_complete"
do_deploy[depends] += "${PN}:do_assemble_fitimage"
INITRAMFS_IMAGE = "nwl-ramdisk-minimal"
INITRAMFS_IMAGE_NAME = "${INITRAMFS_IMAGE}-${MACHINE}"
INITRAMFS_IMAGE_BUNDLE = "0"
do_configure:prepend () {
install -d ${S}/arch/${ARCH}/boot/
for DTB in ${KERNEL_DEVICETREE}; do
# We have to watch out for when the device-tree is located in its own subdirectory in the kernel sources.
# DTB_SUBDIR will contain this directory.
DTB_DEPLOY=`basename ${DTB}`
DTB_SUBDIR=`dirname ${DTB}`
install -d arch/${ARCH}/boot/${DTB_SUBDIR}
install -m 0644 ${DEPLOY_DIR_IMAGE}/${DTB_DEPLOY} arch/${ARCH}/boot/${DTB}
done
install -m 0644 ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${KERNEL_IMAGE_LINK_NAME}.bin arch/${ARCH}/boot/vmlinuz.bin
}
kernel_do_deploy () {
# The kernel-fitimage class appends the deployment to this task. We just have to provide the task.
}
do_deploy () {
deployDir=${DEPLOY_DIR_IMAGE}
kernel_do_deploy
}

View File

@ -1,27 +1,13 @@
SUMMARY = "A minimal ramdisk image."
MAINTAINER = "Lucien Müller <lucien.mueller@netmodule.com>"
COREOS_IMAGE_GENERATE_INSTALLER = "0"
COREOS_IMAGE_GENERATE_UKI = "0"
COREOS_IMAGE_GENERATE_SWU = "0"
inherit nwl-image
inherit nwl-image-fitimage
# Overwrite definition from nwl-image-fitimage to get rid of default artifacts from
# coreos like u-boot
COREOS_CI_DEPLOY_ARTIFACTS = "${@get_nwl_fitimage_ci_artifacts(d)}"
IMAGE_FSTYPES = "cpio.xz"
# Keep only the minimum packages
NO_RECOMMENDATIONS = "1"
EXTRA_IMAGE_FEATURES = "debug-tweaks ssh-server"
IMAGE_INSTALL:append = " \
nwl-tests \
\
bmap-tools \
xz \
"
COREOS_IMAGE_GENERATE_INSTALLER = "0"
COREOS_IMAGE_GENERATE_UKI = "0"
COREOS_IMAGE_GENERATE_SWU = "0"

View File

@ -12,22 +12,6 @@ inherit nwl-image
# NWL specific files can be added as well:
# COREOS_CI_DEPLOY_ARTIFACTS += "${IMAGE_LINK_NAME}.custom.binary"
# Components required by uboot to boot an installed image
IMAGE_INSTALL:append = "\
kernel-devicetree \
${@bb.utils.contains('MACHINE_FEATURES', 'fpga', 'fpga-image', '', d)} \
"
# Add features and packages that are used in our tests:
IMAGE_FEATURES += "ssh-server networkmanager swupdate"
IMAGE_INSTALL:append = " \
packagegroup-core-full-cmdline \
swupdate-www \
nwl-tests \
packagegroup-nwl-test-tools \
"
IMAGE_FSTYPES += "wic.xz wic.bmap"
IMAGE_INSTALL:append = " packagegroup-core-full-cmdline swupdate-www"

View File

@ -1,33 +0,0 @@
inherit packagegroup
DESCRIPTION = "Base packages required for the NWL Distro"
PACKAGE_ARCH = "${MACHINE_ARCH}"
NRSW_MODULES = " \
kernel-module-board-descriptor \
kernel-module-system-info \
kernel-module-pcie \
"
TI_WIFI_PACKAGES = " \
firmware-ti-wl18xx \
"
WIFI_PACKAGES = " \
${@bb.utils.contains("MACHINE_FEATURES", "ti-wifi", "${TI_WIFI_PACKAGES}", "", d)} \
"
RDEPENDS:${PN} = " \
coreutils \
ncurses-terminfo-base \
networkmanager-nmcli \
dnsmasq \
systemd-conf \
\
kernel-modules \
${@bb.utils.contains("MACHINE_FEATURES", "nrsw-ready", "${NRSW_MODULES}", "", d)} \
\
${@bb.utils.contains("MACHINE_FEATURES", "wifi", "${WIFI_PACKAGES}", "", d)} \
"

View File

@ -1,24 +0,0 @@
inherit packagegroup
DESCRIPTION = "Common tools convenient for testing the features of NWL"
RDEPENDS:${PN} = " \
hostapd \
\
gps-utils \
\
can-utils \
\
libgpiod-tools \
\
chrony \
minicom \
\
udev-rules-nmhw \
\
modemmanager \
wwan-config \
\
gnss-mgr \
"

View File

@ -1,2 +0,0 @@
[Manager]
RuntimeWatchdogSec=30s

View File

@ -1 +0,0 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

View File

@ -1,25 +0,0 @@
# Copyright (C) 2019 Ramon Moesching <ramon.moesching@netmodule.com>
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "udev rules for netmodule router and oem hardware"
HOMEPAGE = "netmodule.com"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SECTION = "base"
S = "${WORKDIR}/git"
SRC_URI = "git://gitlab.com/netmodule/tools/udev-rules-nmhw;protocol=ssh;user=git;branch=master;"
SRCREV = "e2fe34ea2d0c1ebd08d26bf90197b5625765e242"
do_install () {
install -d ${D}${libdir}/udev/rules.d
if ls ${S}/machines/${MACHINE}/*.rules 1> /dev/null 2>&1 ; then
install -m 0644 ${S}/machines/${MACHINE}/*.rules ${D}${libdir}/udev/rules.d/
if [ -f ${S}/machines/${MACHINE}/*.sh ]; then
install -m 0755 ${S}/machines/${MACHINE}/*.sh ${D}${libdir}/udev/rules.d/
fi
fi
}

View File

@ -1,51 +0,0 @@
DESCRIPTION = "NetModule GNSS management tool"
LICENSE = "LGPL-3.0-only"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3000208d539ec061b899bce1d9ce9404"
RDEPENDS:${PN} += " \
python3-setuptools \
nmubxlib \
python3-systemd \
"
DEPENDS = "python3-setuptools-scm-native"
inherit setuptools3
inherit gitpkgv
inherit systemd
SYSTEMD_SERVICE:${PN} = "gnss-mgr.service"
inherit allarch
# Package Version (built from tags)
PKGV = "${GITPKGVTAG}"
# Recipe Version
PV = "1.0-git${SRCPV}"
PR = "r1"
SRC_URI = "git://gitlab.com/netmodule/tools/gnssmgr.git;protocol=ssh;user=git;branch=master \
file://0001-setup.py-Make-compatible-with-kirkstone.patch \
file://0002-gnss-mgr.service-Hotfix-for-gemini.patch \
"
SRCREV = "3d80bb4871ddc2e3e84553a86b767b419b96148f"
S = "${WORKDIR}/git"
PACKAGES =+ "${PN}-test"
SUMMARY:${PN}-test = "Addon to gnss-mgr for testing purposes"
FILES:${PN}-test = "${bindir}/gnss-config-reader"
do_install:append() {
install -d ${D}${sysconfdir}/gnss
install -m 0644 ${S}/config/gnss-neom8.conf ${D}${sysconfdir}/gnss/gnss0.conf
install -d ${D}/${sbindir}/
install -m 0755 ${S}/systemd/gnss-mgr-service.py ${D}${sbindir}/gnss-mgr-service
install -d ${D}/${systemd_unitdir}/system/
install -m 0644 ${S}/systemd/gnss-mgr.service ${D}/${systemd_unitdir}/system/
# Test tool
install -d ${D}${bindir}/
install -m 0755 ${S}/testing/gnss-config-reader.py ${D}${bindir}/gnss-config-reader
}

View File

@ -1,23 +0,0 @@
From e1dc9e6a5e683dd8ed09a319d06ef0be8d0022cb Mon Sep 17 00:00:00 2001
From: Alexandre Bard <alexandre.bard@netmodule.com>
Date: Tue, 27 Feb 2024 11:33:39 +0100
Subject: [PATCH] setup.py: Make compatible with kirkstone
Signed-off-by: Alexandre Bard <alexandre.bard@netmodule.com>
---
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
index 8d3714e..cda325e 100644
--- a/setup.py
+++ b/setup.py
@@ -5,7 +5,7 @@ from setuptools import setup, find_packages
setup(
name='gnss_mgr',
version_format='{tag}.{commitcount}+{gitsha}',
- setup_requires=['setuptools-git-version'],
+ setup_requires=['setuptools-scm'],
description='GNSS Manager',
author='Marc Mattmüller',
author_email='marc.mattmueller@netmodule.com',

View File

@ -1,34 +0,0 @@
From 88eb6099cecfaa344dee3cacec54db0cd24f542f Mon Sep 17 00:00:00 2001
From: Alexandre Bard <alexandre.bard@netmodule.com>
Date: Thu, 29 Feb 2024 15:03:02 +0100
Subject: [PATCH] gnss-mgr.service: Hotfix for gemini
Start the gnss receiver as part of the service startup because it is not
started automatically.
Signed-off-by: Alexandre Bard <alexandre.bard@netmodule.com>
---
systemd/gnss-mgr.service | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/systemd/gnss-mgr.service b/systemd/gnss-mgr.service
index 4694bee..2aa0a9b 100644
--- a/systemd/gnss-mgr.service
+++ b/systemd/gnss-mgr.service
@@ -1,13 +1,14 @@
[Unit]
Description=GNSS Manager
-Requires=dev-gnss0.device
-After=dev-gnss0.device
[Service]
Type=oneshot
RemainAfterExit=yes
+ExecStartPre=/bin/sh -c 'gpioset $(gpiofind "GNSS_RST~")=1'
+ExecStartPre=sleep 5
ExecStart=/usr/sbin/gnss-mgr-service start
ExecStop=/usr/sbin/gnss-mgr-service stop
+ExecStopPost=/bin/sh -c 'gpioset $(gpiofind "GNSS_RST~")=0'
ExecReload=/usr/sbin/gnss-mgr-service reload
StandardOutput=null

View File

@ -1,15 +0,0 @@
TTY_DEVICE = "/dev/gnss0"
USBAUTO_STATE = "false"
do_install:append () {
sed -i 's|DEVICES=""|DEVICES="${TTY_DEVICE}"|g' ${D}/etc/default/gpsd.default
sed -i 's|USBAUTO="true"|USBAUTO="${USBAUTO_STATE}"|g' ${D}/etc/default/gpsd.default
sed -i "s/GPSD_OPTIONS=\"\(.*\)\"/GPSD_OPTIONS=\"\1 -s 115200\"/g" \
${D}${sysconfdir}/default/gpsd.default
}
# Service is started by gnss-mgr
SYSTEMD_AUTO_ENABLE = "disable"

View File

@ -1,24 +0,0 @@
DESCRIPTION = "Library implementing UBX protocol for u-blox gnss modems"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=331a9220a74b05f133bf1ef09b6903b2"
RDEPENDS:${PN} += " \
python3-setuptools \
"
DEPENDS = "python3-setuptools-scm-native"
inherit setuptools3
inherit gitpkgv
# Package Version (built from tags)
PKGV = "${GITPKGVTAG}"
# Recipe Version
PV = "1.0-git${SRCPV}"
PR = "r1"
SRC_URI = "git://gitlab.com/netmodule/tools/nmubxlib.git;protocol=ssh;user=git;branch=master"
SRCREV = "7c22b57cdd169a6651cb0c17a215d1e448727bcb"
S = "${WORKDIR}/git"

View File

@ -1,22 +0,0 @@
LICENSE = "CLOSED"
LIC_FILES_CHKSUM = ""
inherit allarch
SRC_URI = "git://git@bitbucket.gad.local:7999/nm-nsp/nwl-test.git;protocol=ssh;branch=main"
PV = "1.0+git${SRCPV}"
SRCREV = "9989fb3c439db711ecaef4a8e8eb60f88533eccc"
S = "${WORKDIR}/git"
RDEPENDS:${PN} = "bats"
FILES:${PN} = "${datadir}/*"
FILES:${PN} += "${bindir}/*"
do_install () {
make install PREFIX=${D}${prefix}
}

View File

@ -1,18 +0,0 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "nwl-marvell-bsp"
BBFILE_PATTERN_nwl-marvell-bsp = "^${LAYERDIR}/"
BBFILE_PRIORITY_nwl-marvell-bsp = "7"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_nwl-marvell-bsp = "1"
LAYERDEPENDS_nwl-marvell-bsp = "core meta-belden-coreos"
LAYERSERIES_COMPAT_nwl-marvell-bsp = "kirkstone"

View File

@ -1,70 +0,0 @@
#@TYPE: Machine
#@NAME: cn9131-nitroc
#@DESCRIPTION: Belden NetModule CN9131 NITROC
#
# cn913x is from Marvell octeon tx2 family, but it's based on a cortex-A72
# so we can't use the armv8-2a/tune-octeontx2.inc (armv8a vs arm8-2a)
# instead we can use the older octeontx family previously known as thunderx
require conf/machine/include/arm/armv8a/tune-thunderx.inc
# SOC_FAMILY is added to MACHINE_OVERRIDES in the soc-family.inc file
SOC_FAMILY = "cn913x"
require conf/machine/include/soc-family.inc
# Bootloader configuration
# *****************************************************************************
PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
PREFERRED_VERSION_u-boot ?= "2020.10-marvell"
# Set the configuration and device tree for Nitroc
UBOOT_MACHINE = "nitroc_defconfig"
UBOOT_BUILDENV_DEVICE_TREE ??= "cn9131-nitroc-v1"
# Kernel configuration
# ******************************************************************************
PREFERRED_PROVIDER_virtual/kernel ?= "linux-nitroc"
PREFERRED_VERSION_linux-netmodule ?= "v6.6.y%"
PREFERRED_VERSION_trusted-firmware-a ?= "2.9"
KERNEL_IMAGETYPE = "Image"
KERNEL_DEFCONFIG ?= "nitroc_defconfig"
KERNEL_DEVICETREE ?= "\
marvell/cn9131-nitroc-v1.dtb \
marvell/cn9131-nitroc-m12.dtb \
marvell/cn9131-nitroc-rj45.dtb \
"
# getty configuration
# ******************************************************************************
SERIAL_CONSOLES = "115200;ttyS0"
SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
APPEND += "console=ttyS0,115200"
# Image generation
# ******************************************************************************
# Ensure that both flash-image.bin and boot.scr are generated as they are needed
# for a wic image
do_image_wic[depends] += "trusted-firmware-a:do_deploy"
WKS_FILE = "cn913x-sdcard.wks.in"
COREOS_INSTALLER_WKS_FILE ?= "cn913x-sdcard-installer.wks"
IMAGE_FSTYPES += "wic.xz wic.bmap"
COREOS_IMAGE_SWUPDATE_EXTRACLASSES += " coreos-image-swupdate-cn913x"
# No watchdog available yet
EFIBOOTGUARD_TIMEOUT ?= "0"
require conf/machine/include/coreos-generic-features/efi.inc
require conf/machine/include/coreos-generic-features/partitions.inc
### Device specific settings
# Kernel modules are not essential for booting but are needed for most things
MACHINE_EXTRA_RDEPENDS += "kernel-modules"
# Device trees are included in the unified kernel and not needed in the rootfs
# MACHINE_EXTRA_RDEPENDS += "kernel-devicetree"
# Needed for phy firmware
MACHINE_EXTRA_RDEPENDS += "linux-firmware-ath11k"
MACHINE_EXTRA_RDEPENDS += "linux-firmware-ath10k"

View File

@ -1,29 +0,0 @@
DESCRIPTION = "Marvell binaries like the system controller firmware"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://README.md;md5=bbdf038ac62317d3a12a067c50dadc61"
SRC_URI = "git://git@bitbucket.gad.local:7999/nm-nsp/binaries-marvell.git;protocol=ssh;user=git;branch=nitroc"
# Modify these as desired
PV = "11.23.08+git${SRCPV}"
SRCREV = "6765e4fa3eae4000a307bdb891fe8c03f3422f91"
S = "${WORKDIR}/git"
do_configure () {
:
}
do_compile () {
:
}
do_install () {
# The sources are needed by arm-trusted-firmware
install -d "${D}/usr/src/${PN}"
cp -r "${S}/mrvl_scp_bl2.img" "${D}/usr/src/${PN}/"
}
FILES:${PN}-dev = "/usr/src/${PN}"
INSANE_SKIP:${PN}-dev += "file-rdeps"
SYSROOT_DIRS += " /usr/src/${PN} "

View File

@ -1,29 +0,0 @@
DESCRIPTION = "Marvell DDR training library"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Makefile;md5=9993156c815673120e02a7c8e00a8cc3"
SRC_URI = "git://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git;protocol=https;branch=master"
# Modify these as desired
PV = "devel+git${SRCPV}"
SRCREV = "bfcf62051be835f725005bb5137928f7c27b792e"
S = "${WORKDIR}/git"
do_configure () {
:
}
do_compile () {
:
}
do_install () {
# The sources are needed by arm-trusted-firmware
install -d "${D}/usr/src/${PN}"
cp -r "${S}/." "${D}/usr/src/${PN}/"
}
FILES:${PN}-dev = "/usr/src/${PN}"
INSANE_SKIP:${PN}-dev += "file-rdeps"
SYSROOT_DIRS += " /usr/src/${PN} "

View File

@ -1,21 +0,0 @@
require recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
DEPENDS += "mv-ddr-marvell binaries-marvell coreutils-native"
COMPATIBLE_MACHINE = "cn913x"
LIC_FILES_CHKSUM += "file://docs/license.rst;md5=b2c740efedc159745b9b31f88ff03dde"
SRC_URI = "git://git@bitbucket.gad.local:7999/nm-nsp/trusted-firmware-a.git;protocol=ssh;user=git;branch=nitroc-v2.9.0"
SRCREV = "41911b0db0a07878a384e8358950b79e6df7d1be"
EXTRA_OEMAKE += "MV_DDR_PATH=${PKG_CONFIG_SYSROOT_DIR}/usr/src/mv-ddr-marvell DDR_TOPOLOGY=2 SCP_BL2=${PKG_CONFIG_SYSROOT_DIR}/usr/src/binaries-marvell/mrvl_scp_bl2.img"
TFA_PLATFORM = "t9130_nitroc"
TFA_BUILD_TARGET = "all mrvl_flash"
TFA_INSTALL_TARGET = "flash-image"
TFA_DEBUG = "1"
TFA_MBEDTLS = "0"
TFA_UBOOT = "1"
TFA_UEFI = "0"

View File

@ -1,32 +0,0 @@
HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome"
DESCRIPTION = "U-Boot, a boot loader for Embedded boards based on PowerPC, \
ARM, MIPS and several other processors, which can be installed in a boot \
ROM and used to initialize and test the hardware or to download and run \
application code."
SECTION = "bootloaders"
DEPENDS += "flex-native bison-native"
COMPATIBLE_MACHINE = "cn913x"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Licenses/README;md5=5a7450c57ffe5ae63fd732446b988025"
PE = "1"
SRCREV = "3534f6601c53362407bc6b3bf0af85908c38b81c"
SRC_URI = "git://git@bitbucket.gad.local:7999/nm-nsp/netmodule-u-boot.git;protocol=ssh;user=git;branch=sdk11.23.08-v2020.10-nitroc"
S = "${WORKDIR}/git"
require recipes-bsp/u-boot/u-boot.inc
require recipes-bsp/u-boot/u-boot-coreos.inc
# Solidrun patches require to build out-of-the-tree
B = "${WORKDIR}/build"
DEPENDS += "bc-native dtc-native u-boot-mkimage-native"
do_compile:prepend() {
export DEVICE_TREE="${UBOOT_BUILDENV_DEVICE_TREE}"
}
SYSROOT_DIRS += " /boot "

View File

@ -1,71 +0,0 @@
DESCRIPTION = "Linux kernel for the Nitroc hardware"
COMPATIBLE_MACHINE = "cn9131-nitroc"
inherit kernel
SRC_URI = "git://git@bitbucket.gad.local:7999/nm-nsp/netmodule-linux.git;protocol=ssh;user=git;branch=nitroc-v6.6.y"
SRCREV ?= "0b8f8f81ab0ec015002357820f50bfc2924390fe"
PV = "v6.6.y+git${SRCPV}"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
S = "${WORKDIR}/git"
#If a KERNEL_DEFCONFIG is specified, the defconfig specified in SRC_URI will be overwritten!
do_configure:append(){
if [ "${KERNEL_DEFCONFIG}" != "" ]; then
oe_runmake ${KERNEL_DEFCONFIG}
fi
configs="${@" ".join(find_cfgs(d))}"
if [ ! -z "${configs}" ]; then
${S}/scripts/kconfig/merge_config.sh -m -O ${WORKDIR}/build ${WORKDIR}/build/.config ${WORKDIR}/*.cfg
fi
}
# The default kenrel.bbclass expects it can remove the source symlink,
# newer kernels don't have this symlink so we need to override kernel_do_install
kernel_do_install() {
#
# First install the modules
#
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
if (grep -q -i -e '^CONFIG_MODULES=y$' .config); then
oe_runmake DEPMOD=echo MODLIB=${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION} INSTALL_FW_PATH=${D}${nonarch_base_libdir}/firmware modules_install
rm "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
# Remove empty module directories to prevent QA issues
find "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" -type d -empty -delete
else
bbnote "no modules to install"
fi
#
# Install various kernel output (zImage, map file, config, module support files)
#
install -d ${D}/${KERNEL_IMAGEDEST}
#
# When including an initramfs bundle inside a FIT image, the fitImage is created after the install task
# by do_assemble_fitimage_initramfs.
# This happens after the generation of the initramfs bundle (done by do_bundle_initramfs).
# So, at the level of the install task we should not try to install the fitImage. fitImage is still not
# generated yet.
# After the generation of the fitImage, the deploy task copies the fitImage from the build directory to
# the deploy folder.
#
for imageType in ${KERNEL_IMAGETYPES} ; do
if [ $imageType != "fitImage" ] || [ "${INITRAMFS_IMAGE_BUNDLE}" != "1" ] ; then
install -m 0644 ${KERNEL_OUTPUT_DIR}/$imageType ${D}/${KERNEL_IMAGEDEST}/$imageType-${KERNEL_VERSION}
fi
done
install -m 0644 System.map ${D}/${KERNEL_IMAGEDEST}/System.map-${KERNEL_VERSION}
install -m 0644 .config ${D}/${KERNEL_IMAGEDEST}/config-${KERNEL_VERSION}
install -m 0644 vmlinux ${D}/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION}
[ -e Module.symvers ] && install -m 0644 Module.symvers ${D}/${KERNEL_IMAGEDEST}/Module.symvers-${KERNEL_VERSION}
install -d ${D}${sysconfdir}/modules-load.d
install -d ${D}${sysconfdir}/modprobe.d
}
require recipes-kernel/linux/linux-yocto-coreos-efi.inc

View File

@ -30,7 +30,6 @@ TEMPLATECONF="${NWL_ROOT}/templates"
# Add support for ##NWLS_LAYERSDIR## inside of bblayer template
coreos-bblayers-envsub NWL_LAYERSDIR "${NWL_ROOT}/layers"
coreos-bblayers-envsub NWL_EXTLAYERSDIR "${NWL_ROOT}/external-layers"
# Add the scripts directory of the NWL to the path
coreos_path_add "${NWL_ROOT}/scripts"

View File

@ -1,109 +0,0 @@
#!/bin/bash
# This script will look for git recipes in our own layers and
# automatically check if there are new upstream commit in order
# to update the SRCREV entry in the recipe.
#
# For it to work properly, UPSTREAM_CHECK_COMMITS = "1" must be set
# in your local.conf (see our template)
#
# This script does not commit anything, please review the changes
# before committing and pushing.
set -euo pipefail
ABSOLUTE_PATH="$(readlink -f "$0")"
SCRIPTS_DIR=$(dirname "${ABSOLUTE_PATH}")
YOCTO_DIR=$(readlink -f "${SCRIPTS_DIR}/../")
updatable_recipes=()
updatable_packages=()
get_updatable_recipes()
{
all_recipes=$(find "${YOCTO_DIR}"/layers -name "*.bb")
for recipe in ${all_recipes}; do
if grep -q SRCREV "${recipe}"; then
updatable_recipes+=("${recipe}")
fi
done
}
convert_recipes_to_package_names()
{
for file in "${updatable_recipes[@]}"; do
filename=$(basename "${file}")
package_name=${filename/_git\.bb/}
updatable_packages+=("${package_name}")
done
}
get_new_commit_lines()
{
# Load build environment (disable flags to avoid problems while sourcing
set +eu
export BB_ENV_PASSTHROUGH_ADDITIONS="UPSTREAM_CHECK_COMMITS"
export MACHINE=netmodule-hw20
export UPSTREAM_CHECK_COMMITS="1"
# shellcheck source=/dev/null
source "${YOCTO_DIR}"/nwl-init-build-env >/dev/null
set -eu
# the relevant output is on stderr
if ! upgrade_status=$(devtool check-upgrade-status "${updatable_packages[@]}" 2>&1 >/dev/null);
then
echo "devtool failed"
echo "${upgrade_status}"
exit 1
fi
if ! new_commit_lines=$(grep "new commits" <<< "${upgrade_status}")
then
echo "Nothing to update"
exit 0
fi
}
get_bbfile_from_package()
{
package="${1}"
for file in "${updatable_recipes[@]}"; do
# The grepped output will be used by caller
if grep "${package}" <<< "${file}"; then
return
fi
done
}
get_updatable_recipes
#echo -e "Found bbfiles: \n" "${updatable_recipes[@]}\n"
convert_recipes_to_package_names
echo -e "Looking for updates for these packages: \n" "${updatable_packages[@]}" "\n"
get_new_commit_lines
echo -e "New commits: \n${new_commit_lines}\n"
echo "Starting to update files"
IFS=$'\n' # Read line by line instead of word by word
for line in ${new_commit_lines}; do
# Get package name (2nd word of the line)
package_name=$(cut -d " " -f 2 <<< "${line}")
# Convert to recipe filename
bbfile=$(get_bbfile_from_package "${package_name}")
relative_bbfile_path=$(realpath --relative-to="${YOCTO_DIR}" "${bbfile}")
# The commit is the last word of the line
newrev=$(grep --only-matching --extended-regexp '[^ ]+\s?$' <<< "${line}")
newrev=$(tr -d " " <<< "${newrev}")
echo "Updating ${relative_bbfile_path}"
echo "To ${newrev}"
echo
sed -i "s/^SRCREV.*/SRCREV = \"${newrev}\"/g" "${bbfile}"
done
exit 0

View File

@ -10,7 +10,6 @@ BBLAYERS ?= " \
##COREOS_LAYERSDIR##/meta-belden-coreos \
##COREOS_LAYERSDIR##/meta-belden-coreos-bsp \
##COREOS_LAYERSDIR##/meta-belden-marvell-bsp \
##COREOS_LAYERSDIR##/meta-netmodule-coreos-bsp \
##COREOS_EXTLAYERSDIR##/meta-openembedded/meta-oe \
##COREOS_EXTLAYERSDIR##/meta-openembedded/meta-networking \
##COREOS_EXTLAYERSDIR##/meta-openembedded/meta-filesystems \
@ -19,12 +18,5 @@ BBLAYERS ?= " \
##COREOS_EXTLAYERSDIR##/meta-virtualization \
##COREOS_EXTLAYERSDIR##/meta-efibootguard \
##COREOS_EXTLAYERSDIR##/meta-swupdate \
##COREOS_EXTLAYERSDIR##/meta-arm/meta-arm \
##COREOS_EXTLAYERSDIR##/meta-arm/meta-arm-toolchain \
##COREOS_EXTLAYERSDIR##/meta-ti/meta-ti-bsp \
##NWL_LAYERSDIR##/meta-nwl-distro \
##NWL_LAYERSDIR##/meta-netmodule-legacy-bsp \
##NWL_LAYERSDIR##/meta-nwl-marvell-bsp \
##NWL_EXTLAYERSDIR##/meta-netmodule-wlan \
"

View File

@ -27,8 +27,8 @@
You can now run 'bitbake <target>'
Common targets are:
nwl-ramdisk-minimal
nwl-test-image
nwl-image-minimal
nwl-image-testable
You can also run generated qemu images with a command like 'runqemu qemuarm64'.

View File

@ -26,7 +26,6 @@
#MACHINE ?= "qemux86"
#MACHINE ?= "qemux86-64"
#MACHINE ?= "cn9130-cf-pro"
#MACHINE ?= "cn9131-nitroc"
#
# This sets the default machine to be qemuarm64 if no other machine is selected:
MACHINE ??= "cn9130-cf-pro"