summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvojo <joris.van.vossen@sintecs.nl>2017-09-15 13:41:52 (GMT)
committervojo <joris.van.vossen@sintecs.nl>2017-09-15 13:41:52 (GMT)
commit62fa475fdeb422181b3ccda29cd74629649a27cd (patch)
tree2f5cbac6cffcf759d9672debb16769479d6d906c
parente64e0e91fb521c6248f2cdebd98ee273c6f728d0 (diff)
downloadmeta-scalys-ppc-62fa475fdeb422181b3ccda29cd74629649a27cd.tar.xz
added simc-t2081 machine support and virtualization image
-rwxr-xr-x[-rw-r--r--]conf/layer.conf0
-rwxr-xr-x[-rw-r--r--]conf/machine/qt1040-1gb.conf1
-rwxr-xr-x[-rw-r--r--]conf/machine/simc-t1022-tcb-02.conf1
-rwxr-xr-x[-rw-r--r--]conf/machine/simc-t1040-tcb-02.conf1
-rwxr-xr-x[-rw-r--r--]conf/machine/simc-t2081-tcb-02.conf6
-rwxr-xr-xrecipes-benchmark/stress-ng/stress-ng_0.04.07.bb19
-rwxr-xr-xrecipes-benchmark/stress-ng/stress-ng_0.08.06.bb20
-rw-r--r--recipes-bsp/u-boot/u-boot-qoriq_2016.09.bbappend2
-rwxr-xr-xrecipes-bsp/u-boot/u-boot-qoriq_2017.09.bb4
-rwxr-xr-xrecipes-devtools/memtool/Makefile26
-rwxr-xr-xrecipes-devtools/memtool/memtool.c329
-rwxr-xr-xrecipes-devtools/memtool/memtool_1.0.bb28
-rwxr-xr-x[-rw-r--r--]recipes-fsl/images/fsl-image-core.bbappend0
-rwxr-xr-xrecipes-images/sintecs-base-image/sintecs-base-image.bb26
-rw-r--r--recipes-images/sintecs-virt-image/sintecs-virt-image.bb41
-rwxr-xr-x[-rw-r--r--]recipes-kernel/linux/files/defconfig_append_simc-t10xx (renamed from recipes-kernel/linux/files/defconfig_append_t10xx)2
-rwxr-xr-xrecipes-kernel/linux/files/defconfig_append_simc-t208169
-rwxr-xr-xrecipes-kernel/linux/files/defconfig_append_simc-txxxx-virt48
-rwxr-xr-x[-rw-r--r--]recipes-kernel/linux/files/fit_image_template.its0
-rwxr-xr-xrecipes-kernel/linux/files/simc-t10xx_device_tree_addition.patch858
-rwxr-xr-xrecipes-kernel/linux/files/simc-t2081_device_tree_addition.patch431
-rwxr-xr-x[-rw-r--r--]recipes-kernel/linux/linux-qoriq_4.1.bbappend18
-rwxr-xr-xrecipes-perl/xml-xpath/xml-xpath-perl_1.13.bb26
-rwxr-xr-xrecipes-support/cluster-glue/cluster-glue_1.0.12.bb129
-rwxr-xr-xrecipes-support/cluster-glue/files/0001-remove-doc-generation.patch11
-rwxr-xr-xrecipes-support/cluster-glue/files/tmpfiles8
-rwxr-xr-xrecipes-support/cluster-glue/files/volatiles7
-rwxr-xr-xrecipes-support/cluster-resource-agents/cluster-resource-agents_3.9.6.bb81
-rwxr-xr-xrecipes-support/cluster-resource-agents/files/remove-doc-generation.patch11
-rwxr-xr-xrecipes-support/heartbeat/files/0001-remove-runtime-configure-checks.patch27
-rwxr-xr-xrecipes-support/heartbeat/heartbeat_3.0.6.bb126
-rwxr-xr-xrecipes-support/lm_sensors/files/simc-t1040-cb01/fancontrol11
-rwxr-xr-xrecipes-support/lm_sensors/files/simc-t1040-cb01/sensors.conf25
-rwxr-xr-xrecipes-support/lm_sensors/lmsensors-config_1.0.bbappend1
-rwxr-xr-xrecipes-support/monit/files/init42
-rwxr-xr-xrecipes-support/monit/monit_5.14.bb40
-rwxr-xr-xrecipes-support/mysql/files/fix-cmake-module-path.patch20
-rwxr-xr-xrecipes-support/mysql/mysql-native_5.5.44.bb18
-rwxr-xr-xrecipes-support/mysql/mysql.inc150
-rwxr-xr-xrecipes-support/mysql/mysql_5.5.44.bb1
-rwxr-xr-xrecipes-support/thrift/files/0001-remove-malloc-realloc-from-configure.ac.patch13
-rwxr-xr-xrecipes-support/thrift/thrift_0.9.2.bb76
42 files changed, 2744 insertions, 9 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index 5e51e37..5e51e37 100644..100755
--- a/conf/layer.conf
+++ b/conf/layer.conf
diff --git a/conf/machine/qt1040-1gb.conf b/conf/machine/qt1040-1gb.conf
index 4e71561..25aac12 100644..100755
--- a/conf/machine/qt1040-1gb.conf
+++ b/conf/machine/qt1040-1gb.conf
@@ -14,6 +14,7 @@ KERNEL_DEVICETREE ?= "fsl/simc-t1040.dtb"
KERNEL_FIT_IMAGES ?= "simc-t1040"
PREFERRED_PROVIDER_virtual/bootloader = "${PREFERRED_PROVIDER_u-boot}"
+PREFERRED_VERSION_u-boot_qoriq = "2017.09"
UBOOT_CONFIG ??= "nand"
UBOOT_CONFIG[nand] = "QT1040-1GB_nand_config,,u-boot-with-spl-pbl.bin"
diff --git a/conf/machine/simc-t1022-tcb-02.conf b/conf/machine/simc-t1022-tcb-02.conf
index bb4e523..b1bef91 100644..100755
--- a/conf/machine/simc-t1022-tcb-02.conf
+++ b/conf/machine/simc-t1022-tcb-02.conf
@@ -14,6 +14,7 @@ KERNEL_DEVICETREE ?= "fsl/simc-t1022.dtb"
KERNEL_FIT_IMAGES ?= "simc-t1022"
PREFERRED_PROVIDER_virtual/bootloader = "${PREFERRED_PROVIDER_u-boot}"
+PREFERRED_VERSION_u-boot_qoriq = "2017.09"
UBOOT_CONFIG ??= "nand"
UBOOT_CONFIG[nand] = "T1_simc-t10xx_nand_config,,u-boot-with-spl-pbl.bin"
diff --git a/conf/machine/simc-t1040-tcb-02.conf b/conf/machine/simc-t1040-tcb-02.conf
index 9eef5d3..5433b7e 100644..100755
--- a/conf/machine/simc-t1040-tcb-02.conf
+++ b/conf/machine/simc-t1040-tcb-02.conf
@@ -14,6 +14,7 @@ KERNEL_DEVICETREE ?= "fsl/simc-t1040.dtb"
KERNEL_FIT_IMAGES ?= "simc-t1040"
PREFERRED_PROVIDER_virtual/bootloader = "${PREFERRED_PROVIDER_u-boot}"
+PREFERRED_VERSION_u-boot_qoriq = "2017.09"
UBOOT_CONFIG ??= "nand"
UBOOT_CONFIG[nand] = "T1_simc-t10xx_nand_config,,u-boot-with-spl-pbl.bin"
diff --git a/conf/machine/simc-t2081-tcb-02.conf b/conf/machine/simc-t2081-tcb-02.conf
index a0ec686..4568955 100644..100755
--- a/conf/machine/simc-t2081-tcb-02.conf
+++ b/conf/machine/simc-t2081-tcb-02.conf
@@ -14,8 +14,10 @@ KERNEL_DEVICETREE ?= "fsl/simc-t2081.dtb"
KERNEL_FIT_IMAGES ?= "simc-t2081"
PREFERRED_PROVIDER_virtual/bootloader = "${PREFERRED_PROVIDER_u-boot}"
+PREFERRED_VERSION_u-boot_qoriq = "2017.09"
UBOOT_CONFIG ??= "nand"
-UBOOT_CONFIG[nand] = "T2_simc-t2081_nand_config,,u-boot-with-spl-pbl.bin"
+#UBOOT_CONFIG[nand] = "T2_simc-t2081_nand_config,,u-boot-with-spl-pbl.bin"
+UBOOT_CONFIG[nand] = "T1_simc-t10xx_nand_config,,u-boot-with-spl-pbl.bin"
# Images types generated for this machine
IMAGE_FSTYPES = "tar.bz2 ubifs ubi"
@@ -35,4 +37,6 @@ MKUBIFS_ARGS = "--space-fixup -m 2048 -e 124KiB -c 10000"
UBINIZE_ARGS = "-m 2048 -p 128KiB -s 2048"
UBI_VOLNAME = "rootfs"
+# Ensure that the the kernel modules are inserted into the image during re-builds.
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
diff --git a/recipes-benchmark/stress-ng/stress-ng_0.04.07.bb b/recipes-benchmark/stress-ng/stress-ng_0.04.07.bb
new file mode 100755
index 0000000..40b84b6
--- /dev/null
+++ b/recipes-benchmark/stress-ng/stress-ng_0.04.07.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "stress-ng will stress test a computer system in various selectable ways. \
+ It was designed to exercise various physical subsystems of a computer as well as the \
+ various operating system kernel interfaces."
+HOMEPAGE = "http://kernel.ubuntu.com/~cking/stress-ng/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://kernel.ubuntu.com/cking/stress-ng.git;protocol=git"
+SRCREV = "6e57b577400791b100d07421834fb33d7941f7ab"
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+ oe_runmake CFLAGS="-DVERSION=\\\"${PV}\\\""
+}
+
+do_install() {
+ oe_runmake install DESTDIR=${D} BINDIR=${bindir} MANDIR=${mandir}
+}
diff --git a/recipes-benchmark/stress-ng/stress-ng_0.08.06.bb b/recipes-benchmark/stress-ng/stress-ng_0.08.06.bb
new file mode 100755
index 0000000..ae906be
--- /dev/null
+++ b/recipes-benchmark/stress-ng/stress-ng_0.08.06.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "stress-ng will stress test a computer system in various selectable ways. \
+ It was designed to exercise various physical subsystems of a computer as well as the \
+ various operating system kernel interfaces."
+HOMEPAGE = "http://kernel.ubuntu.com/~cking/stress-ng/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://kernel.ubuntu.com/cking/stress-ng.git;protocol=git"
+SRCREV = "8a91f84659a66fb7aa85db032bee49445449f1e7"
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+ oe_runmake CFLAGS="-DVERSION=\\\"${PV}\\\""
+}
+
+do_install() {
+ oe_runmake install DESTDIR=${D} BINDIR=${bindir} MANDIR=${mandir}
+ chown -R root:root ${D} ${bindir} ${mandir}
+}
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2016.09.bbappend b/recipes-bsp/u-boot/u-boot-qoriq_2016.09.bbappend
deleted file mode 100644
index 781da54..0000000
--- a/recipes-bsp/u-boot/u-boot-qoriq_2016.09.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-SRC_URI = "git://source.sintecs.nl/scalys/u-boot-fsl-qoriq;protocol=http;branch=scalys"
-SRCREV = "6d60b34427a6a054c2ccce0953d856ab280a4aeb" \ No newline at end of file
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2017.09.bb b/recipes-bsp/u-boot/u-boot-qoriq_2017.09.bb
new file mode 100755
index 0000000..7adc169
--- /dev/null
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2017.09.bb
@@ -0,0 +1,4 @@
+require recipes-bsp/u-boot/u-boot-qoriq_2016.09.bb
+
+SRC_URI = "git://source.sintecs.nl/scalys/u-boot-fsl-qoriq;protocol=http;branch=scalys"
+SRCREV = "0d48297646c426cdd206b0e530495ab7eb02acd3" \ No newline at end of file
diff --git a/recipes-devtools/memtool/Makefile b/recipes-devtools/memtool/Makefile
new file mode 100755
index 0000000..00fbc35
--- /dev/null
+++ b/recipes-devtools/memtool/Makefile
@@ -0,0 +1,26 @@
+# Assuming that you have CROSS_COMPILE defined iff you are not building under Yocto
+ifdef CROSS_COMPILE
+CC = $(CROSS_COMPILE)gcc
+endif
+
+CFLAGS = -O0 -fno-omit-frame-pointer
+
+all:
+ $(CC) $(CFLAGS) memtool.c -pthread -o memtool
+ @file memtool
+
+.PHONY : help
+help:
+ @echo "usage of this Makefile"
+ @echo "make : builds the application (same as 'make all')"
+ @echo "make clean : clean binaries"
+ @echo "make release : makes a tar ball of these sources"
+ @echo "make help : this message"
+
+.PHONY : clean
+clean:
+ -rm -rf memtool *.o memtool.tar.gz
+
+.PHONY : release
+release: clean
+ tar czf memtool.tar.gz *.c Makefile
diff --git a/recipes-devtools/memtool/memtool.c b/recipes-devtools/memtool/memtool.c
new file mode 100755
index 0000000..915c079
--- /dev/null
+++ b/recipes-devtools/memtool/memtool.c
@@ -0,0 +1,329 @@
+
+
+#if 0
+/*
+ * Copyright 2006 Freescale Semiconductor, Inc. All Rights Reserved.
+ */
+
+/*
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:
+ *
+ * http://www.opensource.org/licenses/gpl-license.html
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
+
+#include <stddef.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/types.h>
+#include <stdint.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <sys/mman.h>
+
+int g_size = 4;
+unsigned long g_paddr;
+int g_is_write;
+uint32_t g_value = 0;
+uint32_t g_count = 1;
+
+int parse_cmdline(int argc, char ** argv)
+{
+ int cur_arg = 0;
+ char * str;
+
+ if (argc < 2)
+ return -1;
+
+ cur_arg++;
+ if (strcmp(argv[cur_arg], "-8") == 0) {
+ cur_arg++;
+ g_size = 1;
+ }
+ else if (strcmp(argv[cur_arg], "-16") == 0) {
+ cur_arg++;
+ g_size = 2;
+ }
+ else if (strcmp(argv[cur_arg], "-32") == 0) {
+ cur_arg++;
+ g_size = 4;
+ }
+ if (cur_arg >= argc)
+ return -1;
+
+ g_paddr = strtoul(argv[cur_arg], NULL, 16);
+ if (!g_paddr)
+ return -1;
+
+ if ( str = strchr(argv[cur_arg], '=') ) {
+ g_is_write = 1;
+ if (strlen(str) > 1) {
+ str++;
+ g_value = strtoul(str, NULL, 16);
+ return 0;
+ }
+ }
+ if (++cur_arg >= argc)
+ return -1;
+
+ if ((argv[cur_arg])[0] == '=' ) {
+ g_is_write = 1;
+ if (strlen(argv[cur_arg]) > 1) {
+ (argv[cur_arg])++;
+ } else {
+ if (++cur_arg >= argc)
+ return -1;
+ }
+ g_value = strtoul(argv[cur_arg], NULL, 16);
+ }
+ else {
+ if (g_is_write)
+ g_value = strtoul(argv[cur_arg], NULL, 16);
+ else
+ g_count = strtoul(argv[cur_arg], NULL, 16);
+ }
+ return 0;
+}
+
+void read_mem(void * addr, uint32_t count, uint32_t size)
+{
+ int i;
+ uint8_t * addr8 = addr;
+ uint16_t * addr16 = addr;
+ uint32_t * addr32 = addr;
+
+ switch (size)
+ {
+ case 1:
+ for (i = 0; i < count; i++) {
+ if ( (i % 16) == 0 )
+ printf("\n0x%08lX: ", g_paddr);
+ printf(" %02X", addr8[i]);
+ g_paddr++;
+ }
+ break;
+ case 2:
+ for (i = 0; i < count; i++) {
+ if ( (i % 8) == 0 )
+ printf("\n0x%08lX: ", g_paddr);
+ printf(" %04X", addr16[i]);
+ g_paddr += 2;
+ }
+ break;
+ case 4:
+ for (i = 0; i < count; i++) {
+ if ( (i % 4) == 0 )
+ printf("\n0x%08lX: ", g_paddr);
+ printf(" %08X", addr32[i]);
+ g_paddr += 4;
+ }
+ break;
+ }
+ printf("\n\n");
+
+}
+
+void write_mem(void * addr, uint32_t value, uint32_t size)
+{
+ int i;
+ uint8_t * addr8 = addr;
+ uint16_t * addr16 = addr;
+ uint32_t * addr32 = addr;
+
+ switch (size)
+ {
+ case 1:
+ *addr8 = value;
+ break;
+ case 2:
+ *addr16 = value;
+ break;
+ case 4:
+ *addr32 = value;
+ break;
+ }
+}
+
+int main(int argc, char **argv)
+{
+ int fd;
+ void * mem;
+ void * aligned_vaddr;
+ unsigned long aligned_paddr;
+ uint32_t aligned_size;
+
+ if (parse_cmdline(argc, argv)) {
+ printf("Usage:\n\n" \
+ "Read memory: memtool [-8 | -16 | -32] <phys addr> <count>\n" \
+ "Write memory: memtool [-8 | -16 | -32] <phys addr>=<value>\n\n" \
+ "Default access size is 32-bit.\n\nAddress, count and value are all in hex.\n");
+ return 1;
+ }
+
+ /* Align address to access size */
+ g_paddr &= ~(g_size - 1);
+
+ aligned_paddr = g_paddr & ~(4096 - 1);
+ aligned_size = g_paddr - aligned_paddr + (g_count * g_size);
+ aligned_size = (aligned_size + 4096 - 1) & ~(4096 - 1);
+
+ if (g_is_write)
+ printf("Writing %d-bit value 0x%X to address 0x%08lX\n", g_size*8, g_value, g_paddr);
+ else
+ printf("Reading 0x%X count starting at address 0x%08lX\n", g_count, g_paddr);
+
+ if ((fd = open("/dev/mem", O_RDWR, 0)) < 0)
+ return 1;
+
+ aligned_vaddr = mmap(NULL, aligned_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, aligned_paddr);
+ if (aligned_vaddr == NULL) {
+ printf("Error mapping address\n");
+ close(fd);
+ return 1;
+ }
+
+ mem = (void *)((uint32_t)aligned_vaddr + (g_paddr - aligned_paddr));
+
+ if (g_is_write) {
+ write_mem(mem, g_value, g_size);
+ }
+ else {
+ read_mem(mem, g_count, g_size);
+ }
+
+ munmap(aligned_vaddr, aligned_size);
+ close(fd);
+ return 0;
+}
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <sys/mman.h>
+#include <stdint.h>
+
+#include <string.h>
+#include <sys/ioctl.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <errno.h>
+
+void print_help(void)
+{
+ printf( "\n Usage: \n" );
+ printf( " -a [address] Address on which to read/write\n" );
+ printf( " -c [count] Number of words to read with the dump command\n" );
+ printf( " -d Dump registers\n" );
+ printf( " -r Perform a read action\n" );
+ printf( " -w [data] Perform a write action\n" );
+ printf( " -q Quiet mode, only print read data\n");
+}
+
+int main(int argc, char **argv)
+{
+ int fd;
+ int i;
+ int opt;
+ long page_size;
+ void* virtual_address, *mem;
+ int read=0, write=0,dump=1,quiet_mode=0;
+ int count = 16;
+ int write_value;
+ off_t physical_address;
+
+
+ while((opt = getopt(argc, argv, "h?a:dc:rw:q")) != EOF) {
+ switch(opt)
+ {
+ case 'h':
+ case '?':
+ print_help();
+ return EXIT_SUCCESS;
+ case 'a':
+ sscanf(optarg, "%x", &physical_address);
+ break;
+ case 'c':
+ sscanf(optarg, "%x", &count);
+ break;
+ case 'd':
+ dump = 1;
+ break;
+
+ case 'r':
+ read = 1;
+ dump = 0;
+ break;
+
+ case 'w':
+ write = 1;
+ dump = 0;
+ sscanf(optarg, "%x", &write_value);
+ break;
+ case 'q':
+ quiet_mode = 1;
+ break;
+
+ default:
+ printf("Unknown option %c\n", opt);
+ return EXIT_FAILURE;
+ }
+ }
+
+ if (argc <= 1) {
+ print_help();
+ return EXIT_SUCCESS;
+ }
+
+ fd = open("/dev/mem", O_RDWR, 0);
+
+ if (fd <= 0) {
+ printf("Error opening /dev/mem : %s\n", strerror(errno));
+ return EXIT_FAILURE;
+ }
+
+ page_size = sysconf(_SC_PAGESIZE);
+ virtual_address = mmap( 0, page_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, physical_address & ~(page_size-1) );
+ if (virtual_address == NULL) {
+ printf("Error mapping address\n");
+ close(fd);
+ return EXIT_FAILURE;
+ }
+
+ mem = (void *)(virtual_address + ((uint32_t)physical_address % (uint32_t) page_size));
+
+ if (write){
+ *((uint32_t*) mem) = write_value;
+ }
+
+ if (read) {
+ if (quiet_mode)
+ printf("%08x\n", ((uint32_t*) mem)[0] );
+ else
+ printf("%08x = %08x\n", physical_address, ((uint32_t*) mem)[0] );
+ }
+
+ if (dump) {
+ for( i = 0; i < count; i++ ) {
+ if ( ( i % 4 ) == 0 )
+ printf("%08x [ ", (physical_address + (i*4) ) );
+ printf("%08x ", ((uint32_t*) mem)[i] );
+ if ( ( i % 4 ) == 3 )
+ printf("]\n" );
+ }
+ printf("\n" );
+ }
+
+ munmap(virtual_address, page_size);
+
+ close(fd);
+
+ return 0;
+}
+
+
diff --git a/recipes-devtools/memtool/memtool_1.0.bb b/recipes-devtools/memtool/memtool_1.0.bb
new file mode 100755
index 0000000..152dc55
--- /dev/null
+++ b/recipes-devtools/memtool/memtool_1.0.bb
@@ -0,0 +1,28 @@
+DESCRIPTION = "tools to inspect or alter memory"
+SECTION = "dev tools"
+LICENSE = "GPLv2"
+
+PV = "1.0"
+PR = "r0"
+
+SRC_URI = "file://memtool.c file://Makefile"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+
+S = "${WORKDIR}"
+
+do_install () {
+ install -d ${D}${bindir}
+ install -m 0755 memtool ${D}${bindir}
+}
+
+do_compile() {
+ oe_runmake
+}
+
+
+FILESPATH = "${FILE_DIRNAME}"
+FILES_${PN} = "${bindir}/memtool"
+
+INHIBIT_PACKAGE_DEBUG_SPLIT_${PN} = "1"
+INSANE_SKIP_${PN} += "ldflags"
+
diff --git a/recipes-fsl/images/fsl-image-core.bbappend b/recipes-fsl/images/fsl-image-core.bbappend
index 2d5b489..2d5b489 100644..100755
--- a/recipes-fsl/images/fsl-image-core.bbappend
+++ b/recipes-fsl/images/fsl-image-core.bbappend
diff --git a/recipes-images/sintecs-base-image/sintecs-base-image.bb b/recipes-images/sintecs-base-image/sintecs-base-image.bb
new file mode 100755
index 0000000..f7da302
--- /dev/null
+++ b/recipes-images/sintecs-base-image/sintecs-base-image.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Generic sintecs base image"
+DESCRIPTION = "This image is meant to be used as a starting point for custom images"
+LICENSE = "GPLV2"
+
+LIC_FILES_CHKSUM = ""
+
+require recipes-fsl/images/fsl-image-minimal.bb
+
+IMAGE_FSTYPES = "tar.gz ext2.gz ext2.gz.u-boot jffs2 ubi ubifs"
+
+IMAGE_INSTALL += "\
+"
+
+IMAGE_INSTALL_remove += "\
+"
+
+do_rootfs[depends] += "fsl-image-minimal:do_rootfs"
+
+#Insert the fitimage into the rootfs images
+ROOTFS_POSTPROCESS_COMMAND += "rootfs_insert_fitimage;"
+
+# TODO use better copy directory notation
+rootfs_insert_fitimage() {
+ mkdir -p ${IMAGE_ROOTFS}/boot
+ cp -R ${IMAGE_ROOTFS}/../../../fsl-image-minimal/1.0-r0/rootfs/boot/* ${IMAGE_ROOTFS}/boot/
+}
diff --git a/recipes-images/sintecs-virt-image/sintecs-virt-image.bb b/recipes-images/sintecs-virt-image/sintecs-virt-image.bb
new file mode 100644
index 0000000..32a414a
--- /dev/null
+++ b/recipes-images/sintecs-virt-image/sintecs-virt-image.bb
@@ -0,0 +1,41 @@
+SUMMARY = "Sintecs base image for virtualization"
+DESCRIPTION = "This image is meant to be used as a starting point for custom virtualization images"
+LICENSE = "GPLV2"
+
+LIC_FILES_CHKSUM = ""
+
+
+require recipes-fsl/images/fsl-image-virt.bb
+
+
+#Generate ubi/ubifs images
+IMAGE_FSTYPES += "ubi ubifs"
+
+#Insert the fitimage into the rootfs images
+ROOTFS_POSTPROCESS_COMMAND += "rootfs_insert_fitimage;"
+
+# TODO use better copy directory notation
+rootfs_insert_fitimage() {
+ mkdir -p ${IMAGE_ROOTFS}/boot
+ cp -R ${IMAGE_ROOTFS}/../../../fsl-image-core/1.0-r0/rootfs/boot/* ${IMAGE_ROOTFS}/boot/
+}
+
+IMAGE_INSTALL += "\
+ \
+ kernel-devicetree \
+ kernel-modules \
+ \
+ packagegroup-core-full-cmdline \
+ \
+ openssh \
+ \
+ tmux \
+ \
+ i2c-tools \
+ nano \
+ vim \
+ \
+ mtd-utils \
+ mtd-utils-ubifs \
+ \
+"
diff --git a/recipes-kernel/linux/files/defconfig_append_t10xx b/recipes-kernel/linux/files/defconfig_append_simc-t10xx
index 8393260..5bcf08c 100644..100755
--- a/recipes-kernel/linux/files/defconfig_append_t10xx
+++ b/recipes-kernel/linux/files/defconfig_append_simc-t10xx
@@ -102,4 +102,4 @@ CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_DEV_FSL_CAAM_JR_UIO=y
#
# end of simc-t10xx configs
-# (make sure to end with a new line due to a additional freescale script)
+# (make sure to end with a new line due to an additional freescale script)
diff --git a/recipes-kernel/linux/files/defconfig_append_simc-t2081 b/recipes-kernel/linux/files/defconfig_append_simc-t2081
new file mode 100755
index 0000000..9e04f23
--- /dev/null
+++ b/recipes-kernel/linux/files/defconfig_append_simc-t2081
@@ -0,0 +1,69 @@
+#
+# simc-t2081 additional configs
+#
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_RELAY=y
+CONFIG_QORIQ_CPUFREQ=y
+CONFIG_WANT_COMPAT_NETLINK_MESSAGES=y
+CONFIG_COMPAT_NETLINK_MESSAGES=y
+CONFIG_FW_LOADER_USER_HELPER=y
+CONFIG_FTL=y
+CONFIG_EEPROM_AT24=y
+CONFIG_FSL_DPAA_ETH=y
+CONFIG_IGB=y
+CONFIG_IGB_HWMON=y
+CONFIG_MDIO_BUS_MUX_GPIO=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_DEVPORT=y
+CONFIG_I2C_ALGOBIT=y
+CONFIG_HWMON=y
+CONFIG_HWMON_VID=y
+CONFIG_THERMAL=y
+CONFIG_THERMAL_HWMON=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_FAIR_SHARE=y
+CONFIG_THERMAL_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_CPU_THERMAL=y
+CONFIG_QORIQ_THERMAL=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
+CONFIG_FSL_RAID=y
+CONFIG_UIO_FSL_DMA=y
+CONFIG_FSL_DPA=y
+CONFIG_FSL_DPA_CHECKING=y
+CONFIG_JBD2=y
+CONFIG_HAS_IOPORT=y
+CONFIG_LIB_RHEAP=y
+CONFIG_AVERAGE=y
+CONFIG_EXT4_FS=y
+CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
+CONFIG_DEBUG_INFO=y
+CONFIG_CRYPTO_ARC4=y
+CONFIG_CRYPTO_DEV_FSL_CAAM_JR_UIO=y
+CONFIG_MTD_UBI=y
+CONFIG_MTD_PARTITIONS=y
+CONFIG_UBIFS_FS=y
+CONFIG_SENSORS_ADT7475=y
+CONFIG_SENSORS_LM90=y
+CONFIG_PMBUS=y
+CONFIG_SENSORS_PMBUS=y
+CONFIG_SENSORS_UCD9200=y
+CONFIG_SENSORS_INA2XX=y
+
+#CONFIG_FSL_BMAN_TEST=y
+#CONFIG_FSL_BMAN_TEST_HIGH=y
+#CONFIG_FSL_BMAN_TEST_THRESH=y
+#CONFIG_FSL_QMAN_TEST=y
+#CONFIG_FSL_QMAN_TEST_STASH_POTATO=y
+#CONFIG_FSL_QMAN_TEST_HIGH=y
+
+CONFIG_LEGACY_PTYS=y
+
+#
+# end of simc-t2081 configs
+# (make sure to end with a new line due to an additional freescale script)
diff --git a/recipes-kernel/linux/files/defconfig_append_simc-txxxx-virt b/recipes-kernel/linux/files/defconfig_append_simc-txxxx-virt
new file mode 100755
index 0000000..9c5ea57
--- /dev/null
+++ b/recipes-kernel/linux/files/defconfig_append_simc-txxxx-virt
@@ -0,0 +1,48 @@
+#
+# simc-txxxx additional virtualization configs
+#
+# PCI-SAS/SATA HDD configs
+CONFIG_BLK_DEV_BSG=y
+CONFIG_SCSI_MPT2SAS=y
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS_LOGGING is not set
+CONFIG_RAID_ATTRS=y
+CONFIG_SCSI_SAS_ATTRS=y
+
+CONFIG_PREEMPT_NOTIFIERS=y
+CONFIG_MMU_NOTIFIER=y
+CONFIG_STP=y
+CONFIG_BRIDGE=y
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+# CONFIG_BRIDGE_VLAN_FILTERING is not set
+CONFIG_LLC=y
+CONFIG_VIRTIO_BLK=y
+# CONFIG_SCSI_VIRTIO is not set
+CONFIG_TUN=y
+CONFIG_VIRTIO_NET=y
+CONFIG_VHOST_NET=y
+CONFIG_VHOST_RING=y
+CONFIG_VHOST=y
+# CONFIG_VIRTIO_CONSOLE is not set
+# CONFIG_HW_RANDOM_VIRTIO is not set
+CONFIG_VIRTIO=y
+CONFIG_VIRTIO_PCI=y
+CONFIG_VIRTIO_PCI_LEGACY=y
+# CONFIG_VIRTIO_BALLOON is not set
+# CONFIG_VIRTIO_INPUT is not set
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_IRQFD=y
+CONFIG_HAVE_KVM_IRQ_ROUTING=y
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_MMIO=y
+CONFIG_HAVE_KVM_MSI=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+CONFIG_KVM_BOOKE_HV=y
+# CONFIG_KVM_EXIT_TIMING is not set
+CONFIG_KVM_E500MC=y
+CONFIG_KVM_MPIC=y
+
+#
+# end of simc-txxxx configs
+# (make sure to end with a new line due to an additional freescale script)
diff --git a/recipes-kernel/linux/files/fit_image_template.its b/recipes-kernel/linux/files/fit_image_template.its
index 9eb4722..9eb4722 100644..100755
--- a/recipes-kernel/linux/files/fit_image_template.its
+++ b/recipes-kernel/linux/files/fit_image_template.its
diff --git a/recipes-kernel/linux/files/simc-t10xx_device_tree_addition.patch b/recipes-kernel/linux/files/simc-t10xx_device_tree_addition.patch
new file mode 100755
index 0000000..eebd9a6
--- /dev/null
+++ b/recipes-kernel/linux/files/simc-t10xx_device_tree_addition.patch
@@ -0,0 +1,858 @@
+From ef320c1ea090606611fcf385171bdb73df4d4eb0 Mon Sep 17 00:00:00 2001
+From: vojo <joris.van.vossen@sintecs.nl>
+Date: Thu, 24 Aug 2017 09:22:41 +0200
+Subject: [PATCH] simc-t10xx_device_tree_patch
+
+---
+ arch/powerpc/boot/dts/fsl/qoriq-i2c-0.dtsi | 4 +-
+ arch/powerpc/boot/dts/fsl/qoriq-i2c-1.dtsi | 4 +-
+ arch/powerpc/boot/dts/fsl/simc-t1022.dts | 304 ++++++++++++++++++++++++++++
+ arch/powerpc/boot/dts/fsl/simc-t1040.dts | 311 +++++++++++++++++++++++++++++
+ arch/powerpc/boot/dts/fsl/simc-t10xx.dtsi | 162 +++++++++++++++
+ 5 files changed, 781 insertions(+), 4 deletions(-)
+ create mode 100644 arch/powerpc/boot/dts/fsl/simc-t1022.dts
+ create mode 100644 arch/powerpc/boot/dts/fsl/simc-t1040.dts
+ create mode 100644 arch/powerpc/boot/dts/fsl/simc-t10xx.dtsi
+
+diff --git a/arch/powerpc/boot/dts/fsl/qoriq-i2c-0.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-i2c-0.dtsi
+index 5f9bf7d..fec0835 100644
+--- a/arch/powerpc/boot/dts/fsl/qoriq-i2c-0.dtsi
++++ b/arch/powerpc/boot/dts/fsl/qoriq-i2c-0.dtsi
+@@ -32,7 +32,7 @@
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+-i2c@118000 {
++i2c0: i2c@118000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cell-index = <0>;
+@@ -42,7 +42,7 @@ i2c@118000 {
+ dfsrr;
+ };
+
+-i2c@118100 {
++i2c1: i2c@118100 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cell-index = <1>;
+diff --git a/arch/powerpc/boot/dts/fsl/qoriq-i2c-1.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-i2c-1.dtsi
+index 7989bf5..74f516a 100644
+--- a/arch/powerpc/boot/dts/fsl/qoriq-i2c-1.dtsi
++++ b/arch/powerpc/boot/dts/fsl/qoriq-i2c-1.dtsi
+@@ -32,7 +32,7 @@
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+-i2c@119000 {
++i2c2: i2c@119000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cell-index = <2>;
+@@ -42,7 +42,7 @@ i2c@119000 {
+ dfsrr;
+ };
+
+-i2c@119100 {
++i2c3: i2c@119100 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ cell-index = <3>;
+diff --git a/arch/powerpc/boot/dts/fsl/simc-t1022.dts b/arch/powerpc/boot/dts/fsl/simc-t1022.dts
+new file mode 100644
+index 0000000..3fc75f0
+--- /dev/null
++++ b/arch/powerpc/boot/dts/fsl/simc-t1022.dts
+@@ -0,0 +1,304 @@
++/*
++ * Device tree for the SiMC-T1022 Module
++ *
++ * Copyright 2016 Scalys B.V.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ */
++
++/include/ "t104xsi-pre.dtsi"
++/include/ "simc-t10xx.dtsi"
++
++/ {
++ model = "fsl,simc-t1022";
++ compatible = "fsl,T1040D4RDB";
++ #address-cells = <2>;
++ #size-cells = <2>;
++ interrupt-parent = <&mpic>;
++
++ chosen {
++ name = "chosen";
++
++ dpaa-extended-args {
++ fman1-extd-args {
++ cell-index = <0>;
++ compatible = "fsl,fman-extended-args";
++ fman1_rx3-extd-args {
++ cell-index = <3>;
++ compatible = "fsl,fman-port-1g-rx-extended-args";
++ ar-tables-sizes = <10 10 10 10 10 10 20 2000>;
++ ar-filters-sizes = <10 20 20>;
++ };
++ };
++ };
++ };
++
++ aliases {
++ phy_rgmii_0 = &phy_rgmii_0;
++ phy_rgmii_1 = &phy_rgmii_1;
++ };
++
++ soc: soc@ffe000000 {
++ ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
++ reg = <0xf 0xfe000000 0 0x00001000>;
++
++
++ qman: qman@318000 {
++ };
++ bman: bman@31a000 {
++ };
++
++ fman0: fman@400000 {
++ sleep = <&rcpm 0x00000008>;
++
++ enet0: ethernet@e0000 {
++ /*phy-handle = <&sgmii_aqr105_phy_s5>;*/
++ phy-connection-type = "sgmii";
++ fixed-link = <1 1 1000 0 0>;
++ sleep = <&rcpm 0x80000000>;
++ };
++
++ enet1: ethernet@e2000 {
++ /*phy-handle = <&sgmii_aqr105_phy_s4>;*/
++ phy-connection-type = "sgmii";
++ fixed-link = <2 1 1000 0 0>;
++ sleep = <&rcpm 0x40000000>;
++ };
++
++ enet2: ethernet@e4000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <3 1 1000 0 0>;
++ sleep = <&rcpm 0x20000000>;
++ };
++
++ enet3: ethernet@e6000 {
++ phy-handle = <&phy_rgmii_0>;
++ phy-connection-type = "rgmii";
++ sleep = <&rcpm 0x10000000>;
++ local-mac-address = [ ca fe ba be 00 01 ];
++ };
++
++ enet4: ethernet@e8000 {
++ phy-handle = <&phy_rgmii_1>;
++ phy-connection-type = "rgmii";
++ sleep = <&rcpm 0x08000000>;
++ local-mac-address = [ ca fe ba be 00 02 ];
++ };
++
++ mdio0: mdio@fc000 {
++ phy_rgmii_0: ethernet-phy@00 {
++ reg = <0x00>;
++ };
++ phy_rgmii_1: ethernet-phy@01 {
++ reg = <0x01>;
++ };
++ };
++ };
++
++ l2switch: l2switch@800000 {
++ status = "disabled";
++ };
++ };
++
++ fsl,dpaa {
++ compatible = "fsl,t1040-dpaa", "fsl,dpaa";
++ ethernet@0 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet0>;
++ };
++ ethernet@1 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet1>;
++ };
++ ethernet@2 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet2>;
++ };
++ ethernet@3 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet3>;
++ };
++ ethernet@4 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet4>;
++ };
++ };
++
++ qe: qe@ffe139999 {
++ ranges = <0x0 0xf 0xfe140000 0x40000>;
++ reg = <0xf 0xfe140000 0 0x480>;
++ brg-frequency = <0>;
++ bus-frequency = <0>;
++
++ si1: si@700 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ compatible = "fsl,qe-si";
++ reg = <0x700 0x80>;
++ };
++
++ siram1: siram@1000 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "fsl,qe-siram";
++ reg = <0x1000 0x800>;
++ };
++
++ tdma: ucc@2000 {
++ compatible = "fsl,ucc-tdm";
++ rx-clock-name = "clk8";
++ tx-clock-name = "clk9";
++ fsl,rx-sync-clock = "rsync_pin";
++ fsl,tx-sync-clock = "tsync_pin";
++ fsl,tx-timeslot = <0xfffffffe>;
++ fsl,rx-timeslot = <0xfffffffe>;
++ fsl,tdm-framer-type = "e1";
++ fsl,tdm-mode = "normal";
++ fsl,tdm-id = <0>;
++ fsl,siram-entry-id = <0>;
++ };
++
++ ucc@2200 {
++ compatible = "fsl,ucc_hdlc";
++ rx-clock-name = "clk10";
++ tx-clock-name = "clk11";
++ fsl,rx-sync-clock = "rsync_pin";
++ fsl,tx-sync-clock = "tsync_pin";
++ fsl,tx-timeslot = <0xfffffffe>;
++ fsl,rx-timeslot = <0xfffffffe>;
++ fsl,tdm-framer-type = "e1";
++ fsl,tdm-mode = "normal";
++ fsl,tdm-id = <1>;
++ fsl,siram-entry-id = <2>;
++ fsl,tdm-interface;
++ };
++ };
++};
++#include "t1040si-post.dtsi"
++/include/ "qoriq-dpaa-res3.dtsi"
++
++&i2c0 {
++ clock-frequency = <400000>;
++ adt7476: thermal@2e {
++ compatible = "adi,adt7476";
++ reg = <0x2e>;
++ };
++
++ adt7461a@4c {
++ compatible = "adt7461a";
++ reg = <0x4c>;
++ };
++
++ ucd9220: powermanager@4e {
++ compatible = "ti,ucd9224";
++ reg = <0x4e>;
++ };
++
++ eeprom_module@50 {
++ compatible = "microchip,24c1024";
++ reg = <0x50>;
++ };
++
++ eeprom_carrier@54 {
++ compatible = "microchip,24c1024";
++ reg = <0x54>;
++ };
++
++
++ rtc@68 {
++ compatible = "dallas,ds1307";
++ reg = <0x68>;
++ };
++};
++
++&i2c3 {
++ tca9546@70 {
++ /* Actual device is a TI TCA9546, but they are functional compatible */
++ compatible = "philips,pca9546";
++ reg = <0x70>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ i2c@0 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <0>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@1 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <1>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@2 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <2>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@3 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <3>;
++ clock-frequency = <100000>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++
++ };
++ };
++};
++
++#if 1
++&sdhc {
++ /*bus-width = <4>;*/
++ voltage-ranges = <3300 3300>;
++};
++#endif
++
++#if 0
++ sgmii_vsc8234_phy_s5: ethernet-phy@1c {
++ reg = <0x1c>;
++ };
++
++ sgmii_aqr105_phy_s5: ethernet-phy@5 {
++ reg = <0x5>;
++ };
++#endif
++
+diff --git a/arch/powerpc/boot/dts/fsl/simc-t1040.dts b/arch/powerpc/boot/dts/fsl/simc-t1040.dts
+new file mode 100644
+index 0000000..d3fc108
+--- /dev/null
++++ b/arch/powerpc/boot/dts/fsl/simc-t1040.dts
+@@ -0,0 +1,311 @@
++/*
++ * Device tree for the SiMC-T1040 Module
++ *
++ * Copyright 2016 Scalys B.V.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ */
++
++/include/ "t104xsi-pre.dtsi"
++/include/ "simc-t10xx.dtsi"
++
++/ {
++ model = "fsl,simc-t1040";
++ compatible = "fsl,T1040D4RDB";
++ #address-cells = <2>;
++ #size-cells = <2>;
++ interrupt-parent = <&mpic>;
++
++ chosen {
++ name = "chosen";
++
++ dpaa-extended-args {
++ fman1-extd-args {
++ cell-index = <0>;
++ compatible = "fsl,fman-extended-args";
++ fman1_rx3-extd-args {
++ cell-index = <3>;
++ compatible = "fsl,fman-port-1g-rx-extended-args";
++ ar-tables-sizes = <10 10 10 10 10 10 20 2000>;
++ ar-filters-sizes = <10 20 20>;
++ };
++ };
++ };
++ };
++
++ aliases {
++ phy_rgmii_0 = &phy_rgmii_0;
++ phy_rgmii_1 = &phy_rgmii_1;
++ };
++
++ soc: soc@ffe000000 {
++ ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
++ reg = <0xf 0xfe000000 0 0x00001000>;
++
++
++ qman: qman@318000 {
++ };
++ bman: bman@31a000 {
++ };
++
++ fman0: fman@400000 {
++ sleep = <&rcpm 0x00000008>;
++
++ enet0: ethernet@e0000 {
++ status = "disabled";
++ };
++
++ enet1: ethernet@e2000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <2 1 1000 0 0>;
++ sleep = <&rcpm 0x40000000>;
++ };
++
++ enet2: ethernet@e4000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <3 1 1000 0 0>;
++ sleep = <&rcpm 0x20000000>;
++ };
++
++ enet3: ethernet@e6000 {
++ phy-handle = <&phy_rgmii_0>;
++ phy-connection-type = "rgmii";
++ sleep = <&rcpm 0x10000000>;
++ local-mac-address = [ ca fe ba be 00 01 ];
++ };
++
++ enet4: ethernet@e8000 {
++ phy-handle = <&phy_rgmii_1>;
++ phy-connection-type = "rgmii";
++ sleep = <&rcpm 0x08000000>;
++ local-mac-address = [ ca fe ba be 00 02 ];
++ };
++
++ mdio0: mdio@fc000 {
++ phy_rgmii_0: ethernet-phy@00 {
++ reg = <0x00>;
++ };
++ phy_rgmii_1: ethernet-phy@01 {
++ reg = <0x01>;
++ };
++ };
++ };
++
++ l2switch: l2switch@800000 {
++ port@100000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <1 1 1000 0 0>;
++ };
++ port@110000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <1 1 1000 0 0>;
++ };
++ port@120000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <1 1 1000 0 0>;
++ };
++ port@130000 {
++ status = "disabled";
++ };
++ port@140000 {
++ status = "disabled";
++ };
++ port@150000 {
++ status = "disabled";
++ };
++ port@160000 {
++ status = "disabled";
++ };
++ port@170000 {
++ status = "disabled";
++ };
++ };
++ };
++
++ fsl,dpaa {
++ compatible = "fsl,t1040-dpaa", "fsl,dpaa";
++
++ ethernet@1 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet1>;
++ };
++ ethernet@2 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet2>;
++ };
++ ethernet@3 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet3>;
++ };
++ ethernet@4 {
++ compatible = "fsl,t1040-dpa-ethernet", "fsl,dpa-ethernet";
++ fsl,fman-mac = <&enet4>;
++ };
++ };
++
++ qe: qe@ffe139999 {
++ ranges = <0x0 0xf 0xfe140000 0x40000>;
++ reg = <0xf 0xfe140000 0 0x480>;
++ brg-frequency = <0>;
++ bus-frequency = <0>;
++
++ si1: si@700 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ compatible = "fsl,qe-si";
++ reg = <0x700 0x80>;
++ };
++
++ siram1: siram@1000 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "fsl,qe-siram";
++ reg = <0x1000 0x800>;
++ };
++
++ tdma: ucc@2000 {
++ compatible = "fsl,ucc-tdm";
++ rx-clock-name = "clk8";
++ tx-clock-name = "clk9";
++ fsl,rx-sync-clock = "rsync_pin";
++ fsl,tx-sync-clock = "tsync_pin";
++ fsl,tx-timeslot = <0xfffffffe>;
++ fsl,rx-timeslot = <0xfffffffe>;
++ fsl,tdm-framer-type = "e1";
++ fsl,tdm-mode = "normal";
++ fsl,tdm-id = <0>;
++ fsl,siram-entry-id = <0>;
++ };
++
++ ucc@2200 {
++ compatible = "fsl,ucc_hdlc";
++ rx-clock-name = "clk10";
++ tx-clock-name = "clk11";
++ fsl,rx-sync-clock = "rsync_pin";
++ fsl,tx-sync-clock = "tsync_pin";
++ fsl,tx-timeslot = <0xfffffffe>;
++ fsl,rx-timeslot = <0xfffffffe>;
++ fsl,tdm-framer-type = "e1";
++ fsl,tdm-mode = "normal";
++ fsl,tdm-id = <1>;
++ fsl,siram-entry-id = <2>;
++ fsl,tdm-interface;
++ };
++ };
++};
++#include "t1040si-post.dtsi"
++/include/ "qoriq-dpaa-res3.dtsi"
++
++&i2c0 {
++ clock-frequency = <400000>;
++ adt7476: thermal@2e {
++ compatible = "adi,adt7476";
++ reg = <0x2e>;
++ };
++
++ adt7461a@4c {
++ compatible = "adt7461a";
++ reg = <0x4c>;
++ };
++
++ ucd9220: powermanager@4e {
++ compatible = "ti,ucd9224";
++ reg = <0x4e>;
++ };
++
++ eeprom_module@50 {
++ compatible = "microchip,24c1024";
++ reg = <0x50>;
++ };
++
++ eeprom_carrier@54 {
++ compatible = "microchip,24c1024";
++ reg = <0x54>;
++ };
++
++
++ rtc@68 {
++ compatible = "dallas,ds1307";
++ reg = <0x68>;
++ };
++};
++
++&i2c3 {
++ tca9546@70 {
++ /* Actual device is a TI TCA9546, but they are functional compatible */
++ compatible = "philips,pca9546";
++ reg = <0x70>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ i2c@0 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <0>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@1 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <1>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@2 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <2>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@3 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <3>;
++ clock-frequency = <100000>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++
++ };
++ };
++};
++
++&sdhc {
++ /*bus-width = <4>;*/
++ voltage-ranges = <3300 3300>;
++};
++
+diff --git a/arch/powerpc/boot/dts/fsl/simc-t10xx.dtsi b/arch/powerpc/boot/dts/fsl/simc-t10xx.dtsi
+new file mode 100644
+index 0000000..562cfc1
+--- /dev/null
++++ b/arch/powerpc/boot/dts/fsl/simc-t10xx.dtsi
+@@ -0,0 +1,162 @@
++/*
++ * Device tree for the SiMC-T10xx series Modules
++ *
++ * Copyright 2016 Scalys B.V.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ */
++
++/ {
++ reserved-memory {
++ #address-cells = <2>;
++ #size-cells = <2>;
++ ranges;
++
++ bman_fbpr: bman-fbpr {
++ size = <0 0x1000000>;
++ alignment = <0 0x1000000>;
++ };
++ qman_fqd: qman-fqd {
++ size = <0 0x800000>;
++ alignment = <0 0x800000>;
++ };
++ qman_pfdr: qman-pfdr {
++ size = <0 0x2000000>;
++ alignment = <0 0x2000000>;
++ };
++ pme_pdsr: pme-pdsr {
++ compatible = "fsl,pme-pdsr";
++ alloc-ranges = <0 0 0x10000 0>;
++ size = <0 0x1000000>;
++ alignment = <0 0x1000000>;
++ };
++ pme_sre: pme-sre {
++ compatible = "fsl,pme-sre";
++ alloc-ranges = <0 0 0x10000 0>;
++ size = <0 0xa00000>;
++ alignment = <0 0xa00000>;
++ };
++ };
++
++ ifc: localbus@ffe124000 {
++ reg = <0xf 0xfe124000 0 0x2000>;
++ ranges = < 0 0 0xf 0xff800000 0x00010000 /* NAND Flash on CS0 */
++ 1 0 0xf 0xe8000000 0x02000000 >; /* NOR Flash on CS1 */
++
++ nand@0,0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "fsl,ifc-nand";
++ reg = <0 0x0 0x10000>;
++
++ /* Partitions should be mapped using the mtdparts argument in the bootargs */
++ status = "okay";
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ };
++
++ dcsr: dcsr@f00000000 {
++ ranges = <0x00000000 0xf 0x00000000 0x01072000>;
++ };
++
++ bportals: bman-portals@ff4000000 {
++ ranges = <0x0 0xf 0xf4000000 0x2000000>;
++ };
++
++ qportals: qman-portals@ff6000000 {
++ ranges = <0x0 0xf 0xf6000000 0x2000000>;
++ };
++
++ soc: soc@ffe000000 {
++ ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
++ reg = <0xf 0xfe000000 0 0x00001000>;
++
++ spi@110000 {
++ flash@0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "micron,n25q512ax3";
++ reg = <0>;
++ spi-max-frequency = <10000000>; /* input clock */
++ };
++ slic@1 {
++ compatible = "maxim,ds26522";
++ reg = <1>;
++ spi-max-frequency = <2000000>; /* input clock */
++ };
++ slic@2 {
++ compatible = "maxim,ds26522";
++ reg = <2>;
++ spi-max-frequency = <2000000>; /* input clock */
++ };
++ };
++
++ };
++
++ pci0: pcie@ffe240000 {
++ reg = <0xf 0xfe240000 0 0x10000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x10000000
++ 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x10000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci1: pcie@ffe250000 {
++ reg = <0xf 0xfe250000 0 0x10000>;
++ ranges = <0x02000000 0x0 0xe0000000 0xc 0x10000000 0x0 0x10000000
++ 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x10000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci2: pcie@ffe260000 {
++ reg = <0xf 0xfe260000 0 0x10000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x20000000 0 0x10000000
++ 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x10000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci3: pcie@ffe270000 {
++ reg = <0xf 0xfe270000 0 0x10000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x30000000 0 0x10000000
++ 0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x10000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++};
++
+--
+1.9.1
+
diff --git a/recipes-kernel/linux/files/simc-t2081_device_tree_addition.patch b/recipes-kernel/linux/files/simc-t2081_device_tree_addition.patch
new file mode 100755
index 0000000..a5382b1
--- /dev/null
+++ b/recipes-kernel/linux/files/simc-t2081_device_tree_addition.patch
@@ -0,0 +1,431 @@
+From b7b2b9772f77b8238c29022a575b94ed3bf0dbec Mon Sep 17 00:00:00 2001
+From: vojo <joris.van.vossen@sintecs.nl>
+Date: Fri, 25 Aug 2017 09:37:45 +0200
+Subject: [PATCH] simc-t2081_device_tree_addition
+
+---
+ arch/powerpc/boot/dts/fsl/simc-t2081.dts | 207 ++++++++++++++++++++++++++++++
+ arch/powerpc/boot/dts/fsl/simc-t2081.dtsi | 197 +++++++++++++++
+ 2 files changed, 404 insertions(+)
+ create mode 100644 arch/powerpc/boot/dts/fsl/simc-t2081.dts
+ create mode 100644 arch/powerpc/boot/dts/fsl/simc-t2081.dtsi
+
+diff --git a/arch/powerpc/boot/dts/fsl/simc-t2081.dts b/arch/powerpc/boot/dts/fsl/simc-t2081.dts
+new file mode 100644
+index 0000000..193170e
+--- /dev/null
++++ b/arch/powerpc/boot/dts/fsl/simc-t2081.dts
+@@ -0,0 +1,207 @@
++/*
++ * Device tree for the SiMC-T2081 Module
++ *
++ * Copyright 2017 Scalys B.V.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ */
++
++/include/ "t208xsi-pre.dtsi"
++/include/ "simc-t2081.dtsi"
++
++/ {
++ model = "fsl,simc-t2081";
++ compatible = "fsl,T2081QDS";
++ #address-cells = <2>;
++ #size-cells = <2>;
++ interrupt-parent = <&mpic>;
++
++};
++
++&soc {
++ fman0: fman@400000 {
++ fm1mac1: ethernet@e0000 { /* 10GEC3 */
++ /*phy-handle = <&xg_cs4315_phy1>;*/
++ phy-connection-type = "sgmii";
++ fixed-link = <1 1 1000 0 0>;
++ };
++
++ fm1mac2: ethernet@e2000 { /* 10GEC4 */
++ /*phy-handle = <&xg_cs4315_phy2>;*/
++ phy-connection-type = "sgmii";
++ fixed-link = <2 1 1000 0 0>;
++ };
++
++ fm1mac3: ethernet@e4000 {
++ phy-handle = <&phy_rgmii_0>;
++ phy-connection-type = "rgmii";
++ };
++
++ fm1mac4: ethernet@e6000 {
++ phy-handle = <&phy_rgmii_1>;
++ phy-connection-type = "rgmii";
++ };
++
++ fm1mac5: ethernet@e8000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <5 1 1000 0 0>;
++ };
++
++ fm1mac6: ethernet@ea000 {
++ phy-connection-type = "sgmii";
++ fixed-link = <6 1 1000 0 0>;
++ };
++
++ fm1mac9: ethernet@f0000 { /* 10GEC1 */
++ phy-handle = <&xg_cs4315_phy0>;
++ phy-connection-type = "xgmii";
++ };
++
++ fm1mac10: ethernet@f2000 { /* 10GEC2 */
++ phy-handle = <&xg_cs4315_phy1>;
++ phy-connection-type = "xgmii";
++ };
++
++ mdio0: mdio@fc000 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ phy_rgmii_0: ethernet-phy@00 {
++ reg = <0x0>;
++ };
++ phy_rgmii_1: ethernet-phy@01 {
++ reg = <0x1>;
++ };
++ };
++
++ xmdio0: mdio@fd000 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ xg_cs4315_phy0: ethernet-phy@0 {
++ compatible = "ethernet-phy-ieee802.3-c45";
++ reg = <0x0>;
++ };
++ xg_cs4315_phy1: ethernet-phy@1 {
++ compatible = "ethernet-phy-ieee802.3-c45";
++ reg = <0x1>;
++ };
++ };
++ };
++};
++
++
++/include/ "t2081si-post.dtsi"
++/include/ "qoriq-dpaa-res3.dtsi"
++/include/ "qoriq-qman-ceetm0.dtsi"
++
++&i2c0 {
++ clock-frequency = <400000>;
++ adt7476: thermal@2e {
++ compatible = "adi,adt7476";
++ reg = <0x2e>;
++ };
++
++ adt7461a@4c {
++ compatible = "adt7461a";
++ reg = <0x4c>;
++ };
++
++ ucd9220: powermanager@4e {
++ compatible = "ti,ucd9224";
++ reg = <0x4e>;
++ };
++
++ eeprom_module@50 {
++ compatible = "microchip,24c1024";
++ reg = <0x50>;
++ };
++
++ eeprom_carrier@54 {
++ compatible = "microchip,24c1024";
++ reg = <0x54>;
++ };
++
++
++ rtc@68 {
++ compatible = "dallas,ds1307";
++ reg = <0x68>;
++ };
++};
++
++&i2c3 {
++ tca9546@70 {
++ /* Actual device is a TI TCA9546, but they are functional compatible */
++ compatible = "philips,pca9546";
++ reg = <0x70>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ i2c@0 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <0>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@1 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <1>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@2 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <2>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++ };
++
++ i2c@3 {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ reg = <3>;
++ clock-frequency = <100000>;
++
++ at24@30 {
++ compatible = "at24,24c01";
++ reg = <0x30>;
++ };
++ sfp@50 {
++ compatible = "optics,sfp";
++ reg = <0x50>;
++ };
++
++ };
++ };
++};
++
++&sdhc {
++ /*bus-width = <4>;*/
++ voltage-ranges = <3300 3300>;
++};
+diff --git a/arch/powerpc/boot/dts/fsl/simc-t2081.dtsi b/arch/powerpc/boot/dts/fsl/simc-t2081.dtsi
+new file mode 100644
+index 0000000..62cc360
+--- /dev/null
++++ b/arch/powerpc/boot/dts/fsl/simc-t2081.dtsi
+@@ -0,0 +1,197 @@
++/*
++ * Device tree for the SiMC-T2081 Module
++ *
++ * Copyright 2017 Scalys B.V.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ */
++
++/ {
++ reserved-memory {
++ #address-cells = <2>;
++ #size-cells = <2>;
++ ranges;
++
++ bman_fbpr: bman-fbpr {
++ size = <0 0x1000000>;
++ alignment = <0 0x1000000>;
++ };
++ qman_fqd: qman-fqd {
++ size = <0 0x800000>;
++ alignment = <0 0x800000>;
++ };
++ qman_pfdr: qman-pfdr {
++ size = <0 0x2000000>;
++ alignment = <0 0x2000000>;
++ };
++ pme_pdsr: pme-pdsr {
++ compatible = "fsl,pme-pdsr";
++ alloc-ranges = <0 0 0x10000 0>;
++ size = <0 0x1000000>;
++ alignment = <0 0x1000000>;
++ };
++ pme_sre: pme-sre {
++ compatible = "fsl,pme-sre";
++ alloc-ranges = <0 0 0x10000 0>;
++ size = <0 0xa00000>;
++ alignment = <0 0xa00000>;
++ };
++ };
++
++ ifc: localbus@ffe124000 {
++ reg = <0xf 0xfe124000 0 0x2000>;
++ ranges = < 0 0 0xf 0xff800000 0x00010000 /* NAND Flash on CS0 */
++ 1 0 0xf 0xe8000000 0x02000000 >; /* NOR Flash on CS1 */
++
++ nand@0,0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "fsl,ifc-nand";
++ reg = <0 0x0 0x10000>;
++
++ /* Partitions should be mapped using the mtdparts argument in the bootargs */
++ status = "okay";
++ };
++ };
++
++ memory {
++ device_type = "memory";
++ };
++
++ dcsr: dcsr@f00000000 {
++ ranges = <0x00000000 0xf 0x00000000 0x01072000>;
++ };
++
++ bportals: bman-portals@ff4000000 {
++ ranges = <0x0 0xf 0xf4000000 0x2000000>;
++ };
++
++ qportals: qman-portals@ff6000000 {
++ #address-cells = <1>;
++ ranges = <0x0 0xf 0xf6000000 0x2000000>;
++ };
++
++ soc: soc@ffe000000 {
++ ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
++ reg = <0xf 0xfe000000 0 0x00001000>;
++
++ spi@110000 {
++ flash@0 {
++ #address-cells = <1>;
++ #size-cells = <1>;
++ compatible = "micron,n25q512ax3";
++ reg = <0>;
++ spi-max-frequency = <10000000>; /* input clock */
++ };
++ slic@1 {
++ compatible = "maxim,ds26522";
++ reg = <1>;
++ spi-max-frequency = <2000000>; /* input clock */
++ };
++ slic@2 {
++ compatible = "maxim,ds26522";
++ reg = <2>;
++ spi-max-frequency = <2000000>; /* input clock */
++ };
++ };
++
++ };
++
++ pci0: pcie@ffe240000 {
++ reg = <0xf 0xfe240000 0 0x10000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x20000000
++ 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x20000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci1: pcie@ffe250000 {
++ reg = <0xf 0xfe250000 0 0x10000>;
++ ranges = <0x02000000 0x0 0xe0000000 0xc 0x20000000 0x0 0x10000000
++ 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x20000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci2: pcie@ffe260000 {
++ reg = <0xf 0xfe260000 0 0x1000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x30000000 0 0x10000000
++ 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x20000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ pci3: pcie@ffe270000 {
++ reg = <0xf 0xfe270000 0 0x10000>;
++ ranges = <0x02000000 0 0xe0000000 0xc 0x40000000 0 0x10000000
++ 0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>;
++ pcie@0 {
++ ranges = <0x02000000 0 0xe0000000
++ 0x02000000 0 0xe0000000
++ 0 0x20000000
++
++ 0x01000000 0 0x00000000
++ 0x01000000 0 0x00000000
++ 0 0x00010000>;
++ };
++ };
++
++ fsl,dpaa {
++ compatible = "fsl,t2080-dpaa", "fsl,dpaa";
++ ethernet@0 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac1>;
++ };
++ ethernet@1 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac2>;
++ };
++ ethernet@2 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac3>;
++ };
++ ethernet@3 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac4>;
++ };
++ ethernet@4 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac5>;
++ };
++ ethernet@5 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac6>;
++ };
++ ethernet@8 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac9>;
++ };
++ ethernet@9 {
++ compatible = "fsl,dpa-ethernet";
++ fsl,fman-mac = <&fm1mac10>;
++ };
++ };
++};
+--
+1.9.1
+
diff --git a/recipes-kernel/linux/linux-qoriq_4.1.bbappend b/recipes-kernel/linux/linux-qoriq_4.1.bbappend
index 102703e..8659cb2 100644..100755
--- a/recipes-kernel/linux/linux-qoriq_4.1.bbappend
+++ b/recipes-kernel/linux/linux-qoriq_4.1.bbappend
@@ -1,7 +1,8 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
-SRCREV = "df40dca3df785ec7f1cc7eb04812ab207499d65e"
-SRC_URI = "git://source.sintecs.nl/scalys/linux-fsl-qoriq;protocol=http;branch=scalys file://fit_image_template.its"
+#SRC_URI main is in meta-freescale/src-nxp-npi-1703 layers
+SRC_URI += "file://simc-t10xx_device_tree_addition.patch file://fit_image_template.its"
+SRC_URI += "file://simc-t2081_device_tree_addition.patch"
python __anonymous () {
d.appendVar("PACKAGES", " kernel-fitimage")
@@ -9,9 +10,16 @@ python __anonymous () {
FILES_kernel-fitimage = "/boot/"
-# Appending of simc-t10xx specific kernel configs to the used defconfig.
+# Appending of simc-txxxx specific kernel configs to the used defconfig.
do_configure_prepend() {
- cat ${THISDIR}/../../../meta-scalys-ppc/recipes-kernel/linux/files/defconfig_append_t10xx >> ${KERNEL_DEFCONFIG}
+ if [ "${MACHINE}" = "simc-t2081-tcb-02" ] ; then
+ cat ${THISDIR}/../../../meta-scalys-ppc/recipes-kernel/linux/files/defconfig_append_simc-t2081 >> ${KERNEL_DEFCONFIG}
+ else
+ cat ${THISDIR}/../../../meta-scalys-ppc/recipes-kernel/linux/files/defconfig_append_simc-t10xx >> ${KERNEL_DEFCONFIG}
+ fi
+
+ # uncomment next line to insert virt kernel configs
+ #cat ${THISDIR}/../../../meta-scalys-ppc/recipes-kernel/linux/files/defconfig_append_simc-txxxx-virt >> ${KERNEL_DEFCONFIG}
}
do_kernel_fitimage() {
@@ -23,7 +31,7 @@ do_kernel_fitimage() {
# Assemble the name for the fitImage
ITB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed "s/${MACHINE}/${i}/g" | sed "s/uImage-/fitImage/g"`
- ITB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${i}/g"`
+ #ITB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${i}/g"`
install -d ${DEPLOYDIR}
install -m 0644 ${B}/arch/${ARCH}/boot/${i}.itb ${DEPLOYDIR}/${ITB_NAME}.itb
diff --git a/recipes-perl/xml-xpath/xml-xpath-perl_1.13.bb b/recipes-perl/xml-xpath/xml-xpath-perl_1.13.bb
new file mode 100755
index 0000000..77d1513
--- /dev/null
+++ b/recipes-perl/xml-xpath/xml-xpath-perl_1.13.bb
@@ -0,0 +1,26 @@
+SUMMARY = "XML::XPath - a set of modules for parsing and evaluating XPath statements"
+DESCRIPTION = "\
+This module aims to comply exactly to the XPath specification at \
+http://www.w3.org/TR/xpath and yet allow extensions to be added in the form \
+of functions. \
+Modules such as XSLT and XPointer may need to do this as they support functionality beyond XPath."
+
+HOMEPAGE = "http://search.cpan.org/~msergeant/XML-XPath-${PV}"
+SECTION = "libraries"
+
+# No licence information available,
+LICENSE = "Artistic-1.0|GPLv1+"
+LIC_FILES_CHKSUM = "file://MANIFEST;md5=1f5ebe0566cb05141af2d94bb74bae81"
+
+SRC_URI = "http://search.cpan.org/CPAN/authors/id/M/MS/MSERGEANT/XML-XPath-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "b5919d9220d83982feb6e2321850c5d7"
+SRC_URI[sha256sum] = "2a49c2df34007588397bdf7ae5f122df72a9499df5cbec8fbc6ad4a31a775576"
+
+S = "${WORKDIR}/XML-XPath-${PV}"
+
+inherit cpan ptest
+
+do_install_ptest () {
+ cp -r ${B}/t ${D}${PTEST_PATH}
+} \ No newline at end of file
diff --git a/recipes-support/cluster-glue/cluster-glue_1.0.12.bb b/recipes-support/cluster-glue/cluster-glue_1.0.12.bb
new file mode 100755
index 0000000..5513ed8
--- /dev/null
+++ b/recipes-support/cluster-glue/cluster-glue_1.0.12.bb
@@ -0,0 +1,129 @@
+DESCRIPTION = "Cluster Glue is a set of libraries, tools and utilities suitable for \
+the Heartbeat/Pacemaker cluster stack. In essence, Glue is everything that \
+is not the cluster messaging layer (Heartbeat), nor the cluster resource manager \
+(Pacemaker), nor a Resource Agent."
+
+LICENSE = "GPLv2"
+DEPENDS = "libxml2 libtool glib-2.0 bzip2 util-linux net-snmp"
+
+SRC_URI = " \
+ http://hg.linux-ha.org/glue/archive/glue-${PV}.tar.bz2 \
+ file://0001-remove-doc-generation.patch \
+ file://volatiles \
+ file://tmpfiles \
+ "
+SRC_URI_append_libc-uclibc = " file://kill-stack-protector.patch"
+SRC_URI[md5sum] = "ec620466d6f23affa3b074b72bca7870"
+SRC_URI[sha256sum] = "feba102fa1e24b6be2005089ebe362b82d6567af60005cf371679b1b44ec503f"
+
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
+
+inherit autotools-brokensep useradd
+
+S = "${WORKDIR}/Reusable-Cluster-Components-glue--glue-${PV}"
+#B = "${S}"
+
+EXTRA_OECONF = "--with-daemon-user=hacluster --with-daemon-group=haclient --disable-fatal-warnings --disable-upstart"
+
+CACHED_CONFIGUREVARS="ac_cv_path_XML2CONFIG=0"
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--home-dir=${localstatedir}/lib/heartbeat -g haclient -r hacluster"
+GROUPADD_PARAM_${PN} = "-r haclient"
+
+do_configure_prepend() {
+ ln -sf ${PKG_CONFIG_SYSROOT_DIR}/usr/include/libxml2/libxml ${PKG_CONFIG_SYSROOT_DIR}/usr/include/libxml
+}
+
+do_configure() {
+ ./autogen.sh
+ oe_runconf
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/04_cluster-glue
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ install -m 0644 ${WORKDIR}/tmpfiles ${D}${sysconfdir}/tmpfiles.d/${PN}.conf
+}
+
+pkg_postinst_${PN} () {
+ if [ -z "$D" ]; then
+ if type systemd-tmpfiles >/dev/null; then
+ systemd-tmpfiles --create
+ elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
+ ${sysconfdir}/init.d/populate-volatile.sh update
+ fi
+ fi
+}
+
+PACKAGES += "\
+ ${PN}-plugin-test \
+ ${PN}-plugin-test-dbg \
+ ${PN}-plugin-test-staticdev \
+ ${PN}-plugin-stonith2 \
+ ${PN}-plugin-stonith2-dbg \
+ ${PN}-plugin-stonith2-staticdev \
+ ${PN}-plugin-stonith2-ribcl \
+ ${PN}-plugin-stonith-external \
+ ${PN}-plugin-raexec \
+ ${PN}-plugin-raexec-dbg \
+ ${PN}-plugin-raexec-staticdev \
+ ${PN}-plugin-interfacemgr \
+ ${PN}-plugin-interfacemgr-dbg \
+ ${PN}-plugin-interfacemgr-staticdev \
+ ${PN}-plugin-compress \
+ ${PN}-plugin-compress-staticdev \
+ ${PN}-plugin-compress-dbg \
+ ${PN}-lrmtest \
+ "
+
+FILES_${PN} = " \
+ /etc/ /var ${libdir}/lib*.so.* \
+ /usr/sbin \
+ /usr/share/cluster-glue/*sh \
+ /usr/share/cluster-glue/*pl \
+ /lib64/heartbeat/plugins/InterfaceMgr/ \
+ ${libdir}/heartbeat/transient-test.sh \
+ ${libdir}/heartbeat/logtest \
+ ${libdir}/heartbeat/ipctransientserver \
+ ${libdir}/heartbeat/base64_md5_test \
+ ${libdir}/heartbeat/ipctest \
+ ${libdir}/heartbeat/ipctransientclient \
+ ${libdir}/heartbeat/ha_logd \
+ ${libdir}/heartbeat/lrmd \
+ "
+
+FILES_${PN}-dbg += "${libdir}/heartbeat/.debug/"
+
+FILES_${PN}-plugin-test = "${libdir}/heartbeat/plugins/test/test.so"
+FILES_${PN}-plugin-test-staticdev = "${libdir}/heartbeat/plugins/test/test.*a"
+FILES_${PN}-plugin-test-dbg = "${libdir}/heartbeat/plugins/test/.debug/"
+FILES_${PN}-plugin-stonith2 = " \
+ ${libdir}/stonith/plugins/xen0-ha-dom0-stonith-helper \
+ ${libdir}/stonith/plugins/stonith2/*.so \
+ "
+FILES_${PN}-plugin-stonith2-ribcl = "${libdir}/stonith/plugins/stonith2/ribcl.py"
+
+FILES_${PN}-plugin-stonith2-dbg = "${libdir}/stonith/plugins/stonith2/.debug/"
+FILES_${PN}-plugin-stonith2-staticdev = "${libdir}/stonith/plugins/stonith2/*.*a"
+
+FILES_${PN}-plugin-stonith-external = "${libdir}/stonith/plugins/external/"
+FILES_${PN}-plugin-raexec = "${libdir}/heartbeat/plugins/RAExec/*.so"
+FILES_${PN}-plugin-raexec-staticdev = "${libdir}/heartbeat/plugins/RAExec/*.*a"
+FILES_${PN}-plugin-raexec-dbg = "${libdir}/heartbeat/plugins/RAExec/.debug/"
+
+FILES_${PN}-plugin-interfacemgr = "${libdir}/heartbeat/plugins/InterfaceMgr/generic.so"
+FILES_${PN}-plugin-interfacemgr-staticdev = "${libdir}/heartbeat/plugins/InterfaceMgr/generic.*a"
+FILES_${PN}-plugin-interfacemgr-dbg = "${libdir}/heartbeat/plugins/InterfaceMgr/.debug/"
+
+FILES_${PN}-plugin-compress = "${libdir}/heartbeat/plugins/compress/*.so"
+FILES_${PN}-plugin-compress-staticdev = "${libdir}/heartbeat/plugins/compress/*.*a"
+FILES_${PN}-plugin-compress-dbg = "${libdir}/heartbeat/plugins/compress/.debug/"
+
+FILES_${PN}-lrmtest = "/usr/share/cluster-glue/lrmtest/"
+
+RDEPENDS_${PN} += "perl"
+RDEPENDS_${PN}-plugin-stonith2 += "bash"
+RDEPENDS_${PN}-plugin-stonith-external += "bash python perl"
+RDEPENDS_${PN}-plugin-stonith2-ribcl += "python"
diff --git a/recipes-support/cluster-glue/files/0001-remove-doc-generation.patch b/recipes-support/cluster-glue/files/0001-remove-doc-generation.patch
new file mode 100755
index 0000000..94fe262
--- /dev/null
+++ b/recipes-support/cluster-glue/files/0001-remove-doc-generation.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.am 2015-09-11 12:50:23.216243211 +0200
++++ b/Makefile.am 2014-07-18 13:40:19.000000000 +0200
+@@ -23,7 +23,7 @@ MAINTAINERCLEANFILES = Makefile.in acloc
+ DRF/stamp-h.in libtool.m4 ltdl.m4 libltdl.tar
+
+ SUBDIRS = include $(LIBLTDL_DIR) replace lib lrm logd \
+- hb_report doc config
++ hb_report config
+
+ install-exec-local:
+ $(INSTALL) -d $(DESTDIR)/$(HA_COREDIR)
diff --git a/recipes-support/cluster-glue/files/tmpfiles b/recipes-support/cluster-glue/files/tmpfiles
new file mode 100755
index 0000000..b683b28
--- /dev/null
+++ b/recipes-support/cluster-glue/files/tmpfiles
@@ -0,0 +1,8 @@
+d /var/lib/heartbeat 0755 root root -
+d /var/lib/heartbeat/pengine 0750 hacluster haclient -
+d /var/lib/heartbeat/cores 0755 hacluster haclient -
+d /var/lib/heartbeat/cores/hacluster 0700 hacluster haclient -
+d /var/lib/heartbeat/cores/root 0700 root root -
+d /var/lib/heartbeat/cores/nobody 0700 nobody nogroup -
+d /var/run/heartbeat 0755 root root -
+
diff --git a/recipes-support/cluster-glue/files/volatiles b/recipes-support/cluster-glue/files/volatiles
new file mode 100755
index 0000000..d6f0c87
--- /dev/null
+++ b/recipes-support/cluster-glue/files/volatiles
@@ -0,0 +1,7 @@
+d root root 0755 /var/lib/heartbeat none
+d hacluster haclient 0750 /var/lib/heartbeat/pengine none
+d hacluster haclient 0755 /var/lib/heartbeat/cores none
+d hacluster haclient 0700 /var/lib/heartbeat/cores/hacluster none
+d root root 0700 /var/lib/heartbeat/cores/root none
+d nobody nogroup 0700 /var/lib/heartbeat/cores/nobody none
+d root root 0755 /var/run/heartbeat none
diff --git a/recipes-support/cluster-resource-agents/cluster-resource-agents_3.9.6.bb b/recipes-support/cluster-resource-agents/cluster-resource-agents_3.9.6.bb
new file mode 100755
index 0000000..1fdfedb
--- /dev/null
+++ b/recipes-support/cluster-resource-agents/cluster-resource-agents_3.9.6.bb
@@ -0,0 +1,81 @@
+DESCRIPTION = "OCF resource agents for use by compatible cluster managers"
+LICENSE = "GPLv2"
+DEPENDS = "cluster-glue"
+RDEPENDS_${PN} = "bash"
+
+SRC_URI = " \
+ https://github.com/ClusterLabs/resource-agents/archive/v${PV}.tar.gz \
+ file://remove-doc-generation.patch \
+"
+
+SRC_URI[md5sum] = "6873d5a217aee3026193fb85bfa18a4a"
+SRC_URI[sha256sum] = "39722cdee68ff96d06788f05f325bd21ec2fc59c59d847e5e4b23c6df23bf678"
+
+
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
+
+inherit autotools-brokensep
+
+S = "${WORKDIR}/resource-agents-${PV}"
+
+PACKAGES =+ "ldirectord ldirectord-doc ocft"
+
+FILES_ldirectord = " \
+ ${sbindir}/ldirectord \
+ ${sysconfdir}/ha.d/resource.d/ldirectord \
+ ${sysconfdir}/init.d/ldirectord \
+ ${sysconfdir}/logrotate.d/ldirectord \
+ ${libdir}/ocf/resource.d/heartbeat/ldirectord \
+ "
+FILES_ldirectord-doc = "${mandir}/man8/ldirectord.8*"
+
+# Missing:
+# Authen::Radius
+# Net::LDAP
+# Net::IMAP::Simple::SSL
+# Net::IMAP::Simple
+
+#TODO: libmailtools-perl libsocket6-perl libwww-perl
+RDEPENDS_ldirectord += " \
+ libdbi-perl \
+ libnet-dns-perl \
+ perl \
+ perl-module-getopt-long \
+ perl-module-net-ftp \
+ perl-module-net-smtp \
+ perl-module-pod-usage \
+ perl-module-posix \
+ perl-module-socket \
+ perl-module-strict \
+ perl-module-sys-hostname \
+ perl-module-sys-syslog \
+ perl-module-vars \
+ "
+
+FILES_${PN} += " \
+ /lib/heartbeat/ \
+ /resource.d/heartbeat \
+ /resource.d/redhat \
+ /run/resource-agents \
+ /usr/share/cluster/ \
+ ${libdir}/heartbeat/findif \
+ ${libdir}/heartbeat/ocf-returncodes \
+ ${libdir}/heartbeat/ocf-shellfuncs \
+ ${libdir}/heartbeat/send_arp \
+ ${libdir}/heartbeat/sfex_daemon \
+ ${libdir}/heartbeat/tickle_tcp \
+ ${libdir}/ocf/resource.d/heartbeat/ \
+ ${datadir}/resource-agents/ra-api-1.dtd \
+ "
+
+FILES_ocft += " \
+ ${datadir}/resource-agents/ocft \
+ ${sbindir}/ocft \
+ "
+
+FILES_${PN}-dbg += "\
+ ${libdir}/heartbeat/.debug/ \
+ ${libdir}/ocf/resource.d/heartbeat/.debug/ \
+ ${libdir}/cluster-resource-agents/heartbeat/.debug/ \
+ /resource.d/heartbeat/.debug/ \
+"
diff --git a/recipes-support/cluster-resource-agents/files/remove-doc-generation.patch b/recipes-support/cluster-resource-agents/files/remove-doc-generation.patch
new file mode 100755
index 0000000..134a80c
--- /dev/null
+++ b/recipes-support/cluster-resource-agents/files/remove-doc-generation.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.am 2015-01-30 21:36:47.000000000 +0100
++++ b/Makefile.am 2015-09-13 12:41:15.298682231 +0200
+@@ -37,7 +37,7 @@ RGMANAGER = with
+ endif
+
+ if BUILD_LINUX_HA
+-SUBDIRS += include heartbeat tools ldirectord doc
++SUBDIRS += include heartbeat tools ldirectord
+ LINUX_HA = without
+ else
+ LINUX_HA = with
diff --git a/recipes-support/heartbeat/files/0001-remove-runtime-configure-checks.patch b/recipes-support/heartbeat/files/0001-remove-runtime-configure-checks.patch
new file mode 100755
index 0000000..1c7928d
--- /dev/null
+++ b/recipes-support/heartbeat/files/0001-remove-runtime-configure-checks.patch
@@ -0,0 +1,27 @@
+--- a/configure.ac 2015-02-09 17:04:41.000000000 +0100
++++ b/configure.ac 2015-09-11 13:33:03.765388294 +0200
+@@ -2022,23 +2022,8 @@ AC_CHECK_HEADERS(bzlib.h, , [bz2_install
+ AC_CHECK_LIB(bz2, BZ2_bzBuffToBuffCompress , , [bz2_installed="no"])
+ AM_CONDITIONAL(BUILD_BZ2_COMPRESS_MODULE, test "x${bz2_installed}" = "xyes")
+
+-dnl check if there are getpid() inconsistency
+-dnl Note: reduce LIBS; in particular, ltdl can cause confusion.
+-dnl Possibly better: move 'LIBS="$LIBS -lltdl"' from above to beyond here.
+-dnl
+-AC_MSG_CHECKING(for getpid() consistency in multi-process/threads program)
+-ac_save_LIBS=$LIBS
+-LIBS="-lpthread"
+-AC_TRY_RUN(`cat $srcdir/config/pidtest.c`,
+-AC_MSG_RESULT(ok),
+-[AC_MSG_RESULT(fail); AC_DEFINE(GETPID_INCONSISTENT, 1 , [pid inconsistent])],)
+-LIBS=$ac_save_LIBS
+
+-dnl check byte order
+-AC_MSG_CHECKING(for byteorder)
+-AC_TRY_RUN(`cat $srcdir/config/byteorder_test.c`,
+-[AC_MSG_RESULT(little-endian); AC_DEFINE(CONFIG_LITTLE_ENDIAN, 1, [little-endian])],
+-[AC_MSG_RESULT(big-endian); AC_DEFINE(CONFIG_BIG_ENDIAN, 1, [big-endian])],)
++AC_DEFINE(CONFIG_BIG_ENDIAN, 1, [big-endian])
+
+
+ dnl
diff --git a/recipes-support/heartbeat/heartbeat_3.0.6.bb b/recipes-support/heartbeat/heartbeat_3.0.6.bb
new file mode 100755
index 0000000..14b6155
--- /dev/null
+++ b/recipes-support/heartbeat/heartbeat_3.0.6.bb
@@ -0,0 +1,126 @@
+SUMMARY = "Messaging and membership subsystem for High-Availability Linux"
+DESCRIPTION = "heartbeat is a basic high-availability subsystem for Linux-HA. \
+It will run scripts at initialization, and when machines go up or down. \
+This version will also perform IP address takeover using gratuitous ARPs. \
+ \
+Heartbeat contains a cluster membership layer, fencing, and local and \
+clusterwide resource management functionality. \
+ \
+When used with Pacemaker, it supports n-node clusters with significant \
+capabilities for managing resources and dependencies. \
+ \
+In addition it continues to support the older release 1 style of \
+2-node clustering. \
+ \
+It implements the following kinds of heartbeats: \
+- Serial ports \
+- UDP/IP multicast (ethernet, etc) \
+- UDP/IP broadcast (ethernet, etc) \
+- UDP/IP heartbeats \
+- ping heartbeats (for routers, switches, etc.) \
+(to be used for breaking ties in 2-node systems) \
+"
+HOMEPAGE = "http://linux-ha.org/"
+SECTION = "System Environment/Daemons"
+LICENSE = "GPLv2 & LGPLv2+"
+LIC_FILES_CHKSUM = " \
+ file://doc/COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b \
+ file://doc/COPYING.LGPL;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
+"
+SRC_URI = " \
+ http://hg.linux-ha.org/heartbeat-STABLE_3_0/archive/958e11be8686.tar.bz2 \
+ file://0001-remove-runtime-configure-checks.patch \
+"
+SRC_URI[md5sum] = "101c8f507b1f407468d5ef15ae6719da"
+SRC_URI[sha256sum] = "851d2add2c129fef9fede764fec80229e1f6e7295e0e979950d10258648b462c"
+
+S = "${WORKDIR}/Heartbeat-3-0-958e11be8686/"
+
+DEPENDS = "corosync gnutls"
+RDEPENDS_${PN} += "python cluster-glue-plugin-interfacemgr cluster-resource-agents"
+
+inherit autotools-brokensep pkgconfig useradd
+EXTRA_OECONF = " \
+ AM_CPPFLAGS=-I${STAGING_INCDIR}/usr/include/heartbeat/ \
+ STAGING_DIR_TARGET=${STAGING_DIR_TARGET} \
+ --disable-fatal-warnings \
+ --disable-static \
+"
+SOURCE1 = "heartbeat/init.d/heartbeat"
+CFLAGS_append += "-DGLIB_COMPILATION"
+
+do_configure() {
+ ./bootstrap
+ isbigendian=`echo ${TUNE_FEATURES} | grep bigendian` || true
+ if [ $isbigendian"x" = "x" ] ; then
+ CPU_ENDIAN="little"
+ else
+ CPU_ENDIAN="big"
+ fi
+ cp -a ./configure ./configure.orig
+ if [ ${CPU_ENDIAN} == "little" ]; then
+ sed -e "s@CROSS_ENDIAN_INFO@\$as_echo \"#define CONFIG_LITTLE_ENDIAN 1\" >>confdefs.h@g" \
+ -e "s@CROSS_LIBDIR@${_LIBDIR}@g" \
+ ./configure.orig > ./configure
+ else
+ sed -e "s@CROSS_ENDIAN_INFO@\$as_echo \"#define CONFIG_BIG_ENDIAN 1\" >>confdefs.h@g" \
+ -e "s@CROSS_LIBDIR@${_LIBDIR}@g" \
+ ./configure.orig > ./configure
+ fi
+ CPPFLAGS="${CPPFLAGS} -I${STAGING_INCDIR}/heartbeat/ -I${STAGING_INCDIR}/clplumbing/" oe_runconf ${EXTRA_OECONF}
+}
+do_compile_prepend() {
+ sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${HOST_PREFIX}libtool
+ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${HOST_PREFIX}libtool
+ make clean
+}
+
+do_install() {
+ sed -i -e 's:/etc/rc.d/init.d/functions:/etc/init.d/functions:g' \
+ ${S}/${SOURCE1}
+ oe_runmake DESTDIR=${D} install
+
+ # cleanup
+ #rm -rf ${D}/heartbeat
+ [ -d ${D}/usr/man ] && rm -rf ${D}/usr/man
+ [ -d ${D}/usr/share/libtool ] && rm -rf ${D}/usr/share/libtool
+ find ${D} -type f -name *.la -exec rm -f {} ';'
+ rm -rf ${D}/usr/share/heartbeat/cts
+ rm -rf ${D}/usr/share/doc/packages
+ rm -rf ${D}/usr/share/heartbeat/ha_propagate
+ install -m 0755 ${S}/doc/ha.cf ${D}/etc/ha.d/ha.cf
+ install -m 0600 ${S}/doc/authkeys ${D}/etc/ha.d/authkeys
+
+ sed -i -e 's,/usr/lib/,${libdir}/,' ${B}heartbeat/init.d/heartbeat.service
+ sed -i -e 's,/usr/lib/,${libdir}/,' ${B}heartbeat/init.d/heartbeat
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}${libexecdir}
+ install -m 0755 ${S}/${SOURCE1} ${D}${libexecdir}/heartbeat.init
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/heartbeat.service ${D}${systemd_unitdir}/system/
+ fi
+}
+
+#inherit systemd
+#SYSTEMD_SERVICE_${PN} = "heartbeat.service"
+
+USERADD_PACKAGES = "${PN}"
+GROUPADD_PARAM_${PN} = "-r haclient"
+USERADD_PARAM_${PN} = " \
+ -r -g haclient -d /var/lib/heartbeat/cores/hacluster -M \
+ -s /sbin/nologin -c \"heartbeat user\" hacluster \
+"
+
+FILES_${PN} += " \
+ /lib/heartbeat/ \
+ /run/heartbeat \
+"
+
+FILES_${PN}-dbg += " \
+ ${libdir}/heartbeat/plugins/quorum/.debug \
+ ${libdir}/heartbeat/plugins/HBauth/.debug \
+ ${libdir}/heartbeat/plugins/tiebreaker/.debug \
+ ${libdir}/heartbeat/plugins/HBcomm/.debug \
+ ${libdir}/heartbeat/plugins/HBcompress/.debug \
+"
+
diff --git a/recipes-support/lm_sensors/files/simc-t1040-cb01/fancontrol b/recipes-support/lm_sensors/files/simc-t1040-cb01/fancontrol
new file mode 100755
index 0000000..3e890f4
--- /dev/null
+++ b/recipes-support/lm_sensors/files/simc-t1040-cb01/fancontrol
@@ -0,0 +1,11 @@
+# Fancontrol configuration for simc-t1040 with coconut carrier
+# Fan 2 and 3 are controlled by CPU core temperature
+INTERVAL=5
+DEVPATH=hwmon0=devices/ffe000000.soc/ffe118000.i2c/i2c-0/0-002e hwmon1=devices/ffe000000.soc/ffe118000.i2c/i2c-0/0-004c
+DEVNAME=hwmon0=adt7476 hwmon1=adt7461
+FCTEMPS=hwmon0/device/pwm2=hwmon1/device/temp2_input hwmon0/device/pwm3=hwmon1/device/temp2_input
+FCFANS=hwmon0/device/pwm2=hwmon0/device/fan2_input hwmon0/device/pwm3=hwmon0/device/fan3_input
+MINTEMP=hwmon0/device/pwm2=30 hwmon0/device/pwm3=30
+MAXTEMP=hwmon0/device/pwm2=85 hwmon0/device/pwm3=85
+MINSTART=hwmon0/device/pwm2=80 hwmon0/device/pwm3=80
+MINSTOP=hwmon0/device/pwm2=40 hwmon0/device/pwm3=40
diff --git a/recipes-support/lm_sensors/files/simc-t1040-cb01/sensors.conf b/recipes-support/lm_sensors/files/simc-t1040-cb01/sensors.conf
new file mode 100755
index 0000000..c34124c
--- /dev/null
+++ b/recipes-support/lm_sensors/files/simc-t1040-cb01/sensors.conf
@@ -0,0 +1,25 @@
+bus "i2c-0" "MPC adapter at 0xffe118000"
+
+ chip "adt7476-i2c-0-2e"
+ ignore in0
+ ignore in1
+ set in2_min 3.3 * 0.90
+ set in2_max 3.3 * 1.10
+ ignore in3
+ set in4_min 12.0 * 0.90
+ set in4_max 12.0 * 1.10
+ ignore cpu0_vid
+
+ label fan1 "SATA disks"
+ label fan2 "Front cage 1"
+ label fan3 "Front cage 2"
+ label temp1 "Carrier Temperature"
+ label temp2 "PCIe"
+ label temp3 "SFP+ Modules"
+
+chip "adt7461-i2c-0-4c"
+ label temp1 "Module"
+ label temp2 "CPU core"
+ set temp1_max 115
+ set temp1_min -5.0
+ set temp1_crit 125
diff --git a/recipes-support/lm_sensors/lmsensors-config_1.0.bbappend b/recipes-support/lm_sensors/lmsensors-config_1.0.bbappend
new file mode 100755
index 0000000..7ad96d5
--- /dev/null
+++ b/recipes-support/lm_sensors/lmsensors-config_1.0.bbappend
@@ -0,0 +1 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:" \ No newline at end of file
diff --git a/recipes-support/monit/files/init b/recipes-support/monit/files/init
new file mode 100755
index 0000000..325a552
--- /dev/null
+++ b/recipes-support/monit/files/init
@@ -0,0 +1,42 @@
+#! /bin/sh
+#
+# This is an init script for openembedded
+# Copy it to /etc/init.d/monit and type
+# > update-rc.d monit defaults 99
+#
+monit=/usr/bin/monit
+pidfile=/var/run/monit.pid
+monit_args="-c /etc/monitrc"
+
+test -x "$monit" || exit 0
+
+case "$1" in
+ start)
+ echo -n "Starting Monit"
+ start-stop-daemon --start --quiet --exec $monit -- $monit_args
+ RETVAL=$?
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping Monit"
+ start-stop-daemon --stop --quiet --pidfile $pidfile
+ RETVAL=$?
+ echo "."
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ RETVAL=$?
+ ;;
+ status)
+ $monit $monit_args status
+ RETVAL=$?
+ echo "."
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit 1
+esac
+
+exit $RETVAL
+
diff --git a/recipes-support/monit/monit_5.14.bb b/recipes-support/monit/monit_5.14.bb
new file mode 100755
index 0000000..bd4b6c7
--- /dev/null
+++ b/recipes-support/monit/monit_5.14.bb
@@ -0,0 +1,40 @@
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ea116a7defaf0e93b3bb73b2a34a3f51"
+DEPENDS = "openssl libpam"
+
+SRC_URI = "\
+ http://mmonit.com/monit/dist/monit-${PV}.tar.gz \
+ file://init \
+"
+
+SRC_URI[md5sum] = "1b3ae1eb08a0914402a8764e5689c1c5"
+SRC_URI[sha256sum] = "d0424c3ee8ed43d670ba039184a972ac9f3ad6f45b0806ec17c23820996256c6"
+
+INITSCRIPT_NAME = "monit"
+INITSCRIPT_PARAMS = "defaults 99"
+
+inherit autotools update-rc.d
+
+EXTRA_OECONF = "\
+ libmonit_cv_setjmp_available=no \
+ libmonit_cv_vsnprintf_c99_conformant=no \
+ --with-ssl-lib-dir=${STAGING_LIBDIR} \
+ --with-ssl-incl-dir=${STAGING_INCDIR} \
+"
+
+B = "${WORKDIR}/${PN}-${PV}"
+
+do_configure_prepend() {
+ autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d/
+ install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/monit
+ sed -i 's:# set daemon 120:set daemon 120:' ${S}/monitrc
+ sed -i 's:include /etc/monit.d/:include /${sysconfdir}/monit.d/:' ${S}/monitrc
+ install -m 600 ${S}/monitrc ${D}${sysconfdir}/monitrc
+ install -m 700 -d ${D}${sysconfdir}/monit.d/
+}
+
+CONFFILES_${PN} += "${sysconfdir}/monitrc"
diff --git a/recipes-support/mysql/files/fix-cmake-module-path.patch b/recipes-support/mysql/files/fix-cmake-module-path.patch
new file mode 100755
index 0000000..f4c7961
--- /dev/null
+++ b/recipes-support/mysql/files/fix-cmake-module-path.patch
@@ -0,0 +1,20 @@
+--- a/CMakeLists.txt.org 2015-09-02 08:24:51.553482621 +0200
++++ b/CMakeLists.txt 2015-09-02 08:25:55.125811412 +0200
+@@ -40,8 +40,6 @@ MESSAGE(STATUS "Running cmake version ${
+ # Will set GIT_EXECUTABLE and GIT_FOUND
+ FIND_PACKAGE(Git)
+
+-SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
+-
+ # First, decide about build type (debug or release)
+ # If custom compiler flags are set or cmake is invoked with -DCMAKE_BUILD_TYPE,
+ # respect user wishes and do not (re)define CMAKE_BUILD_TYPE. If WITH_DEBUG{_FULL}
+@@ -110,6 +108,8 @@ ELSE()
+ ENDIF()
+ PROJECT(${MYSQL_PROJECT_NAME})
+
++SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
++
+ # Maintainer mode is default on only for Linux debug builds using GCC/G++
+ IF(CMAKE_BUILD_TYPE MATCHES "Debug" OR WITH_DEBUG)
+ IF(CMAKE_SYSTEM_NAME MATCHES "Linux" AND
diff --git a/recipes-support/mysql/mysql-native_5.5.44.bb b/recipes-support/mysql/mysql-native_5.5.44.bb
new file mode 100755
index 0000000..8165799
--- /dev/null
+++ b/recipes-support/mysql/mysql-native_5.5.44.bb
@@ -0,0 +1,18 @@
+require mysql.inc
+inherit native
+
+PROVIDES += "mysql-native"
+DEPENDS = "ncurses-native zlib-native"
+
+RDEPENDS_${PN} = ""
+PACKAGES = ""
+EXTRA_OEMAKE = ""
+
+do_install() {
+ oe_runmake 'DESTDIR=${D}' install
+
+ install -d ${D}${bindir}
+ install -m 0755 sql/gen_lex_hash ${D}${bindir}/
+ install -m 0755 extra/comp_err ${D}${bindir}/
+ install -m 0755 scripts/comp_sql ${D}${bindir}/
+}
diff --git a/recipes-support/mysql/mysql.inc b/recipes-support/mysql/mysql.inc
new file mode 100755
index 0000000..c9e3853
--- /dev/null
+++ b/recipes-support/mysql/mysql.inc
@@ -0,0 +1,150 @@
+SUMMARY = "The world's most popular open source database"
+HOMEPAGE = "http://www.mysql.com"
+SECTION = "libs"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+PROVIDES = "${PN} ${PN}-client ${PN}-server"
+# We need certain native tools compiled during the make process, which are not generated for
+# the native system during cross compilation. Therefore we also compile the entire package
+# for the native system
+DEPENDS += "mysql-native"
+
+RDEPENDS_${PN} = "zlib ncurses-libtinfo perl openssl gmock bash libaio"
+
+
+SRC_URI = "\
+ http://downloads.mysql.com/archives/get/file/mysql-5.5.44.tar.gz \
+ file://fix-cmake-module-path.patch \
+"
+
+SRC_URI[md5sum] = "b897ffd67fab9c981c448fdbe00e36bf"
+SRC_URI[sha256sum] = "85f05b257db39e63c82ff4b5ce4e0c6d2b07560b5fc1646d47d7ae48eab3e5de"
+
+S = "${WORKDIR}/mysql-${PV}"
+
+inherit useradd cmake
+
+EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'"
+
+EXTRA_OECMAKE += "\
+ -DSTACK_DIRECTION=-1 \
+ -DHAVE_LLVM_LIBCPP=OFF \
+ \
+ -DWITH_SSL=system \
+ -DWITH_ARCHIVE_STORAGE_ENGINE=TRUE \
+ -DWITH_BLACKHOLE_STORAGE_ENGINE=TRUE \
+ -DWITH_FEDERATED_STORAGE_ENGINE=TRUE \
+ \
+ -DINSTALL_LAYOUT=RPM \
+ -DINSTALL_DOCDIR:PATH=${datadir}/doc/${BPN} \
+ -DINSTALL_LIBDIR:PATH=${baselib} \
+ -DINSTALL_PLUGINDIR:PATH=${baselib}/plugin \
+ -DINSTALL_SYSCONFDIR:PATH=${sysconfdir} \
+ -DMYSQL_DATADIR:PATH=/var/mysql \
+ \
+ -DCAT_EXECUTABLE=`which cat` \
+ -DAWK_EXECUTABLE=`which awk` \
+ -DCMAKE_AR:FILEPATH="${AR}" \
+"
+
+do_generate_toolchain_file_append_class-native () {
+ # If these are set cmake will assume we're cross-compiling, which will
+ # result in certain things we want being disabled
+ sed -i "/set( CMAKE_SYSTEM_NAME/d" ${WORKDIR}/toolchain.cmake
+ sed -i "/set( CMAKE_SYSTEM_PROCESSOR/d" ${WORKDIR}/toolchain.cmake
+}
+
+do_compile_prepend_class-target () {
+ # These need to be in-tree or make will think they need to be built,
+ # and since we're cross-compiling that is disabled
+ cp ${STAGING_BINDIR_NATIVE}/comp_err ${S}/extra
+ cp ${STAGING_BINDIR_NATIVE}/comp_sql ${S}/scripts
+}
+
+do_install() {
+ oe_runmake 'DESTDIR=${D}' install
+
+ mkdir ${D}/etc/
+ mkdir ${D}/etc/mysql/
+ mkdir ${D}/etc/init.d/
+ install -m 500 -o mysql -g mysql ${B}/support-files/my-huge.cnf ${D}/etc/my.cnf
+ install -m 700 -o mysql -g mysql ${B}/support-files/mysql.server ${D}/etc/init.d/mysql
+
+# install -d ${D}/${sysconfdir}/init.d
+# install -m 0644 ${WORKDIR}/my.cnf ${D}/${sysconfdir}/
+ # mv ${D}/${sysconfdir}/init.d/mysql ${D}/${sysconfdir}/init.d/mysqld
+
+# install -d ${D}${systemd_unitdir}/system
+# install -m 0644 ${WORKDIR}/mysqld.service ${D}${systemd_unitdir}/system
+# sed -i -e 's,@BINDIR@,${bindir},g' -e 's,@PREFIX@,${prefix},g' ${D}${systemd_unitdir}/system/mysqld.service
+
+# if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+# install -d ${D}${sysconfdir}/tmpfiles.d
+# echo "f /var/log/mysqld.err 0640 mysql mysql -" \
+# > ${D}${sysconfdir}/tmpfiles.d/99-mysqld.conf
+# fi
+}
+
+# useradd setting for mysql user
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "-g mysql --shell /bin/false mysql"
+GROUPADD_PARAM_${PN} = "mysql"
+
+# This is run on the first boot of the system, and configures mysql on target
+pkg_postinst_${PN} () {
+
+ # Check if this is the first time we're booting
+ if [ "x$D" != "x" ]; then
+ exit 1
+ fi
+
+ exec < /dev/console > /dev/console
+
+ echo "Configuring MySQL"
+
+ #Install the database
+ mkdir /var/lib/mysql
+ chown mysql:mysql /var/lib/mysql
+
+ mysql_install_db --basedir=${prefix} --user=mysql
+
+ # Generate a CA key and certificate with SHA1 digest
+ openssl genrsa 2048 > /etc/mysql/ca-key.pem
+ openssl req -sha1 -new -x509 -nodes -days 3650 -key ca-key.pem -subj "/C=US/ST=someState/L=Springfield/O=Anoperation/CN=www.awebsite.com" > /etc/mysql/ca-cert.pem
+
+ # Create server key and certficate with SHA1 digest, sign it and convert
+ # the RSA key from PKCS #8 (OpenSSL 1.0 and newer) to the old PKCS #1 format
+ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout server-key.pem \
+ -subj "/C=US/ST=someState/L=Springfield/O=Anoperation/CN=www.awebsite.com" > /etc/mysql/server-req.pem
+ openssl x509 -sha1 -req -in server-req.pem -days 730 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > /etc/mysql/server-cert.pem
+ openssl rsa -in server-key.pem -out /etc/mysql/server-key.pem
+
+ # Create client key and certificate with SHA digest, sign it and convert
+ # the RSA key from PKCS #8 (OpenSSL 1.0 and newer) to the old PKCS #1 format
+ openssl req -sha1 -newkey rsa:2048 -days 730 -nodes -keyout client-key.pem \
+ -subj "/C=US/ST=someState/L=Springfield/O=Anoperation/CN=www.awebsite.com" > /etc/mysql/client-req.pem
+ openssl x509 -sha1 -req -in client-req.pem -days 730 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 > /etc/mysql/client-cert.pem
+}
+
+
+FILES_${PN} = "\
+ /etc/my.cnf \
+ /etc/init.d/mysql \
+ /etc/mysql \
+ /usr/mysql-test \
+ /usr/share/ \
+ /usr/bin \
+ /usr/sbin \
+ /usr/include \
+ /usr/sql-bench \
+ /usr/lib64 \
+ /usr/include/mysql \
+"
+
+FILES_${PN}-dbg += "\
+ usr/lib/mysql/.debug/ \
+ usr/bin/.debug \
+ usr/lib64/plugin/.debug \
+ /usr/share/mysql-test/lib/My/SafeProcess/.debug \
+"
diff --git a/recipes-support/mysql/mysql_5.5.44.bb b/recipes-support/mysql/mysql_5.5.44.bb
new file mode 100755
index 0000000..6581aa5
--- /dev/null
+++ b/recipes-support/mysql/mysql_5.5.44.bb
@@ -0,0 +1 @@
+require mysql.inc
diff --git a/recipes-support/thrift/files/0001-remove-malloc-realloc-from-configure.ac.patch b/recipes-support/thrift/files/0001-remove-malloc-realloc-from-configure.ac.patch
new file mode 100755
index 0000000..2ae2c4e
--- /dev/null
+++ b/recipes-support/thrift/files/0001-remove-malloc-realloc-from-configure.ac.patch
@@ -0,0 +1,13 @@
+diff -rupN thrift-0.9.2.org/configure.ac thrift-0.9.2/configure.ac
+--- thrift-0.9.2.org/configure.ac 2014-11-05 03:11:53.000000000 +0100
++++ thrift-0.9.2/configure.ac 2014-11-18 17:08:33.519372284 +0100
+@@ -521,9 +521,7 @@ AC_CHECK_DECL([AI_ADDRCONFIG], [],
+
+ AC_FUNC_ALLOCA
+ AC_FUNC_FORK
+-AC_FUNC_MALLOC
+ AC_FUNC_MEMCMP
+-AC_FUNC_REALLOC
+ AC_FUNC_SELECT_ARGTYPES
+ AC_FUNC_STAT
+ AC_FUNC_STRERROR_R
diff --git a/recipes-support/thrift/thrift_0.9.2.bb b/recipes-support/thrift/thrift_0.9.2.bb
new file mode 100755
index 0000000..db16d98
--- /dev/null
+++ b/recipes-support/thrift/thrift_0.9.2.bb
@@ -0,0 +1,76 @@
+# The Apache Thrift software framework, for scalable cross-language services development,
+# combines a software stack with a code generation engine to build services that work
+# efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell,
+# C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
+
+HOMEPAGE = "http://thrift.apache.org/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b6b281b97b28a39ba00bd2bc2df39244"
+
+EXTRANATIVEPATH += "chrpath-native"
+
+SRC_URI = " \
+ https://github.com/apache/thrift/archive/0.9.2.zip \
+ file://0001-remove-malloc-realloc-from-configure.ac.patch;patch=1 \
+"
+SRC_URI[md5sum] = "4733cbae15260f04db32640ee1156786"
+SRC_URI[sha256sum] = "8f2dc372e3fd764772fdc35c8b67729e4611f45f0f16304b9864294d36436183"
+
+PACKAGES = "${PN} ${PN}-dbg ${PN}-dev ${PN}-staticdev"
+
+FILES_${PN} = " \
+ /usr/lib/libthrift.la \
+ /usr/lib/libthrift-0.9.2.so \
+ /usr/lib/libthrift_c_glib.so.0 \
+ /usr/lib/libthrift_c_glib.so.0.0.0 \
+ /usr/lib/libthrift_c_glib.la \
+"
+
+FILES_${PN}-dev = " \
+ /usr/bin/thrift \
+ /usr/include/thrift/* \
+ /usr/lib/pkgconfig/* \
+ /usr/lib/libthrift.so \
+ /usr/lib/libthrift_c_glib.so \
+"
+
+FILES_${PN}-staticdev = " \
+ /usr/lib/libthrift.a \
+ /usr/lib/libthrift_c_glib.a \
+"
+
+
+S = "${WORKDIR}/thrift-${PV}"
+
+SUMMARY = "a remote procedure call (RPC) framework developed at Facebook for \"scalable cross-language services development\"."
+SECTION = "libs"
+DEPENDS = "boost openssl chrpath-replacement-native glibc"
+do_configure() {
+ ./bootstrap.sh
+ ./configure \
+ --with-sysroot=${PKG_CONFIG_SYSROOT_DIR} \
+ --prefix=/usr \
+ --host=arm-poky-linux-gnueabi \
+ --disable-tests \
+ --disable-tutorial \
+ --enable-boost=yes --with-cpp \
+ --without-libevent --without-zlib --without-python --without-java \
+ --without-qt4 --without-csharp --without-erlang --without-perl --without-php \
+ --without-php_extension --without-ruby --without-haskell --without-go \
+ --without-d
+}
+
+do_install() {
+
+ DESTDIR=${D} make install
+
+ # Fix RPATH in libraries (which contain yocto build path)
+ chrpath -d ${D}${libdir}/libthrift.so
+ chrpath -d ${D}${bindir}/thrift
+
+ # Fix symlinks created by make install
+ cd ${D}${libdir}
+ rm -f libthrift.so libthrift_c_glib.so
+ ln -s libthrift-0.9.2.so libthrift.so
+ ln -s libthrift_c_glib.so.0.0.0 libthrift_c_glib.so
+}