From 62fa475fdeb422181b3ccda29cd74629649a27cd Mon Sep 17 00:00:00 2001 From: vojo Date: Fri, 15 Sep 2017 15:41:52 +0200 Subject: added simc-t2081 machine support and virtualization image diff --git a/conf/layer.conf b/conf/layer.conf old mode 100644 new mode 100755 diff --git a/conf/machine/qt1040-1gb.conf b/conf/machine/qt1040-1gb.conf old mode 100644 new mode 100755 index 4e71561..25aac12 --- 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 old mode 100644 new mode 100755 index bb4e523..b1bef91 --- 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 old mode 100644 new mode 100755 index 9eef5d3..5433b7e --- 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 old mode 100644 new mode 100755 index a0ec686..4568955 --- 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 +#include +#include +#include +#include +#include +#include +#include + +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] \n" \ + "Write memory: memtool [-8 | -16 | -32] =\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 +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +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 old mode 100644 new mode 100755 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_simc-t10xx b/recipes-kernel/linux/files/defconfig_append_simc-t10xx new file mode 100755 index 0000000..5bcf08c --- /dev/null +++ b/recipes-kernel/linux/files/defconfig_append_simc-t10xx @@ -0,0 +1,105 @@ +# +# simc-t10xx additional configs (TODO: clean-up) +# +CONFIG_FSL_ERRATUM_A_005337=y +CONFIG_PPC_OF=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_RELAY=y +CONFIG_USE_GENERIC_SMP_HELPERS=y +CONFIG_POWERNV_MSI=y +CONFIG_CPU_FREQ_TABLE=y +CONFIG_QORIQ_CPUFREQ=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=yl +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FTL=y +CONFIG_MTD_SPI_NOR_BASE=y +CONFIG_PROC_DEVICETREE=y +CONFIG_FSL_USDPAA=y +CONFIG_EEPROM_AT24=y +CONFIG_SCSI_MULTI_LUN=y +CONFIG_FSL_FMAN=y +CONFIG_FSL_DPAA_ETH=y +CONFIG_IGB=y +CONFIG_IGB_HWMON=y +CONFIG_MDIO_BUS_MUX_GPIO=y +CONFIG_ATH_COMMON=y +CONFIG_ATH_CARDS=y +CONFIG_ATH9K_HW=y +CONFIG_ATH9K_COMMON=y +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=y +CONFIG_ATH9K_PCI=y +CONFIG_ATH9K_AHB=y +CONFIG_ATH9K_DEBUGFS=y +CONFIG_ATH9K_LEGACY_RATE_CONTROL=y +CONFIG_RTL_CARDS=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_DEVPORT=y +CONFIG_I2C_ALGOBIT=y +CONFIG_GPIOLIB=y +CONFIG_HWMON=y +CONFIG_HWMON_VID=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_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_SSB_POSSIBLE=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_VIDEO_OUTPUT_CONTROL=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_NET_VENDOR_SILICOM=y +CONFIG_FSL_DPA=y +CONFIG_FSL_DPA_CHECKING=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_FSL_PME2_PDSRSIZE=131072 +CONFIG_FSL_PME2_SRESIZE=327680 +CONFIG_FSL_RMAN_UIO=y +CONFIG_FSL_SLEEP_FSM=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y +CONFIG_CLK_QORIQ=y +CONFIG_EXT4_FS=y +CONFIG_JBD=y +CONFIG_JBD2=y +CONFIG_FS_MBCACHE=y +CONFIG_HAS_IOPORT=y +CONFIG_LIB_RHEAP=y +CONFIG_AVERAGE=y +CONFIG_FONT_SUPPORT=y +CONFIG_FONTS=y +CONFIG_FONT_8x16=y +CONFIG_FONT_AUTOSELECT=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +CONFIG_DEBUG_INFO=y +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 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/defconfig_append_t10xx b/recipes-kernel/linux/files/defconfig_append_t10xx deleted file mode 100644 index 8393260..0000000 --- a/recipes-kernel/linux/files/defconfig_append_t10xx +++ /dev/null @@ -1,105 +0,0 @@ -# -# simc-t10xx additional configs (TODO: clean-up) -# -CONFIG_FSL_ERRATUM_A_005337=y -CONFIG_PPC_OF=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_RELAY=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_POWERNV_MSI=y -CONFIG_CPU_FREQ_TABLE=y -CONFIG_QORIQ_CPUFREQ=y -CONFIG_CROSS_MEMORY_ATTACH=y -CONFIG_COMPAT_NETLINK_MESSAGES=y -CONFIG_WEXT_CORE=y -CONFIG_WEXT_PROC=yl -CONFIG_FW_LOADER_USER_HELPER=y -CONFIG_FTL=y -CONFIG_MTD_SPI_NOR_BASE=y -CONFIG_PROC_DEVICETREE=y -CONFIG_FSL_USDPAA=y -CONFIG_EEPROM_AT24=y -CONFIG_SCSI_MULTI_LUN=y -CONFIG_FSL_FMAN=y -CONFIG_FSL_DPAA_ETH=y -CONFIG_IGB=y -CONFIG_IGB_HWMON=y -CONFIG_MDIO_BUS_MUX_GPIO=y -CONFIG_ATH_COMMON=y -CONFIG_ATH_CARDS=y -CONFIG_ATH9K_HW=y -CONFIG_ATH9K_COMMON=y -CONFIG_ATH9K_BTCOEX_SUPPORT=y -CONFIG_ATH9K=y -CONFIG_ATH9K_PCI=y -CONFIG_ATH9K_AHB=y -CONFIG_ATH9K_DEBUGFS=y -CONFIG_ATH9K_LEGACY_RATE_CONTROL=y -CONFIG_RTL_CARDS=y -CONFIG_VT_HW_CONSOLE_BINDING=y -CONFIG_DEVPORT=y -CONFIG_I2C_ALGOBIT=y -CONFIG_GPIOLIB=y -CONFIG_HWMON=y -CONFIG_HWMON_VID=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_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_SSB_POSSIBLE=y -CONFIG_BCMA_POSSIBLE=y -CONFIG_VIDEO_OUTPUT_CONTROL=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_NET_VENDOR_SILICOM=y -CONFIG_FSL_DPA=y -CONFIG_FSL_DPA_CHECKING=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_FSL_PME2_PDSRSIZE=131072 -CONFIG_FSL_PME2_SRESIZE=327680 -CONFIG_FSL_RMAN_UIO=y -CONFIG_FSL_SLEEP_FSM=y -CONFIG_CLKDEV_LOOKUP=y -CONFIG_HAVE_CLK_PREPARE=y -CONFIG_COMMON_CLK=y -CONFIG_CLK_QORIQ=y -CONFIG_EXT4_FS=y -CONFIG_JBD=y -CONFIG_JBD2=y -CONFIG_FS_MBCACHE=y -CONFIG_HAS_IOPORT=y -CONFIG_LIB_RHEAP=y -CONFIG_AVERAGE=y -CONFIG_FONT_SUPPORT=y -CONFIG_FONTS=y -CONFIG_FONT_8x16=y -CONFIG_FONT_AUTOSELECT=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -CONFIG_DEBUG_INFO=y -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) diff --git a/recipes-kernel/linux/files/fit_image_template.its b/recipes-kernel/linux/files/fit_image_template.its old mode 100644 new mode 100755 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 +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 +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 old mode 100644 new mode 100755 index 102703e..8659cb2 --- 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 +} -- cgit v0.10.2