Compare commits

...

27 Commits

Author SHA1 Message Date
Harald Welte e9d5f3de5b OWHW: build new linux kernel version with dts for v2 2016-02-17 20:10:48 +01:00
Harald Welte 9ea7d86ef6 OWHW: update barebox to include v2 changes 2016-02-17 20:06:17 +01:00
Harald Welte fea8e9a2dd OWHW: Update defconfig with requirements for v2 hardware 2016-02-16 17:30:00 +01:00
Harald Welte 7d3ac06faf OWHW: update to git version with 10kHz I2C bus speed 2015-11-23 13:54:06 +01:00
Harald Welte 59a19cacb9 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.
2015-11-19 17:54:11 +01:00
Harald Welte 3f70d5944c barebox: update to 'initramfs is optional' boot config 2015-11-19 17:32:52 +01:00
Harald Welte 03355169a8 task-owhw-image: Add crda and iw for wifi 2015-11-19 16:13:48 +01:00
Harald Welte 984ffe2327 add crda (wifi regulatory database) and its [build] dependencies 2015-11-19 16:13:46 +01:00
Harald Welte bf34884f4b 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.
2015-11-19 14:31:50 +01:00
Harald Welte 2da92ff46f bossa: add missing readline build dependency 2015-11-19 12:39:05 +01:00
Harald Welte ce68b9433c OWHW: add 'sysmocom-owhw-image' and ensure usb2514 + bossa is included 2015-11-07 17:17:06 +01:00
Harald Welte b0b3702393 OWHW: add recipe for bossa (Atmel SAM flasher) 2015-11-07 17:15:48 +01:00
Harald Welte e8f0b5b27f OWHW defconfig: No MMC, no PPS, add I2C and MDIO bit-banging 2015-11-07 11:17:52 +01:00
Harald Welte 2d72ef4017 OWHW: update barebox to fix button GPIO 2015-11-05 16:23:05 +01:00
Harald Welte bdf74739a5 OWHW: fix build of linux-sysmocom uImage LOADADDR 2015-11-05 16:19:40 +01:00
Harald Welte d19e62a50c OWHW: fix gpio_usb2514 syntax error 2015-11-02 22:52:40 +01:00
Harald Welte edb989b7c4 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:52:38 +01:00
Harald Welte aa087fcc27 OWHW: persistent modem serial device names 2015-11-02 08:52:33 +01:00
Harald Welte 2f5446c306 rauc: support OWHW 2015-11-02 08:52:29 +01:00
Harald Welte ad73b02e86 OWHW: add GPIO export script for this board
... and use the new GPIO location from usb2514 tool
2015-11-02 08:51:55 +01:00
Harald Welte c6d66ca26b usb2514.c: Add support for GSMK OWHW board
we only need to swap a single port (DN4) here.
2015-11-02 08:51:11 +01:00
Harald Welte 84bc03b0ed usb2514: make it more modular/configurable 2015-11-02 08:51:09 +01:00
Harald Welte 523ddb068d OWHW: Add kernel recipe 2015-11-02 08:51:01 +01:00
Harald Welte 0f09f6798d OWHW: add a machine config 2015-11-02 08:50:52 +01:00
Harald Welte 73bbf819dc OWHW: Add barebox recipe 2015-11-02 08:50:46 +01:00
Holger Hans Peter Freyther bf4beccf44 linux-sysmocom: Re-enable the standard usb modules
Enable the xt-log kernel module and build the wifi drivers
as modules again. We don't need the backports right now.
2015-10-13 18:15:56 +02:00
Jan Luebbe a115765b04 linux-sysmocom: switch all systems to 4.1.4
[hfreyther: Create a new file for 4.1]

Signed-off-by: Jan Luebbe <jluebbe@debian.org>
2015-10-13 18:15:53 +02:00
40 changed files with 7890 additions and 1650 deletions

View File

@ -0,0 +1,42 @@
#@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"
KERNEL_DEVICETREE = "am335x-gsmk-owhw.dtb"
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 = "4.1.4+git%"
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
PREFERRED_VERSION_u-boot = "git"
@ -26,7 +26,6 @@ MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "\
kernel-module-dspdl-dm644x \
kernel-module-fpgadl \
kernel-module-fpgadl-par \
kernel-module-leds-gpio \
kernel-module-msgqueue \
kernel-module-nls-ascii \
kernel-module-nls-utf8 \

View File

@ -33,6 +33,7 @@ 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"
KERNEL_DEVICETREE = "am335x-sysmocom-odu.dtb"
PREFERRED_PROVIDER_virtual/bootloader = "barebox-sysmocom-odu"
EXTRA_IMAGEDEPENDS += "barebox-sysmocom-odu"

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,7 @@
[Unit]
Description=/data
[Mount]
What=ubi0:data
Where=/data
Type=ubifs

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

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

View File

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

View File

@ -0,0 +1,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,31 @@
require barebox.inc
RDEPENDS_${PN} += "${PN}-mlo"
SRCREV = "ce8849b03a40718fdaa9d7fc30312eeeb0fafcac"
SRC_URI = " \
git://git.sysmocom.de/barebox.git;branch=v2015.06 \
file://defconfig \
"
PV = "v2015.06+git${SRCPV}"
S = "${WORKDIR}/git"
BAREBOX_IMAGE ?= "barebox-${MACHINE}-${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

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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -42,4 +42,4 @@ module_conf_mISDN_l1loop = "options mISDN_l1loop pri=1 nchannel=20"
KERNEL_MODULE_PROBECONF_append = "mISDN_l1loop mISDN_dsp"
KERNEL_MODULE_AUTOLOAD += "mISDN_l1loop mISDN_dsp"
DEFAULT_PREFERENCE = "20"
DEFAULT_PREFERENCE = "-1"

View File

@ -0,0 +1,62 @@
inherit kernel
require linux-sysmocom.inc
require recipes-kernel/linux/linux-dtb.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.1.4"
LINUX_VERSION_EXTENSION ?= "-sysmocom-${LINUX_KERNEL_TYPE}"
# Overrides for the sysmocom bts v2
BTS_FIRMWARE_NAME_sysmobts-v2 = "sysmobts-v2"
SRCREV = "918da8eaf4e869591e19c4f89f14579f02931b12"
PR = "r47"
PV = "${LINUX_VERSION}+git${SRCPV}"
SRC_URI = "git://git.sysmocom.de/sysmo-bts/linux.git;protocol=git;branch=linux-4.1.4 \
file://defconfig"
S = "${WORKDIR}/git"
COMPATIBLE_MACHINE = "(sysmobts-v2|sysmocom-bsc|sysmocom-bsc|sysmocom-odu|gsmk-owhw)"
EXTRA_OEMAKE += "KALLSYMS_EXTRA_PASS=1"
EXTRA_OEMAKE_append_sysmocom-odu = " LOADADDR=0x81000000"
EXTRA_OEMAKE_append_gsmk-owhw = " LOADADDR=0x81000000"
require linux-tools.inc
do_configure() {
install -m 0644 ${WORKDIR}/defconfig ${B}/.config
oe_runmake -C ${S} O=${B} oldconfig
}
# autoload defaults (alphabetically sorted)
module_autoload_davinci_mmc = "davinci_mmc"
module_autoload_dspdl_dm644x = "dspdl_dm644x"
module_autoload_fpgadl_par = "fpgadl_par"
module_autoload_leds-gpio = "leds-gpio"
module_autoload_mmc_block = "mmc_block"
module_autoload_msgqueue = "msgqueue"
module_autoload_rtfifo = "rtfifo"
KERNEL_MODULE_PROBECONF_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
KERNEL_MODULE_AUTOLOAD_append = "davinci_mmc dspdl_dm644x fpgadl_par leds-gpio mmc_block msgqueue rtfifo"
# module configs (alphabetically sorted)
module_conf_dspdl_dm644x = "options dspdl_dm644x fw_name=${BTS_FIRMWARE_NAME}.out debug=0"
module_conf_fpgadl_par = "options fpgadl_par fw_name=${BTS_FIRMWARE_NAME}.bit"
module_conf_msgqueue = "options msgqueue fw_name=${BTS_FIRMWARE_NAME}.out"
module_conf_rtfifo = "options rtfifo fw_name=${BTS_FIRMWARE_NAME}.out"
RDEPENDS_kernel-module-dspdl-dm644x += "sysmobts-firmware"
RDEPENDS_kernel-module-fpgadl-par += "sysmobts-firmware"
RDEPENDS_kernel-module-msgqueue += "sysmobts-firmware"
RDEPENDS_kernel-module-rtfifo += "sysmobts-firmware"
DEFAULT_PREFERENCE = "-1"

View File

@ -25,7 +25,7 @@ SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.g
file://ntpdate.cron \
"
PR = "r8"
PR = "r9"
SRC_URI[md5sum] = "65d8cdfae4722226fbe29863477641ed"
SRC_URI[sha256sum] = "948274b88f1ed002d867ced6aaefdfd0999668b11285ac2b3a67ff2629d59d88"
@ -162,6 +162,9 @@ pkg_postinst_ntpdate() {
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

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

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -16,6 +16,7 @@ IMAGE_FSTYPES = "cpio.xz"
BAD_RECOMMENDATIONS_append = " busybox-syslog kbd kbd-consolefonts kbd-keymaps"
BAD_RECOMMENDATIONS_append_sysmobts-v2 = " e2fsprogs-e2fsck"
BAD_RECOMMENDATIONS_append_sysmocom-odu = " e2fsprogs-e2fsck"
BAD_RECOMMENDATIONS_append_gsmk-owhw = " e2fsprogs-e2fsck"
inherit core-image
require recipes-apps/images/image-manifest.inc

View File

@ -30,6 +30,13 @@ do_fetch() {
cp "${DEPLOY_DIR_IMAGE}/uImage-${MACHINE}.bin" "${S}/fs/kernel"
cp "${DEPLOY_DIR_IMAGE}/image-rauc-rescue-initramfs-${MACHINE}.cpio.xz" "${S}/fs/initramfs"
}
do_fetch_append_sysmocom-odu() {
cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-sysmocom-odu.dtb" "${S}/fs/devicetree"
}
do_fetch_append_gsmk-owhw() {
cp "${DEPLOY_DIR_IMAGE}/uImage-am335x-gsmk-owhw.dtb" "${S}/fs/devicetree"
}
IMAGE_ROOTFS = "${S}/fs"
IMAGE_NAME = "${PN}-${MACHINE}-${DATETIME}"

View File

@ -0,0 +1,162 @@
From 02a24ac541df68033d4efd7e2f8a1b92dc49328d Mon Sep 17 00:00:00 2001
From: Li xin <lixin.fnst@cn.fujitsu.com>
Date: Mon, 27 Jul 2015 05:06:20 +0900
Subject: [PATCH] M2Crypto: Error fix.
After swig upgrade from 3.0.2 to 3.0.6,build the recipes which
depends on python-m2crypto will occur errors like this:
SALT_LEN = m2.PKCS5_SALT_LEN
AttributeError: 'module' object has no attribute 'PKCS5_SALT_LEN'
since python-m2crypto depends on swig-native
Ref:
https://github.com/martinpaljak/M2Crypto/issues/60#issuecomment-75735489
This patch is from:
http://pkgs.fedoraproject.org/cgit/m2crypto.git/tree/m2crypto-0.21.1-swig-3.0.5.patch
Upstream-Status: pending
Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
---
M2Crypto/__init__.py | 4 ++--
M2Crypto/m2.py | 2 +-
SWIG/_lib.i | 4 ++++
SWIG/_pkcs7.i | 1 +
setup.py | 26 +++++++++++++++++++++++++-
5 files changed, 33 insertions(+), 4 deletions(-)
diff --git a/M2Crypto/__init__.py b/M2Crypto/__init__.py
index e7acfe7..02f4d28 100644
--- a/M2Crypto/__init__.py
+++ b/M2Crypto/__init__.py
@@ -19,7 +19,7 @@ Copyright 2008-2011 Heikki Toivonen. All rights reserved.
version_info = (0, 21, 1)
version = '.'.join([str(_v) for _v in version_info])
-import __m2crypto
+import _m2crypto
import m2
import ASN1
import AuthCookie
@@ -57,4 +57,4 @@ import util
encrypt=1
decrypt=0
-__m2crypto.lib_init()
+_m2crypto.lib_init()
diff --git a/M2Crypto/m2.py b/M2Crypto/m2.py
index e4bb695..822143f 100644
--- a/M2Crypto/m2.py
+++ b/M2Crypto/m2.py
@@ -25,7 +25,7 @@ Portions created by Open Source Applications Foundation (OSAF) are
Copyright (C) 2004 OSAF. All Rights Reserved.
"""
-from __m2crypto import *
+from _m2crypto import *
lib_init()
diff --git a/SWIG/_lib.i b/SWIG/_lib.i
index 42dc180..47a53b8 100644
--- a/SWIG/_lib.i
+++ b/SWIG/_lib.i
@@ -100,6 +100,7 @@ int ssl_verify_callback(int ok, X509_STORE_CTX *ctx) {
int cret;
int new_style_callback = 0, warning_raised_exception=0;
PyGILState_STATE gilstate;
+ PyObject *self = NULL; /* bug in SWIG_NewPointerObj as of 3.0.5 */
ssl = (SSL *)X509_STORE_CTX_get_app_data(ctx);
@@ -185,6 +186,7 @@ int ssl_verify_callback(int ok, X509_STORE_CTX *ctx) {
void ssl_info_callback(const SSL *s, int where, int ret) {
PyObject *argv, *retval, *_SSL;
PyGILState_STATE gilstate;
+ PyObject *self = NULL; /* bug in SWIG_NewPointerObj as of 3.0.5 */
gilstate = PyGILState_Ensure();
@@ -204,6 +206,7 @@ DH *ssl_set_tmp_dh_callback(SSL *ssl, int is_export, int keylength) {
PyObject *argv, *ret, *_ssl;
DH *dh;
PyGILState_STATE gilstate;
+ PyObject *self = NULL; /* bug in SWIG_NewPointerObj as of 3.0.5 */
gilstate = PyGILState_Ensure();
@@ -227,6 +230,7 @@ RSA *ssl_set_tmp_rsa_callback(SSL *ssl, int is_export, int keylength) {
PyObject *argv, *ret, *_ssl;
RSA *rsa;
PyGILState_STATE gilstate;
+ PyObject *self = NULL; /* bug in SWIG_NewPointerObj as of 3.0.5 */
gilstate = PyGILState_Ensure();
diff --git a/SWIG/_pkcs7.i b/SWIG/_pkcs7.i
index 174f40a..7bffbfc 100644
--- a/SWIG/_pkcs7.i
+++ b/SWIG/_pkcs7.i
@@ -157,6 +157,7 @@ PyObject *smime_read_pkcs7(BIO *bio) {
BIO *bcont = NULL;
PKCS7 *p7;
PyObject *tuple, *_p7, *_BIO;
+ PyObject *self = NULL; /* bug in SWIG_NewPointerObj as of 3.0.5 */
if (BIO_method_type(bio) == BIO_TYPE_MEM) {
/* OpenSSL FAQ explains that this is needed for mem BIO to return EOF,
diff --git a/setup.py b/setup.py
index e7c49eb..b98abe0 100644
--- a/setup.py
+++ b/setup.py
@@ -20,6 +20,7 @@ except ImportError:
from distutils.command import build_ext
from distutils.core import Extension
+from distutils.file_util import copy_file
class _M2CryptoBuildExt(build_ext.build_ext):
@@ -57,7 +58,17 @@ class _M2CryptoBuildExt(build_ext.build_ext):
self.swig_opts.append('-includeall')
#self.swig_opts.append('-D__i386__') # Uncomment for early OpenSSL 0.9.7 versions, or on Fedora Core if build fails
#self.swig_opts.append('-DOPENSSL_NO_EC') # Try uncommenting if you can't build with EC disabled
-
+ self.swig_opts.append('-modern')
+ self.swig_opts.append('-builtin')
+
+ # These two lines are a workaround for
+ # http://bugs.python.org/issue2624 , hard-coding that we are only
+ # building a single extension with a known path; a proper patch to
+ # distutils would be in the run phase, when extension name and path are
+ # known.
+ self.swig_opts.append('-outdir')
+ self.swig_opts.append(os.path.join(self.build_lib, 'M2Crypto'))
+
self.include_dirs += [os.path.join(self.openssl, opensslIncludeDir),
os.path.join(os.getcwd(), 'SWIG')]
@@ -71,6 +82,19 @@ class _M2CryptoBuildExt(build_ext.build_ext):
self.library_dirs += [os.path.join(self.openssl, opensslLibraryDir)]
+ def run(self):
+ '''Overloaded build_ext implementation to allow inplace=1 to work,
+ which is needed for (python setup.py test).'''
+ # This is another workaround for http://bugs.python.org/issue2624 + the
+ # corresponding lack of support in setuptools' test command. Note that
+ # just using self.inplace in finalize_options() above does not work
+ # because swig is not rerun if the __m2crypto.so extension exists.
+ # Again, hard-coding our extension name and location.
+ build_ext.build_ext.run(self)
+ if self.inplace:
+ copy_file(os.path.join(self.build_lib, 'M2Crypto', '_m2crypto.py'),
+ os.path.join('M2Crypto', '_m2crypto.py'),
+ verbose=self.verbose, dry_run=self.dry_run)
if sys.version_info < (2,4):
--
1.8.4.2

View File

@ -0,0 +1,39 @@
From f11b9c71080513f9b867ba8f40613ba2ebc6e960 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
Date: Fri, 29 Mar 2013 15:17:17 +0100
Subject: [PATCH] setup.py: link in sysroot, not in host directories
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Upstream-status: Unknown
---
setup.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/setup.py b/setup.py
index e7c49eb..8deaa34 100644
--- a/setup.py
+++ b/setup.py
@@ -40,7 +40,7 @@ class _M2CryptoBuildExt(build_ext.build_ext):
self.openssl = 'c:\\pkg'
else:
self.libraries = ['ssl', 'crypto']
- self.openssl = '/usr'
+ self.openssl = os.environ.get( "STAGING_DIR" )
def finalize_options(self):
@@ -49,8 +49,8 @@ class _M2CryptoBuildExt(build_ext.build_ext):
build_ext.build_ext.finalize_options(self)
- opensslIncludeDir = os.path.join(self.openssl, 'include')
- opensslLibraryDir = os.path.join(self.openssl, 'lib')
+ opensslIncludeDir = os.environ.get( "STAGING_INCDIR" )
+ opensslLibraryDir = os.environ.get( "STAGING_LIBDIR" )
self.swig_opts = ['-I%s' % i for i in self.include_dirs + \
[opensslIncludeDir]]
--
1.8.1.4

View File

@ -0,0 +1,45 @@
SUMMARY = "A Python crypto and SSL toolkit"
HOMEPAGE = "http://chandlerproject.org/bin/view/Projects/MeTooCrypto"
DEPENDS = "openssl swig-native python"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENCE;md5=b0e1f0b7d0ce8a62c18b1287b991800e"
SRC_URI = "http://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-${PV}.tar.gz \
file://0001-setup.py-link-in-sysroot-not-in-host-directories.patch \
file://0001-M2Crypto-Error-fix.patch"
SRC_URI[md5sum] = "f93d8462ff7646397a9f77a2fe602d17"
SRC_URI[sha256sum] = "25b94498505c2d800ee465db0cc1aff097b1615adc3ac042a1c85ceca264fc0a"
S = "${WORKDIR}/M2Crypto-${PV}"
inherit setuptools
SWIG_FEATURES_x86-64 = "-D__x86_64__"
SWIG_FEATURES ?= ""
export SWIG_FEATURES
# Get around a problem with swig, but only if the
# multilib header file exists.
#
do_compile_prepend() {
if [ "${SITEINFO_BITS}" = "64" ];then
bit="64"
else
bit="32"
fi
if [ -e ${STAGING_INCDIR}/openssl/opensslconf-${bit}.h ] ;then
for i in SWIG/_ec.i SWIG/_evp.i; do
sed -i -e "s/opensslconf.*\./opensslconf-${bit}\./" "$i"
done
elif [ -e ${STAGING_INCDIR}/openssl/opensslconf-n${bit}.h ] ;then
for i in SWIG/_ec.i SWIG/_evp.i; do
sed -i -e "s/opensslconf.*\./opensslconf-n${bit}\./" "$i"
done
fi
}
BBCLASSEXTEND = "native"

View File

@ -0,0 +1,63 @@
SUMMARY = "SWIG - Simplified Wrapper and Interface Generator"
HOMEPAGE = "http://swig.sourceforge.net/"
LICENSE = "BSD & GPLv3"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e7807a6282784a7dde4c846626b08fc6 \
file://LICENSE-GPL;md5=d32239bcb673463ab874e80d47fae504 \
file://LICENSE-UNIVERSITIES;md5=8ce9dcc8f7c994de4a408b205c72ba08"
SECTION = "devel"
DEPENDS = "libpcre python"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
inherit autotools pythonnative
EXTRA_OECONF = " \
--with-python=${PYTHON} \
--without-allegrocl \
--without-android \
--without-boost \
--without-chicken \
--without-clisp \
--without-csharp \
--without-d \
--without-gcj \
--without-go \
--without-guile \
--without-java \
--without-lua \
--without-mzscheme \
--without-ocaml \
--without-octave \
--without-perl5 \
--without-pike \
--without-php \
--without-python3 \
--without-r \
--without-ruby \
--without-tcl \
"
BBCLASSEXTEND = "native nativesdk"
do_configure() {
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/Tools/config
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/Tools/config
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
oe_runconf
}
do_install_append_class-nativesdk() {
cd ${D}${bindir}
ln -s swig swig2.0
}
def swiglib_relpath(d):
swiglib = d.getVar('datadir', True) + "/" + d.getVar('BPN', True) + "/" + d.getVar('PV', True)
return os.path.relpath(swiglib, d.getVar('bindir', True))
do_install_append_class-native() {
create_wrapper ${D}${bindir}/swig SWIG_LIB='`dirname $''realpath`'/${@swiglib_relpath(d)}
}

View File

@ -0,0 +1,69 @@
From a4a0440a644c6c5e5da096efe3cf05ba309a284f Mon Sep 17 00:00:00 2001
From: "NODA, Kai" <nodakai@gmail.com>
Date: Sun, 22 Apr 2012 17:01:02 +0900
Subject: [PATCH] Use /proc/self/exe for "swig -swiglib" on non-Win32
platforms.
If it wasn't found, then fall back to a fixed string just as before.
Upstream-Status: Submitted
http://sourceforge.net/mailarchive/message.php?msg_id=29179733
---
Source/Modules/main.cxx | 24 ++++++++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/Source/Modules/main.cxx b/Source/Modules/main.cxx
index d2f5d3b..cbb0a12 100644
--- a/Source/Modules/main.cxx
+++ b/Source/Modules/main.cxx
@@ -26,6 +26,11 @@ char cvsroot_main_cxx[] = "$Id$";
#include "cparse.h"
#include <ctype.h>
#include <limits.h> // for INT_MAX
+#ifndef _WIN32
+#include <cstddef>
+#include <unistd.h> // for readlink
+#include <sys/stat.h> // for stat
+#endif
// Global variables
@@ -902,9 +907,9 @@ int SWIG_main(int argc, char *argv[], Language *l) {
// Check for SWIG_LIB environment variable
if ((c = getenv("SWIG_LIB")) == (char *) 0) {
+ char *p;
#if defined(_WIN32)
char buf[MAX_PATH];
- char *p;
if (!(GetModuleFileName(0, buf, MAX_PATH) == 0 || (p = strrchr(buf, '\\')) == 0)) {
*(p + 1) = '\0';
SwigLib = NewStringf("%sLib", buf); // Native windows installation path
@@ -914,7 +919,22 @@ int SWIG_main(int argc, char *argv[], Language *l) {
if (Len(SWIG_LIB_WIN_UNIX) > 0)
SwigLibWinUnix = NewString(SWIG_LIB_WIN_UNIX); // Unix installation path using a drive letter (for msys/mingw)
#else
- SwigLib = NewString(SWIG_LIB);
+ char buf[PATH_MAX];
+ if (0 < ::readlink("/proc/self/exe", buf, sizeof(buf)) &&
+ (p = ::strstr(buf, "/bin/swig"))) {
+ int major, minor, patch;
+ const int ret = ::sscanf(VERSION, "%d.%d.%d", &major, &minor, &patch);
+ if (3 == ret) {
+ const ::ptrdiff_t dir_part_len = p - buf;
+ ::snprintf(p, PATH_MAX - dir_part_len, "/share/swig/%d.%d.%d", major, minor, patch);
+ struct ::stat stat_res;
+ if (0 == ::stat(buf, &stat_res) && S_ISDIR(stat_res.st_mode)) {
+ SwigLib = NewString(buf);
+ }
+ }
+ }
+ if (NULL == SwigLib)
+ SwigLib = NewString(SWIG_LIB);
#endif
} else {
SwigLib = NewString(c);
--
1.7.9.5

View File

@ -0,0 +1,64 @@
From 5c4d6d8538994d5fe9b3b46bfafaf0a605e3bda6 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen.kooi@linaro.org>
Date: Tue, 17 Jun 2014 08:18:17 +0200
Subject: [PATCH] configure: use pkg-config for pcre detection
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Upstream-Status: pending
---
configure.ac | 38 +++++++-------------------------------
1 file changed, 7 insertions(+), 31 deletions(-)
diff --git a/configure.ac b/configure.ac
index 0c984b7..6edcec1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -70,38 +70,14 @@ AC_MSG_RESULT([$with_pcre])
dnl To make configuring easier, check for a locally built PCRE using the Tools/pcre-build.sh script
if test x"${with_pcre}" = xyes ; then
- AC_MSG_CHECKING([whether to use local PCRE])
- local_pcre_config=no
- if test -z $PCRE_CONFIG; then
- if test -f `pwd`/pcre/pcre-swig-install/bin/pcre-config; then
- PCRE_CONFIG=`pwd`/pcre/pcre-swig-install/bin/pcre-config
- local_pcre_config=$PCRE_CONFIG
- fi
- fi
- AC_MSG_RESULT([$local_pcre_config])
-fi
-AS_IF([test "x$with_pcre" != xno],
- [AX_PATH_GENERIC([pcre],
- [], dnl Minimal version of PCRE we need -- accept any
- [], dnl custom sed script for version parsing is not needed
- [AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library])
- LIBS="$LIBS $PCRE_LIBS"
- CPPFLAGS="$CPPFLAGS $PCRE_CFLAGS"
- ],
- [AC_MSG_FAILURE([
- Cannot find pcre-config script from PCRE (Perl Compatible Regular Expressions)
- library package. This dependency is needed for configure to complete,
- Either:
- - Install the PCRE developer package on your system (preferred approach).
- - Download the PCRE source tarball, build and install on your system
- as you would for any package built from source distribution.
- - Use the Tools/pcre-build.sh script to build PCRE just for SWIG to statically
- link against. Run 'Tools/pcre-build.sh --help' for instructions.
- (quite easy and does not require privileges to install PCRE on your system)
- - Use configure --without-pcre to disable regular expressions support in SWIG
- (not recommended).])
- ])
+ PKG_CHECK_MODULES([PCRE], [libpcre], [
+ AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library])
+ LIBS="$LIBS $PCRE_LIBS"
+ CPPFLAGS="$CPPFLAGS $PCRE_CFLAGS"
+ ], [
+ AC_MSG_WARN([$PCRE_PKG_ERRORS])
])
+fi
dnl CCache
--
1.9.3

View File

@ -0,0 +1,8 @@
require ${BPN}.inc
SRC_URI += "file://0001-Use-proc-self-exe-for-swig-swiglib-on-non-Win32-plat.patch \
file://0001-configure-use-pkg-config-for-pcre-detection.patch \
"
SRC_URI[md5sum] = "df43ae271642bcfa61c1e59f970f9963"
SRC_URI[sha256sum] = "c67f63ea11956106e4cda66416d5020330dc4ce2ee45057d39a9494ce33eca05"

View File

@ -0,0 +1,41 @@
From 4cc63588211df7bf328e55820cfe19b56ea776b6 Mon Sep 17 00:00:00 2001
From: Jan Luebbe <jluebbe@debian.org>
Date: Sat, 30 May 2015 20:00:10 +0200
Subject: [PATCH 3/3] hardcode symocom-odu values
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
---
src/barebox-state.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/barebox-state.c b/src/barebox-state.c
index f56275f..002ee5c 100644
--- a/src/barebox-state.c
+++ b/src/barebox-state.c
@@ -1738,6 +1738,7 @@ static struct state *state_get(const char *name)
return ERR_CAST(state);
}
+#if 0
partition_node = of_parse_phandle(node, "backend", 0);
if (!partition_node) {
fprintf(stderr, "cannot find backend node in %s\n", node->full_name);
@@ -1750,9 +1751,14 @@ static struct state *state_get(const char *name)
return ERR_PTR(ret);
}
+#endif
+ devpath = "/sys/bus/i2c/devices/1-0050/eeprom";
+ offset = 0xc0;
+ size = 0x40;
+
of_property_read_string(node, "backend-type", &backend_type);
if (!strcmp(backend_type, "raw"))
- ret = state_backend_raw_file(state, partition_node->full_name, devpath, offset, size);
+ ret = state_backend_raw_file(state, "/i2c/eeprom@50/partition@0", devpath, offset, size);
else
fprintf(stderr, "invalid backend type: %s\n", backend_type);
--
2.1.4

View File

@ -0,0 +1,27 @@
[system]
compatible=gsmk-owhw
bootloader=barebox
mountprefix=/mnt/rauc
[keyring]
path=ca.pem
[slot.rescue.0]
device=/dev/ubi0_rescue
type=ubifs
bootname=rescue
readonly=true
[slot.rootfs.0]
device=/dev/ubi0_system0
type=ubifs
bootname=system0
[slot.rootfs.1]
device=/dev/ubi0_system1
type=ubifs
bootname=system1
[slot.data.0]
device=/dev/ubi0_data
type=ubifs

View File

@ -1,7 +1,7 @@
DESCRIPTION = "rauc update controller"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
PR = "r0"
PR = "r1"
SRC_URI = "git://github.com/jluebbe/rauc.git;protocol=https \
file://dev-ca.pem \
@ -20,6 +20,7 @@ DEPENDS = "curl openssl glib-2.0"
# rauc is invoking these depending the machine
RDEPENDS_${PN}_append_sysmobts-v2 = " barebox-state"
RDEPENDS_${PN}_append_sysmocom-odu = " barebox-state"
RDEPENDS_${PN}_append_gsmk-owhw = " barebox-state"
RDEPENDS_${PN}_append_sysmocom-bsc = " grub"
FILES_${PN} += "/mnt/rauc"