diff --git a/doc/components.txt b/doc/components.txt index 7b1e7325b..710470237 100644 --- a/doc/components.txt +++ b/doc/components.txt @@ -584,13 +584,6 @@ Runtime environments that enables the use of unmodified command-line based GNU software. For using noux, refer to the run script 'ports/run/noux.run'. -:'ports-foc/src/l4linux': L4Linux is a paravirtualized Linux kernel that - enables the use of Linux-based OSes as subsystems on the Fiasco.OC kernel. - For using L4Linux, refer to the run script 'ports-foc/run/l4linux.run'. - -:'ports-foc/src/l4android': L4Android is a variant of L4Linux that is able - to execute the Android software stack on top of the Fiasco.OC kernel. - :'ports/src/app/seoul': Seoul is a virtual-machine monitor developed for the use with the NOVA platform. It virtualizes 32bit x86 PC hardware including various peripherals. diff --git a/repos/README b/repos/README index bd8764bd0..860dc5759 100644 --- a/repos/README +++ b/repos/README @@ -120,14 +120,6 @@ but build upon of each other: as used for the 'libports' repository. Please consult 'libports/README' for further information. -:'ports-': - - These platform-specific source-code repositories contain software that - capitalizes special features of the respective kernel platform. - For the Fiasco.OC platform, 'ports-foc' hosts a port of the L4Linux - kernel. For further information, please refer to the README file at the - top level of the respective repository. - :'gems': This source-code repository contains Genode applications that use diff --git a/repos/base-foc/doc/foc.txt b/repos/base-foc/doc/foc.txt index ee2a810e8..56b6f1880 100644 --- a/repos/base-foc/doc/foc.txt +++ b/repos/base-foc/doc/foc.txt @@ -83,34 +83,6 @@ instead of building everything: ! make run/demo -Running L4Linux on top of Genode -################################ - -To get the L4Linux running on top of Genode, you have to change prepare its -sources: - -! ./tool/ports/prepare_port l4linux - -This will fetch the currently supported version from the L4Linux subversion -repository, and apply a patch to it, that is needed to execute it on top of -Genode. - -Before compiling L4Linux for Genode/Fiasco.OC you have to integrate the 'ports-foc' -repository into your build environment. Therefore edit the 'etc/build.conf' file -in your build directory, and uncomment the following line: - -! REPOSITORIES += $(GENODE_DIR)/repos/ports-foc - -After that you can build and run L4Linux by issuing: - -! make run/l4linux - -in your build directory. This run-script boots a single L4Linux instance into -a minimal console environment. After booting completes, the run-scripts tries -to download the Genode project webpage via the 'wget' tool within the L4Linux -environment. If all wents fine the run-script completes successfully. - - Further Information ################### diff --git a/repos/dde_linux/run/linux_nic_panda.run b/repos/dde_linux/run/linux_nic_panda.run deleted file mode 100644 index 2ee3a086c..000000000 --- a/repos/dde_linux/run/linux_nic_panda.run +++ /dev/null @@ -1,126 +0,0 @@ -assert_spec foc -assert_spec panda - -# -# Build -# -build { - core - init - drivers/timer - drivers/framebuffer - drivers/sd_card - drivers/usb - drivers/gpio - server/nic_bridge - server/part_blk - l4linux -} - -create_boot_directory - -# -# Config -# -set config { - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -} - -install_config $config - -# -# Boot modules -# -set boot_modules { - core - ld.lib.so - init - timer - part_blk - l4linux - initrd.gz - fb_drv - sd_card_drv - gpio_drv - usb_drv -} - -set uri "https://github.com/downloads/skalk/genode/busybox-initrd-arm-20120710.gz" - -if {![file exists bin/initrd.gz]} { - puts "Download initramfs ..." - exec >& /dev/null wget -c -O bin/initrd.gz $uri -} - -build_boot_image [join $boot_modules " "] - diff --git a/repos/ports-foc/README b/repos/ports-foc/README deleted file mode 100644 index 6f569c0ef..000000000 --- a/repos/ports-foc/README +++ /dev/null @@ -1,226 +0,0 @@ -This repository contains the port of L4Linux/L4Android for Genode. - -L4Linux is a para-virtualized version of Linux running on top of the -micro-kernel Fiasco.OC. The original code uses the L4RE framework. This package -contains a small L4Linux support library as well as a patch for L4Linux, that -replaces L4RE by the Genode framework. Nevertheless, L4Linux stays to be -dependent on Fiasco.OC, meaning that you can only use it in combination with -Genode running on top of Fiasco.OC. - -L4Android is a fork of L4Linux which in addition comprises the Android kernel -patches. - - -Quickstart -========== - -L4Linux on Genode/Fiasco.OC IA32 ----------------------------------- -Prepare the L4Linux sources via: - -! ./tool/ports/prepare_port l4linux - -Create a new build-directory: - -! /tool/create_builddir foc_x86_32 BUILD_DIR=l4linux - -Edit the 'etc/build.conf' file in your build directory, and uncomment the following -lines: - -! REPOSITORIES += $(GENODE_DIR)/repos/ports-foc -! REPOSITORIES += $(GENODE_DIR)/repos/dde_ipxe - -The dde_ipxe repository contains the networking drivers for Genode. Please make -sure that you have followed the preparation steps for this repository as -described in 'dde_ipxe/README'. - -Optionally, add an appropriate '-j' option to the make command in the same file: - -! MAKE += -j4 - -Go to your newly created build directory, and execute the run-script for L4Android: - -! make run/l4linux - -L4Android on Genode/Fiasco.OC IA32 ----------------------------------- -Prepare the L4Android sources: - -! ./tool/ports/prepare_port l4android - -Create a new build-directory: - -! /tool/create_builddir foc_x86_32 BUILD_DIR=l4android - -Edit the 'etc/build.conf' file in your build directory, and uncomment the following -lines: - -! REPOSITORIES += $(GENODE_DIR)/repos/ports-foc -! REPOSITORIES += $(GENODE_DIR)/repos/dde_gpxe - -Please do not forget to issue: - -! ./tool/ports/prepare_port dde_ipxe base-foc - -Optionally, add an appropriate '-j' option to the make command in the same file: - -! MAKE += -j4 - -Normally, Genode applications for Fiasco.OC are started without KVM support in -Qemu as we ran into trouble with KVM/Fiasco.OC in the past. Nevertheless, using -Android without KVM-support gets sometimes painful with regard to the boot-time, -so feel to add the following line in 'etc/build.conf': - -! QEMU_OPT = -no-kvm-irqchip - -Go to your newly created build directory, and execute the run-script for L4Android: - -! make run/l4android - -That's it! In addition to using the graphical interface of Android in the framebuffer -window, provided by Qemu, you can use a Linux shell in the terminal -that runs the 'make' command, and you can connect to the Fiasco.OC's kernel debugger -via a serial connection that is established as a pipe in '/tmp/qemu-pipe'. - - -Detailed instructions -===================== - -Fiasco.OC prerequisites ------------------------ - -If you haven't build Genode for Fiasco.OC yet, please refer to the following -document: - -:[http://genode.org/community/wiki/GenodeOnFiascoOC - Genode on Fiasco.OC Wiki page]: - This Wiki page contains the information on how to build and use - Genode with Fiasco.OC - -Preparing the L4Linux/L4android kernel source code --------------------------------------------------- - -For building L4Linux for Genode, you first need to checkout and patch the -original sources. The 'prepare_port' tool automates this task. Just issue: - -! ./tool/ports/prepare_port l4linux - -If you like to build the L4Android kernel version as well, additionally type: - -! ./tool/ports/prepare_port l4android - -Afterwards you need to include the L4Linux repository into the Genode build -process. Just add the path to this directory to the 'REPOSITORIES' declaration -of the 'etc/build.conf' file within your build directory. - -Building and running L4Linux/L4android --------------------------------------- - -Now, you can change to your build directory and issue: - -! make l4linux - -If you want to build the L4Android kernel, instead type: - -! make l4android - -The 'bin/' directory within your build directory should now contain a symbolic -link to the L4Linux resp. L4Android binary. - -To test your Linux binary, you also need to tweak the config file for init and -potentially your bootloader script. You will find examples for this in the -'config/' directory of this repository. - -For a quick test of running L4Linux with Genode you can execute the Genode run -script 'ports-foc/run/l4linux.run' or 'ports-foc/run/l4android.run' by issuing -one of the following commands from the Genode build directory: - -! make run/l4linux - -or: - -! make run/l4android - -The run script will build all executables including the L4Linux kernel, -downloads necessary system images, performs the integration of all components -into a bootable image, and boot the image in Qemu. To inspect those individual -steps more closely, please refer to the run script and the Fiasco.OC specific -run environment implemented in 'base-foc/run/env'. - -Kernel command line -------------------- - -You can state the Linux kernel command line by using the XML configuration of -the start entry of your Linux instance, e.g.: - -! - -Nic session connection ----------------------- - -When you provide a nic service to your L4Linux instance, the kernel will auto-detect -that, and runs a nic-driver, which will provide the nic-session as ethernet device -'eth0'. Currently, only one nic-session per instance is supported. - -Terminal session ----------------- - -When providing a terminal-session to your Linux instance, it will automatically -register an appropriated serial and console driver in the kernel, that is -available as device 'ttyS0'. Currently, only one such device instance is supported. - -Block session connection ------------------------- - -To use a block session of the underlying Genode system, we provide a special -block-driver stub in L4Linux. You need to state how much block devices you want -to use, and their name internally used by Linux, e.g.: - -! -! -! -! - -Initramfs ---------- - -If you need to start Linux with an initramfs, you have to provide the name of the -archive within the kernel command line, such as: - -! "l4x_rd=initrd.gz" - -You can find a working example initramfs for here: - -:[http://genode.org/files/release-11.11/l4lx/initrd-ia32.gz] - _initramfs for the x86 architecture_ - -:[http://genode.org/files/release-11.11/l4lx/initrd-arm.gz] - _initramfs for the ARM architecture_ - -Configuring Linux ------------------ - -This L4Linux package contains a minimal Linux configuration that should work -out of the box. Hardware drivers are disabled as Genode doesn't allow Linux -to directly access device hardware. If you want to enable/disable options in -Linux, you can do so by using the normal Linux build system. You will find the -'.config' file Linux is using within the 'l4linux/' directory of your build -directory. If you don't want to tweak '.config' directly, you can also change -to the 'l4linux/' directory of your build directory and issue: - -! make menuconfig - -Then you will get the well known ncurses interface. - -When manually changing the Linux configuration for ARM platforms, you need -to additionally specify the corresponding 'L4ARCH' value at the command line: - -! make menuconfig L4ARCH=arm - -Troubleshooting ---------------- - -If you run into problems when building L4Linux and you want the build process -to be somehow more verbose, you can build L4Linux this way: - -! VERBOSE_LX_MK=1 make l4linux - diff --git a/repos/ports-foc/config/android_config.arm b/repos/ports-foc/config/android_config.arm deleted file mode 100644 index a500e63ec..000000000 --- a/repos/ports-foc/config/android_config.arm +++ /dev/null @@ -1,1330 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/l4 3.5.0-l4 Kernel Configuration -# - -# -# L4Linux configuration -# -CONFIG_L4=y -CONFIG_L4_LINUX=y -CONFIG_L4_OBJ_TREE="/mnt/disk1/workspace/work/genode/builds/tuna-git/l4" -# CONFIG_L4_ARCH_X86 is not set -CONFIG_L4_ARCH_ARM=y -CONFIG_L4_VMLINUZ_SUFFIX=".android" -CONFIG_HZ=100 -CONFIG_PHYSICAL_START=0x0 -CONFIG_L4_PLATFORM_GENERIC=y -# CONFIG_L4_PLATFORM_REALVIEW is not set - -# -# Features -# -# CONFIG_L4_SERVER is not set - -# -# IRQ Handling -# - -# -# Stub drivers -# -# CONFIG_L4_BLK_DS_DRV is not set -# CONFIG_L4_CHR_DS_DRV is not set -# CONFIG_L4_FB_DRIVER is not set -# CONFIG_L4_NET_L4SHM is not set -# CONFIG_L4_SERIAL is not set -# CONFIG_L4_SERIAL_SHM is not set -CONFIG_GENODE_SCREEN=y -CONFIG_GENODE_SERIAL=y -# CONFIG_GENODE_BALLOON is not set - -# -# Debugging options -# -CONFIG_L4_DEBUG=y -CONFIG_L4_DEBUG_REGISTER_NAMES=y -# CONFIG_L4_DEBUG_SEGFAULTS is not set -# CONFIG_L4_DEBUG_STATS is not set - -# -# Advanced options -# -CONFIG_L4_MEMSIZE=32 -CONFIG_L4_TAMED=y -CONFIG_L4_VCPU=y -# CONFIG_L4_DMAPOOL is not set - -# -# Priority configuration -# -CONFIG_L4_PRIO_SERVER_PROC=1 -CONFIG_L4_PRIO_IDLER=2 -CONFIG_L4_PRIO_IRQ_BASE=3 -CONFIG_L4_PRIO_TAMER=22 -CONFIG_L4_PRIO_L4FB_INPUT=7 -CONFIG_L4_PRIO_L4FB_REFRESH=7 -CONFIG_L4_PRIO_L4ANKH=7 -CONFIG_L4_CONFIG_CHECKS=y -# CONFIG_L4_SAMPLE_MODULE is not set -CONFIG_L4_CLK_NOOP=y - -# -# -# -CONFIG_ARM=y -CONFIG_MIGHT_HAVE_PCI=y -CONFIG_SYS_SUPPORTS_APM_EMULATION=y -CONFIG_HAVE_PROC_CPU=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_NEED_DMA_MAP_STATE=y -CONFIG_VECTORS_BASE=0xbffff000 -# CONFIG_ARM_PATCH_PHYS_VIRT is not set -CONFIG_NEED_MACH_MEMORY_H=y -CONFIG_GENERIC_BUG=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_HAVE_IRQ_WORK=y - -# -# General setup -# -CONFIG_EXPERIMENTAL=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -CONFIG_LOCALVERSION_AUTO=y -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -CONFIG_KERNEL_GZIP=y -# CONFIG_KERNEL_LZMA is not set -# CONFIG_KERNEL_XZ is not set -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="(none)" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_FHANDLE is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_HARDIRQS_SW_RESEND=y -CONFIG_KTIME_SCALAR=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y - -# -# Timers subsystem -# -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set - -# -# RCU Subsystem -# -CONFIG_TREE_RCU=y -# CONFIG_TREE_PREEMPT_RCU is not set -# CONFIG_PREEMPT_RCU is not set -CONFIG_RCU_FANOUT=32 -CONFIG_RCU_FANOUT_LEAF=16 -# CONFIG_RCU_FANOUT_EXACT is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=15 -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -# CONFIG_SCHED_AUTOGROUP is not set -CONFIG_SYSFS_DEPRECATED=y -CONFIG_SYSFS_DEPRECATED_V2=y -# CONFIG_RELAY is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -# CONFIG_RD_BZIP2 is not set -# CONFIG_RD_LZMA is not set -# CONFIG_RD_XZ is not set -# CONFIG_RD_LZO is not set -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -CONFIG_ELF_CORE=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y -CONFIG_PERF_USE_VMALLOC=y - -# -# Kernel Performance Events And Counters -# -# CONFIG_PERF_EVENTS is not set -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_COMPAT_BRK=y -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_STOP_MACHINE=y -CONFIG_BLOCK=y -CONFIG_LBDAF=y -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -# CONFIG_INLINE_SPIN_TRYLOCK is not set -# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK is not set -# CONFIG_INLINE_SPIN_LOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK_IRQ is not set -# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set -# CONFIG_INLINE_SPIN_UNLOCK_BH is not set -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_READ_TRYLOCK is not set -# CONFIG_INLINE_READ_LOCK is not set -# CONFIG_INLINE_READ_LOCK_BH is not set -# CONFIG_INLINE_READ_LOCK_IRQ is not set -# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set -CONFIG_INLINE_READ_UNLOCK=y -# CONFIG_INLINE_READ_UNLOCK_BH is not set -CONFIG_INLINE_READ_UNLOCK_IRQ=y -# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_WRITE_TRYLOCK is not set -# CONFIG_INLINE_WRITE_LOCK is not set -# CONFIG_INLINE_WRITE_LOCK_BH is not set -# CONFIG_INLINE_WRITE_LOCK_IRQ is not set -# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set -CONFIG_INLINE_WRITE_UNLOCK=y -# CONFIG_INLINE_WRITE_UNLOCK_BH is not set -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set -# CONFIG_MUTEX_SPIN_ON_OWNER is not set -CONFIG_FREEZER=y - -# -# System Type -# -CONFIG_MMU=y -# CONFIG_ARCH_INTEGRATOR is not set -# CONFIG_ARCH_REALVIEW is not set -# CONFIG_ARCH_VERSATILE is not set -# CONFIG_ARCH_VEXPRESS is not set -# CONFIG_ARCH_AT91 is not set -CONFIG_ARCH_L4=y -# CONFIG_ARCH_BCMRING is not set -# CONFIG_ARCH_HIGHBANK is not set -# CONFIG_ARCH_CLPS711X is not set -# CONFIG_ARCH_CNS3XXX is not set -# CONFIG_ARCH_GEMINI is not set -# CONFIG_ARCH_PRIMA2 is not set -# CONFIG_ARCH_EBSA110 is not set -# CONFIG_ARCH_EP93XX is not set -# CONFIG_ARCH_FOOTBRIDGE is not set -# CONFIG_ARCH_MXC is not set -# CONFIG_ARCH_MXS is not set -# CONFIG_ARCH_NETX is not set -# CONFIG_ARCH_H720X is not set -# CONFIG_ARCH_IOP13XX is not set -# CONFIG_ARCH_IOP32X is not set -# CONFIG_ARCH_IOP33X is not set -# CONFIG_ARCH_IXP4XX is not set -# CONFIG_ARCH_DOVE is not set -# CONFIG_ARCH_KIRKWOOD is not set -# CONFIG_ARCH_LPC32XX is not set -# CONFIG_ARCH_MV78XX0 is not set -# CONFIG_ARCH_ORION5X is not set -# CONFIG_ARCH_MMP is not set -# CONFIG_ARCH_KS8695 is not set -# CONFIG_ARCH_W90X900 is not set -# CONFIG_ARCH_TEGRA is not set -# CONFIG_ARCH_PICOXCELL is not set -# CONFIG_ARCH_PNX4008 is not set -# CONFIG_ARCH_PXA is not set -# CONFIG_ARCH_MSM is not set -# CONFIG_ARCH_SHMOBILE is not set -# CONFIG_ARCH_RPC is not set -# CONFIG_ARCH_SA1100 is not set -# CONFIG_ARCH_S3C24XX is not set -# CONFIG_ARCH_S3C64XX is not set -# CONFIG_ARCH_S5P64X0 is not set -# CONFIG_ARCH_S5PC100 is not set -# CONFIG_ARCH_S5PV210 is not set -# CONFIG_ARCH_EXYNOS is not set -# CONFIG_ARCH_SHARK is not set -# CONFIG_ARCH_U300 is not set -# CONFIG_ARCH_U8500 is not set -# CONFIG_ARCH_NOMADIK is not set -# CONFIG_ARCH_DAVINCI is not set -# CONFIG_ARCH_OMAP is not set -# CONFIG_PLAT_SPEAR is not set -# CONFIG_ARCH_VT8500 is not set -# CONFIG_ARCH_ZYNQ is not set -CONFIG_MACH_L4=y -# CONFIG_L4_ARM_BUILD_FOR_V5 is not set -# CONFIG_L4_ARM_BUILD_FOR_V6K is not set -CONFIG_L4_ARM_BUILD_FOR_V7=y - -# -# Processor Type -# -CONFIG_CPU_V7=y -CONFIG_CPU_32v6K=y -CONFIG_CPU_32v7=y -CONFIG_CPU_ABRT_EV7=y -CONFIG_CPU_PABRT_V7=y -CONFIG_CPU_CACHE_V7=y -CONFIG_CPU_CACHE_VIPT=y -CONFIG_CPU_COPY_V6=y -CONFIG_CPU_TLB_V7=y -CONFIG_CPU_HAS_ASID=y -CONFIG_CPU_CP15=y -CONFIG_CPU_CP15_MMU=y - -# -# Processor Features -# -# CONFIG_ARM_LPAE is not set -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -CONFIG_ARM_THUMB=y -# CONFIG_ARM_THUMBEE is not set -# CONFIG_SWP_EMULATE is not set -# CONFIG_CPU_ICACHE_DISABLE is not set -# CONFIG_CPU_DCACHE_DISABLE is not set -# CONFIG_CPU_BPREDICT_DISABLE is not set -CONFIG_MIGHT_HAVE_CACHE_L2X0=y -# CONFIG_CACHE_L2X0 is not set -CONFIG_ARM_L1_CACHE_SHIFT_6=y -CONFIG_ARM_L1_CACHE_SHIFT=6 -CONFIG_ARM_DMA_MEM_BUFFERABLE=y -CONFIG_ARM_NR_BANKS=8 -CONFIG_CPU_HAS_PMU=y -# CONFIG_ARM_ERRATA_430973 is not set -# CONFIG_ARM_ERRATA_458693 is not set -# CONFIG_ARM_ERRATA_460075 is not set -# CONFIG_ARM_ERRATA_742230 is not set -# CONFIG_ARM_ERRATA_742231 is not set -# CONFIG_ARM_ERRATA_720789 is not set -# CONFIG_ARM_ERRATA_743622 is not set -# CONFIG_ARM_ERRATA_751472 is not set -# CONFIG_ARM_ERRATA_754322 is not set -# CONFIG_ARM_ERRATA_754327 is not set -# CONFIG_ARM_ERRATA_764369 is not set - -# -# Bus support -# -CONFIG_ARM_AMBA=y -# CONFIG_PCI is not set -# CONFIG_PCI_SYSCALL is not set -# CONFIG_ARCH_SUPPORTS_MSI is not set -# CONFIG_PCCARD is not set - -# -# Kernel Features -# -CONFIG_HAVE_SMP=y -CONFIG_SMP=y -CONFIG_SMP_ON_UP=y -# CONFIG_ARM_CPU_TOPOLOGY is not set -CONFIG_HAVE_ARM_SCU=y -# CONFIG_ARM_ARCH_TIMER is not set -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0xC0000000 -CONFIG_NR_CPUS=4 -CONFIG_HOTPLUG_CPU=y -# CONFIG_LOCAL_TIMERS is not set -CONFIG_ARCH_NR_GPIO=0 -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -# CONFIG_THUMB2_KERNEL is not set -CONFIG_AEABI=y -CONFIG_OABI_COMPAT=y -# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set -# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set -CONFIG_HAVE_ARCH_PFN_VALID=y -# CONFIG_HIGHMEM is not set -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_FLATMEM_MANUAL=y -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=0 -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_CLEANCACHE is not set -# CONFIG_FRONTSWAP is not set -CONFIG_FORCE_MAX_ZONEORDER=11 -CONFIG_ALIGNMENT_TRAP=y -# CONFIG_UACCESS_WITH_MEMCPY is not set -# CONFIG_SECCOMP is not set -# CONFIG_CC_STACKPROTECTOR is not set -# CONFIG_DEPRECATED_PARAM_STRUCT is not set - -# -# Boot options -# -# CONFIG_USE_OF is not set -CONFIG_ZBOOT_ROM_TEXT=0 -CONFIG_ZBOOT_ROM_BSS=0 -CONFIG_CMDLINE="" -# CONFIG_XIP_KERNEL is not set -# CONFIG_KEXEC is not set -# CONFIG_CRASH_DUMP is not set -# CONFIG_AUTO_ZRELADDR is not set - -# -# CPU Power Management -# -# CONFIG_CPU_IDLE is not set - -# -# Floating point emulation -# - -# -# At least one emulation must be selected -# -# CONFIG_FPE_NWFPE is not set -# CONFIG_FPE_FASTFPE is not set -CONFIG_VFP=y -CONFIG_VFPv3=y -# CONFIG_NEON is not set - -# -# Userspace binary formats -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set -CONFIG_HAVE_AOUT=y -# CONFIG_BINFMT_AOUT is not set -CONFIG_BINFMT_MISC=y - -# -# Power management options -# -CONFIG_SUSPEND=y -CONFIG_SUSPEND_FREEZER=y -CONFIG_PM_SLEEP=y -CONFIG_PM_SLEEP_SMP=y -# CONFIG_PM_AUTOSLEEP is not set -CONFIG_PM_WAKELOCKS=y -CONFIG_PM_WAKELOCKS_LIMIT=100 -CONFIG_PM_WAKELOCKS_GC=y -# CONFIG_PM_RUNTIME is not set -CONFIG_PM=y -# CONFIG_PM_DEBUG is not set -# CONFIG_APM_EMULATION is not set -CONFIG_PM_CLK=y -CONFIG_CPU_PM=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ARM_CPU_SUSPEND=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -CONFIG_XFRM=y -# CONFIG_XFRM_USER is not set -# CONFIG_XFRM_SUB_POLICY is not set -# CONFIG_XFRM_MIGRATE is not set -# CONFIG_XFRM_STATISTICS is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_PNP=y -CONFIG_IP_PNP_DHCP=y -# CONFIG_IP_PNP_BOOTP is not set -# CONFIG_IP_PNP_RARP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -CONFIG_INET_XFRM_MODE_TRANSPORT=y -CONFIG_INET_XFRM_MODE_TUNNEL=y -CONFIG_INET_XFRM_MODE_BEET=y -# CONFIG_INET_LRO is not set -CONFIG_INET_DIAG=y -CONFIG_INET_TCP_DIAG=y -# CONFIG_INET_UDP_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -CONFIG_RPS=y -CONFIG_RFS_ACCEL=y -CONFIG_XPS=y -CONFIG_BQL=y -# CONFIG_BPF_JIT is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set -CONFIG_HAVE_BPF_JIT=y - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="" -# CONFIG_DEVTMPFS is not set -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y -CONFIG_FW_LOADER=y -CONFIG_FIRMWARE_IN_KERNEL=y -CONFIG_EXTRA_FIRMWARE="" -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CMA is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set - -# -# DRBD disabled because PROC_FS, INET or CONNECTOR not selected -# -# CONFIG_BLK_DEV_NBD is not set -CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_RAM_COUNT=16 -CONFIG_BLK_DEV_RAM_SIZE=4096 -# CONFIG_BLK_DEV_XIP is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_RBD is not set - -# -# Misc devices -# -# CONFIG_SENSORS_LIS3LV02D is not set -# CONFIG_ATMEL_PWM is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set - -# -# Texas Instruments shared transport line discipline -# - -# -# Altera FPGA firmware download module -# - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_NETDEVICES is not set -# CONFIG_ISDN is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set -# CONFIG_INPUT_SPARSEKMAP is not set -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -CONFIG_INPUT_MOUSEDEV=y -CONFIG_INPUT_MOUSEDEV_PSAUX=y -CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -# CONFIG_INPUT_JOYDEV is not set -CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_VT_CONSOLE_SLEEP=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -CONFIG_LEGACY_PTYS=y -CONFIG_LEGACY_PTY_COUNT=256 -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -CONFIG_DEVKMEM=y - -# -# Serial drivers -# -# CONFIG_SERIAL_8250 is not set - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_AMBA_PL010 is not set -# CONFIG_SERIAL_AMBA_PL011 is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_XILINX_PS_UART is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_HVC_DCC is not set -# CONFIG_IPMI_HANDLER is not set -CONFIG_HW_RANDOM=m -# CONFIG_HW_RANDOM_TIMERIOMEM is not set -# CONFIG_HW_RANDOM_ATMEL is not set -# CONFIG_R3964 is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# - -# -# Enable Device Drivers -> PPS to see the PTP clock options. -# -CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y -# CONFIG_W1 is not set -CONFIG_POWER_SUPPLY=y -CONFIG_POWER_SUPPLY_DEBUG=y -CONFIG_PDA_POWER=y -# CONFIG_TEST_POWER is not set -# CONFIG_BATTERY_DS2780 is not set -# CONFIG_BATTERY_DS2781 is not set -# CONFIG_BATTERY_BQ27x00 is not set -# CONFIG_CHARGER_MAX8903 is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_MFD_T7L66XB is not set -# CONFIG_MFD_TC6387XB is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -# CONFIG_FB_DDC is not set -# CONFIG_FB_BOOT_VESA_SUPPORT is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_SYS_FOPS is not set -# CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -# CONFIG_FB_MODE_HELPERS is not set -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_ARMCLCD is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_BROADSHEET is not set -# CONFIG_FB_AUO_K190X is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Console display driver support -# -CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -CONFIG_LOGO=y -CONFIG_LOGO_LINUX_MONO=y -CONFIG_LOGO_LINUX_VGA16=y -CONFIG_LOGO_LINUX_CLUT224=y -CONFIG_SOUND=y -CONFIG_SOUND_OSS_CORE=y -CONFIG_SOUND_OSS_CORE_PRECLAIM=y -CONFIG_SND=y -CONFIG_SND_TIMER=y -CONFIG_SND_PCM=y -# CONFIG_SND_SEQUENCER is not set -CONFIG_SND_OSSEMUL=y -CONFIG_SND_MIXER_OSS=y -# CONFIG_SND_PCM_OSS is not set -# CONFIG_SND_DYNAMIC_MINORS is not set -CONFIG_SND_SUPPORT_OLD_API=y -CONFIG_SND_VERBOSE_PROCFS=y -# CONFIG_SND_VERBOSE_PRINTK is not set -# CONFIG_SND_DEBUG is not set -# CONFIG_SND_RAWMIDI_SEQ is not set -# CONFIG_SND_OPL3_LIB_SEQ is not set -# CONFIG_SND_OPL4_LIB_SEQ is not set -# CONFIG_SND_SBAWE_SEQ is not set -# CONFIG_SND_EMU10K1_SEQ is not set -CONFIG_SND_DRIVERS=y -CONFIG_SND_DUMMY=y -# CONFIG_SND_ALOOP is not set -# CONFIG_SND_MTPAV is not set -# CONFIG_SND_SERIAL_U16550 is not set -# CONFIG_SND_MPU401 is not set -CONFIG_SND_ARM=y -# CONFIG_SND_ARMAACI is not set -# CONFIG_SND_SOC is not set -# CONFIG_SOUND_PRIME is not set - -# -# HID support -# -CONFIG_HID=y -# CONFIG_HID_BATTERY_STRENGTH is not set -# CONFIG_HIDRAW is not set -CONFIG_HID_GENERIC=y - -# -# Special HID drivers -# -# CONFIG_USB_ARCH_HAS_OHCI is not set -# CONFIG_USB_ARCH_HAS_EHCI is not set -# CONFIG_USB_ARCH_HAS_XHCI is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -CONFIG_NEW_LEDS=y -CONFIG_LEDS_CLASS=y - -# -# LED drivers -# -# CONFIG_LEDS_OT200 is not set -# CONFIG_LEDS_TRIGGERS is not set - -# -# LED Triggers -# -# CONFIG_ACCESSIBILITY is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_HCTOSYS=y -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -# CONFIG_RTC_DRV_CMOS is not set -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_RTC_DRV_PL030 is not set -# CONFIG_RTC_DRV_PL031 is not set -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_BALLOON is not set -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -CONFIG_STAGING=y -# CONFIG_ECHO is not set -# CONFIG_FB_SM7XX is not set -# CONFIG_FT1000 is not set - -# -# Speakup console speech -# -# CONFIG_SPEAKUP is not set -# CONFIG_STAGING_MEDIA is not set - -# -# Android -# -CONFIG_ANDROID=y -CONFIG_ANDROID_BINDER_IPC=y -CONFIG_ASHMEM=y -CONFIG_ANDROID_LOGGER=y -CONFIG_ANDROID_TIMED_OUTPUT=y -CONFIG_ANDROID_LOW_MEMORY_KILLER=y -# CONFIG_ANDROID_INTF_ALARM_DEV is not set -# CONFIG_PHONE is not set -# CONFIG_IPACK_BUS is not set -# CONFIG_WIMAX_GDM72XX is not set -CONFIG_CLKDEV_LOOKUP=y - -# -# Hardware Spinlock drivers -# -CONFIG_IOMMU_SUPPORT=y - -# -# Remoteproc drivers (EXPERIMENTAL) -# - -# -# Rpmsg drivers (EXPERIMENTAL) -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set - -# -# File systems -# -CONFIG_EXT2_FS=y -# CONFIG_EXT2_FS_XATTR is not set -# CONFIG_EXT2_FS_XIP is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_LOGFS is not set -CONFIG_CRAMFS=y -# CONFIG_SQUASHFS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX6FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_PSTORE is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -# CONFIG_NLS is not set - -# -# Kernel hacking -# -# CONFIG_PRINTK_TIME is not set -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -CONFIG_ENABLE_WARN_DEPRECATED=y -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_HARDLOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -CONFIG_SCHED_DEBUG=y -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -CONFIG_DEBUG_MUTEXES=y -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -CONFIG_FRAME_POINTER=y -# CONFIG_BOOT_PRINTK_DELAY is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_CPU_STALL_INFO is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_LKDTM is not set -# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -# CONFIG_FUNCTION_TRACER is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_ENABLE_DEFAULT_TRACERS is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set -# CONFIG_STACK_TRACER is not set -# CONFIG_BLK_DEV_IO_TRACE is not set -# CONFIG_PROBE_EVENTS is not set -# CONFIG_DYNAMIC_DEBUG is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_STRICT_DEVMEM is not set -# CONFIG_ARM_UNWIND is not set -# CONFIG_DEBUG_USER is not set -# CONFIG_DEBUG_LL is not set -# CONFIG_OC_ETM is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_PCRYPT is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -# CONFIG_CRYPTO_CRC32C is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -# CONFIG_CRYPTO_AES is not set -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -CONFIG_ZLIB_INFLATE=y -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_GENERIC_ALLOCATOR=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_CPU_RMAP=y -CONFIG_DQL=y -CONFIG_NLATTR=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/repos/ports-foc/config/android_config.x86_32 b/repos/ports-foc/config/android_config.x86_32 deleted file mode 100644 index 5213a9cb8..000000000 --- a/repos/ports-foc/config/android_config.x86_32 +++ /dev/null @@ -1,1487 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/l4 3.5.0-l4 Kernel Configuration -# - -# -# L4Linux configuration -# -CONFIG_L4=y -CONFIG_L4_LINUX=y -CONFIG_L4_OBJ_TREE="" -CONFIG_L4_ARCH_X86=y -# CONFIG_L4_ARCH_ARM is not set -CONFIG_L4_VMLINUZ_SUFFIX=".android" -CONFIG_HZ=100 -CONFIG_PHYSICAL_START=0x0 - -# -# Features -# -# CONFIG_L4_SERVER is not set - -# -# IRQ Handling -# - -# -# Stub drivers -# -# CONFIG_L4_EXTERNAL_RTC is not set -# CONFIG_L4_BLK_DS_DRV is not set -# CONFIG_L4_CHR_DS_DRV is not set -# CONFIG_L4_FB_DRIVER is not set -# CONFIG_L4_NET_L4SHM is not set -# CONFIG_L4_SERIAL is not set -# CONFIG_L4_SERIAL_SHM is not set -CONFIG_GENODE_SCREEN=y -CONFIG_GENODE_SERIAL=y -# CONFIG_GENODE_BALLOON is not set - -# -# Debugging options -# -CONFIG_L4_DEBUG=y -CONFIG_L4_DEBUG_REGISTER_NAMES=y -# CONFIG_L4_DEBUG_SEGFAULTS is not set -# CONFIG_L4_DEBUG_STATS is not set - -# -# Advanced options -# -CONFIG_L4_MEMSIZE=32 -CONFIG_L4_TAMED=y -CONFIG_L4_VCPU=y - -# -# Priority configuration -# -CONFIG_L4_PRIO_SERVER_PROC=1 -CONFIG_L4_PRIO_IDLER=2 -CONFIG_L4_PRIO_IRQ_BASE=3 -CONFIG_L4_PRIO_TAMER=22 -CONFIG_L4_PRIO_L4FB_INPUT=7 -CONFIG_L4_PRIO_L4FB_REFRESH=7 -CONFIG_L4_PRIO_L4ANKH=7 -CONFIG_L4_CONFIG_CHECKS=y -# CONFIG_L4_SAMPLE_MODULE is not set - -# -# -# -# CONFIG_64BIT is not set -CONFIG_X86_32=y -# CONFIG_X86_64 is not set -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf32-i386" -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_HAVE_LATENCYTOP_SUPPORT=y -CONFIG_MMU=y -# CONFIG_NEED_DMA_MAP_STATE is not set -CONFIG_NEED_SG_DMA_LENGTH=y -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -# CONFIG_RWSEM_GENERIC_SPINLOCK is not set -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_DEFAULT_IDLE=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_CPU_AUTOPROBE=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_ZONE_DMA32 is not set -# CONFIG_AUDIT_ARCH is not set -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_X86_32_SMP=y -CONFIG_X86_HT=y -CONFIG_X86_32_LAZY_GS=y -CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" -CONFIG_ARCH_CPU_PROBE_RELEASE=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_HAVE_IRQ_WORK=y -CONFIG_IRQ_WORK=y -CONFIG_BUILDTIME_EXTABLE_SORT=y - -# -# General setup -# -CONFIG_EXPERIMENTAL=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -CONFIG_LOCALVERSION_AUTO=y -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -CONFIG_KERNEL_GZIP=y -# CONFIG_KERNEL_BZIP2 is not set -# CONFIG_KERNEL_LZMA is not set -# CONFIG_KERNEL_XZ is not set -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="(none)" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -# CONFIG_POSIX_MQUEUE is not set -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_FHANDLE is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_GENERIC_PENDING_IRQ=y -CONFIG_IRQ_FORCED_THREADING=y -CONFIG_SPARSE_IRQ=y -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_KTIME_SCALAR=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y -CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y -CONFIG_GENERIC_CMOS_UPDATE=y - -# -# Timers subsystem -# -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set - -# -# RCU Subsystem -# -CONFIG_TREE_RCU=y -# CONFIG_PREEMPT_RCU is not set -CONFIG_RCU_FANOUT=32 -CONFIG_RCU_FANOUT_LEAF=16 -# CONFIG_RCU_FANOUT_EXACT is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=15 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -# CONFIG_SCHED_AUTOGROUP is not set -CONFIG_SYSFS_DEPRECATED=y -CONFIG_SYSFS_DEPRECATED_V2=y -# CONFIG_RELAY is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -# CONFIG_RD_BZIP2 is not set -# CONFIG_RD_LZMA is not set -# CONFIG_RD_XZ is not set -# CONFIG_RD_LZO is not set -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -CONFIG_ELF_CORE=y -# CONFIG_PCSPKR_PLATFORM is not set -CONFIG_HAVE_PCSPKR_PLATFORM=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y - -# -# Kernel Performance Events And Counters -# -CONFIG_PERF_EVENTS=y -# CONFIG_DEBUG_PERF_USE_VMALLOC is not set -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_COMPAT_BRK=y -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y - -# -# GCOV-based kernel profiling -# -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -CONFIG_MODVERSIONS=y -# CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_STOP_MACHINE=y -CONFIG_BLOCK=y -CONFIG_LBDAF=y -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -# CONFIG_INLINE_SPIN_TRYLOCK is not set -# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK is not set -# CONFIG_INLINE_SPIN_LOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK_IRQ is not set -# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set -# CONFIG_INLINE_SPIN_UNLOCK_BH is not set -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_READ_TRYLOCK is not set -# CONFIG_INLINE_READ_LOCK is not set -# CONFIG_INLINE_READ_LOCK_BH is not set -# CONFIG_INLINE_READ_LOCK_IRQ is not set -# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set -CONFIG_INLINE_READ_UNLOCK=y -# CONFIG_INLINE_READ_UNLOCK_BH is not set -CONFIG_INLINE_READ_UNLOCK_IRQ=y -# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_WRITE_TRYLOCK is not set -# CONFIG_INLINE_WRITE_LOCK is not set -# CONFIG_INLINE_WRITE_LOCK_BH is not set -# CONFIG_INLINE_WRITE_LOCK_IRQ is not set -# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set -CONFIG_INLINE_WRITE_UNLOCK=y -# CONFIG_INLINE_WRITE_UNLOCK_BH is not set -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_FREEZER=y - -# -# Processor type and features -# -CONFIG_ZONE_DMA=y -CONFIG_SMP=y -CONFIG_X86_MPPARSE=y -# CONFIG_X86_BIGSMP is not set -CONFIG_X86_EXTENDED_PLATFORM=y -# CONFIG_X86_WANT_INTEL_MID is not set -# CONFIG_X86_RDC321X is not set -# CONFIG_X86_32_NON_STANDARD is not set -# CONFIG_X86_32_IRIS is not set -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_PARAVIRT_GUEST is not set -CONFIG_NO_BOOTMEM=y -# CONFIG_MEMTEST is not set -# CONFIG_M386 is not set -# CONFIG_M486 is not set -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -CONFIG_M686=y -# CONFIG_MPENTIUMII is not set -# CONFIG_MPENTIUMIII is not set -# CONFIG_MPENTIUMM is not set -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MEFFICEON is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MELAN is not set -# CONFIG_MGEODEGX1 is not set -# CONFIG_MGEODE_LX is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -# CONFIG_MVIAC7 is not set -# CONFIG_MCORE2 is not set -# CONFIG_MATOM is not set -# CONFIG_X86_GENERIC is not set -CONFIG_X86_INTERNODE_CACHE_SHIFT=5 -CONFIG_X86_CMPXCHG=y -CONFIG_X86_L1_CACHE_SHIFT=5 -CONFIG_X86_XADD=y -CONFIG_X86_PPRO_FENCE=y -CONFIG_X86_WP_WORKS_OK=y -CONFIG_X86_INVLPG=y -CONFIG_X86_BSWAP=y -CONFIG_X86_POPAD_OK=y -CONFIG_X86_USE_PPRO_CHECKSUM=y -CONFIG_X86_TSC=y -CONFIG_X86_CMPXCHG64=y -CONFIG_X86_CMOV=y -CONFIG_X86_MINIMUM_CPU_FAMILY=5 -CONFIG_X86_DEBUGCTLMSR=y -# CONFIG_PROCESSOR_SELECT is not set -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_CYRIX_32=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_CENTAUR=y -CONFIG_CPU_SUP_TRANSMETA_32=y -CONFIG_CPU_SUP_UMC_32=y -# CONFIG_HPET_TIMER is not set -# CONFIG_DMI is not set -# CONFIG_IOMMU_HELPER is not set -CONFIG_NR_CPUS=8 -# CONFIG_SCHED_SMT is not set -CONFIG_SCHED_MC=y -# CONFIG_IRQ_TIME_ACCOUNTING is not set -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -CONFIG_X86_LOCAL_APIC=y -CONFIG_X86_IO_APIC=y -# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set -# CONFIG_X86_MCE is not set -# CONFIG_VM86 is not set -# CONFIG_TOSHIBA is not set -# CONFIG_I8K is not set -# CONFIG_X86_REBOOTFIXUPS is not set -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -CONFIG_NOHIGHMEM=y -# CONFIG_HIGHMEM4G is not set -# CONFIG_HIGHMEM64G is not set -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_3G_OPT is not set -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_2G_OPT is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0 -# CONFIG_X86_PAE is not set -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -# CONFIG_ARCH_DMA_ADDR_T_64BIT is not set -CONFIG_ARCH_FLATMEM_ENABLE=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_ILLEGAL_POINTER_VALUE=0 -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_FLATMEM_MANUAL=y -# CONFIG_SPARSEMEM_MANUAL is not set -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 -# CONFIG_TRANSPARENT_HUGEPAGE is not set -CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_CLEANCACHE is not set -# CONFIG_FRONTSWAP is not set -# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set -CONFIG_X86_RESERVE_LOW=64 -# CONFIG_MATH_EMULATION is not set -# CONFIG_MTRR is not set -CONFIG_ARCH_RANDOM=y -CONFIG_SECCOMP=y -# CONFIG_CC_STACKPROTECTOR is not set -CONFIG_HZ_100=y -# CONFIG_HZ_250 is not set -# CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -# CONFIG_SCHED_HRTICK is not set -# CONFIG_KEXEC is not set -# CONFIG_RELOCATABLE is not set -CONFIG_PHYSICAL_ALIGN=0x100000 -CONFIG_HOTPLUG_CPU=y -CONFIG_COMPAT_VDSO=y -# CONFIG_CMDLINE_BOOL is not set - -# -# Power management and ACPI options -# -CONFIG_SUSPEND=y -CONFIG_SUSPEND_FREEZER=y -# CONFIG_HIBERNATION is not set -CONFIG_PM_SLEEP=y -CONFIG_PM_SLEEP_SMP=y -# CONFIG_PM_AUTOSLEEP is not set -CONFIG_PM_WAKELOCKS=y -CONFIG_PM_WAKELOCKS_LIMIT=100 -CONFIG_PM_WAKELOCKS_GC=y -# CONFIG_PM_RUNTIME is not set -CONFIG_PM=y -# CONFIG_PM_DEBUG is not set -# CONFIG_SFI is not set -# CONFIG_APM is not set - -# -# CPU Frequency scaling -# -# CONFIG_CPU_FREQ is not set -# CONFIG_CPU_IDLE is not set - -# -# Bus options (PCI etc.) -# -# CONFIG_PCI is not set -# CONFIG_ARCH_SUPPORTS_MSI is not set -CONFIG_ISA_DMA_API=y -# CONFIG_ISA is not set -# CONFIG_SCx200 is not set -# CONFIG_OLPC is not set -# CONFIG_ALIX is not set -# CONFIG_NET5501 is not set -# CONFIG_PCCARD is not set - -# -# Executable file formats / Emulations -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set -CONFIG_HAVE_AOUT=y -CONFIG_BINFMT_AOUT=y -CONFIG_BINFMT_MISC=y -CONFIG_HAVE_ATOMIC_IOMAP=y -CONFIG_HAVE_TEXT_POKE_SMP=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -CONFIG_XFRM=y -# CONFIG_XFRM_USER is not set -# CONFIG_XFRM_SUB_POLICY is not set -# CONFIG_XFRM_MIGRATE is not set -# CONFIG_XFRM_STATISTICS is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -CONFIG_INET_TUNNEL=m -CONFIG_INET_XFRM_MODE_TRANSPORT=y -CONFIG_INET_XFRM_MODE_TUNNEL=y -CONFIG_INET_XFRM_MODE_BEET=y -# CONFIG_INET_LRO is not set -CONFIG_INET_DIAG=y -CONFIG_INET_TCP_DIAG=y -# CONFIG_INET_UDP_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -CONFIG_IPV6=m -# CONFIG_IPV6_PRIVACY is not set -# CONFIG_IPV6_ROUTER_PREF is not set -# CONFIG_IPV6_OPTIMISTIC_DAD is not set -# CONFIG_INET6_AH is not set -# CONFIG_INET6_ESP is not set -# CONFIG_INET6_IPCOMP is not set -# CONFIG_IPV6_MIP6 is not set -# CONFIG_INET6_XFRM_TUNNEL is not set -# CONFIG_INET6_TUNNEL is not set -CONFIG_INET6_XFRM_MODE_TRANSPORT=m -CONFIG_INET6_XFRM_MODE_TUNNEL=m -CONFIG_INET6_XFRM_MODE_BEET=m -# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set -CONFIG_IPV6_SIT=m -# CONFIG_IPV6_SIT_6RD is not set -CONFIG_IPV6_NDISC_NODETYPE=y -# CONFIG_IPV6_TUNNEL is not set -# CONFIG_IPV6_MULTIPLE_TABLES is not set -# CONFIG_IPV6_MROUTE is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -CONFIG_RPS=y -CONFIG_RFS_ACCEL=y -CONFIG_XPS=y -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -# CONFIG_DEVTMPFS is not set -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y -# CONFIG_FW_LOADER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CMA is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_FD is not set -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set - -# -# DRBD disabled because PROC_FS, INET or CONNECTOR not selected -# -# CONFIG_BLK_DEV_NBD is not set -CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_RAM_COUNT=16 -CONFIG_BLK_DEV_RAM_SIZE=4096 -# CONFIG_BLK_DEV_XIP is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_HD is not set -# CONFIG_BLK_DEV_RBD is not set - -# -# Misc devices -# -# CONFIG_SENSORS_LIS3LV02D is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_VMWARE_BALLOON is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set - -# -# Texas Instruments shared transport line discipline -# - -# -# Altera FPGA firmware download module -# -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_MACINTOSH_DRIVERS is not set -# CONFIG_NETDEVICES is not set -# CONFIG_ISDN is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set -# CONFIG_INPUT_SPARSEKMAP is not set -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -CONFIG_INPUT_MOUSEDEV=y -CONFIG_INPUT_MOUSEDEV_PSAUX=y -CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -# CONFIG_INPUT_JOYDEV is not set -CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -CONFIG_INPUT_MISC=y -# CONFIG_INPUT_AD714X is not set -# CONFIG_INPUT_WISTRON_BTNS is not set -# CONFIG_INPUT_UINPUT is not set -# CONFIG_INPUT_ADXL34X is not set -# CONFIG_INPUT_CMA3000 is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_VT_CONSOLE_SLEEP=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -CONFIG_LEGACY_PTYS=y -CONFIG_LEGACY_PTY_COUNT=256 -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -CONFIG_DEVKMEM=y - -# -# Serial drivers -# -# CONFIG_SERIAL_8250 is not set -CONFIG_FIX_EARLYCON_MEM=y - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_XILINX_PS_UART is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_NVRAM is not set -# CONFIG_R3964 is not set -# CONFIG_MWAVE is not set -# CONFIG_PC8736x_GPIO is not set -# CONFIG_NSC_GPIO is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# - -# -# Enable Device Drivers -> PPS to see the PTP clock options. -# -CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -CONFIG_POWER_SUPPLY=y -# CONFIG_POWER_SUPPLY_DEBUG is not set -CONFIG_PDA_POWER=y -# CONFIG_TEST_POWER is not set -# CONFIG_BATTERY_DS2780 is not set -# CONFIG_BATTERY_DS2781 is not set -# CONFIG_BATTERY_BQ27x00 is not set -# CONFIG_CHARGER_MAX8903 is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -# CONFIG_FB_DDC is not set -# CONFIG_FB_BOOT_VESA_SUPPORT is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_SYS_FOPS is not set -# CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -CONFIG_FB_MODE_HELPERS=y -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_ARC is not set -# CONFIG_FB_VGA16 is not set -# CONFIG_FB_VESA is not set -# CONFIG_FB_N411 is not set -# CONFIG_FB_HGA is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_BROADSHEET is not set -# CONFIG_FB_AUO_K190X is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Console display driver support -# -# CONFIG_VGA_CONSOLE is not set -CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y -CONFIG_FONTS=y -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -# CONFIG_FONT_6x11 is not set -# CONFIG_FONT_7x14 is not set -# CONFIG_FONT_PEARL_8x8 is not set -# CONFIG_FONT_ACORN_8x8 is not set -CONFIG_FONT_MINI_4x6=y -# CONFIG_FONT_SUN8x16 is not set -# CONFIG_FONT_SUN12x22 is not set -# CONFIG_FONT_10x18 is not set -CONFIG_LOGO=y -CONFIG_LOGO_LINUX_MONO=y -CONFIG_LOGO_LINUX_VGA16=y -CONFIG_LOGO_LINUX_CLUT224=y -CONFIG_SOUND=y -# CONFIG_SOUND_OSS_CORE is not set -CONFIG_SND=y -CONFIG_SND_TIMER=y -CONFIG_SND_PCM=y -# CONFIG_SND_SEQUENCER is not set -# CONFIG_SND_MIXER_OSS is not set -# CONFIG_SND_PCM_OSS is not set -# CONFIG_SND_DYNAMIC_MINORS is not set -CONFIG_SND_SUPPORT_OLD_API=y -CONFIG_SND_VERBOSE_PROCFS=y -# CONFIG_SND_VERBOSE_PRINTK is not set -# CONFIG_SND_DEBUG is not set -CONFIG_SND_DMA_SGBUF=y -# CONFIG_SND_RAWMIDI_SEQ is not set -# CONFIG_SND_OPL3_LIB_SEQ is not set -# CONFIG_SND_OPL4_LIB_SEQ is not set -# CONFIG_SND_SBAWE_SEQ is not set -# CONFIG_SND_EMU10K1_SEQ is not set -CONFIG_SND_DRIVERS=y -CONFIG_SND_DUMMY=y -# CONFIG_SND_ALOOP is not set -# CONFIG_SND_MTPAV is not set -# CONFIG_SND_SERIAL_U16550 is not set -# CONFIG_SND_MPU401 is not set -# CONFIG_SND_SOC is not set -# CONFIG_SOUND_PRIME is not set - -# -# HID support -# -CONFIG_HID=y -# CONFIG_HID_BATTERY_STRENGTH is not set -# CONFIG_HIDRAW is not set -CONFIG_HID_GENERIC=y - -# -# Special HID drivers -# -# CONFIG_USB_ARCH_HAS_OHCI is not set -# CONFIG_USB_ARCH_HAS_EHCI is not set -# CONFIG_USB_ARCH_HAS_XHCI is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_EDAC is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -# CONFIG_RTC_HCTOSYS is not set -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -# CONFIG_RTC_DRV_CMOS is not set -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_BALLOON is not set -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -CONFIG_STAGING=y -# CONFIG_ECHO is not set -# CONFIG_COMEDI is not set -# CONFIG_ZRAM is not set -# CONFIG_ZSMALLOC is not set -# CONFIG_FB_SM7XX is not set -# CONFIG_FT1000 is not set - -# -# Speakup console speech -# -# CONFIG_SPEAKUP is not set -# CONFIG_STAGING_MEDIA is not set - -# -# Android -# -CONFIG_ANDROID=y -CONFIG_ANDROID_BINDER_IPC=y -CONFIG_ASHMEM=y -CONFIG_ANDROID_LOGGER=y -CONFIG_ANDROID_TIMED_OUTPUT=y -CONFIG_ANDROID_LOW_MEMORY_KILLER=y -CONFIG_ANDROID_INTF_ALARM_DEV=y -# CONFIG_PHONE is not set -# CONFIG_IPACK_BUS is not set -# CONFIG_WIMAX_GDM72XX is not set -CONFIG_X86_PLATFORM_DEVICES=y -# CONFIG_SENSORS_HDAPS is not set - -# -# Hardware Spinlock drivers -# -CONFIG_CLKSRC_I8253=y -CONFIG_CLKEVT_I8253=y -CONFIG_CLKBLD_I8253=y -# CONFIG_IOMMU_SUPPORT is not set - -# -# Remoteproc drivers (EXPERIMENTAL) -# - -# -# Rpmsg drivers (EXPERIMENTAL) -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -CONFIG_FIRMWARE_MEMMAP=y -# CONFIG_DELL_RBU is not set -# CONFIG_DCDBAS is not set -# CONFIG_ISCSI_IBFT_FIND is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# File systems -# -CONFIG_DCACHE_WORD_ACCESS=y -# CONFIG_EXT2_FS is not set -# CONFIG_EXT3_FS is not set -CONFIG_EXT4_FS=y -CONFIG_EXT4_USE_FOR_EXT23=y -CONFIG_EXT4_FS_XATTR=y -# CONFIG_EXT4_FS_POSIX_ACL is not set -# CONFIG_EXT4_FS_SECURITY is not set -# CONFIG_EXT4_DEBUG is not set -CONFIG_JBD2=y -CONFIG_FS_MBCACHE=y -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -CONFIG_FAT_FS=y -# CONFIG_MSDOS_FS is not set -CONFIG_VFAT_FS=y -CONFIG_FAT_DEFAULT_CODEPAGE=437 -CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -CONFIG_PROC_KCORE=y -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLBFS is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_LOGFS is not set -CONFIG_CRAMFS=y -CONFIG_SQUASHFS=y -# CONFIG_SQUASHFS_XATTR is not set -CONFIG_SQUASHFS_ZLIB=y -# CONFIG_SQUASHFS_LZO is not set -# CONFIG_SQUASHFS_XZ is not set -# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set -# CONFIG_SQUASHFS_EMBEDDED is not set -CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX6FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_PSTORE is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -CONFIG_NETWORK_FILESYSTEMS=y -# CONFIG_NFS_FS is not set -# CONFIG_NFSD is not set -# CONFIG_CEPH_FS is not set -# CONFIG_CIFS is not set -# CONFIG_NCP_FS is not set -# CONFIG_CODA_FS is not set -# CONFIG_AFS_FS is not set -CONFIG_NLS=y -CONFIG_NLS_DEFAULT="iso8859-1" -CONFIG_NLS_CODEPAGE_437=y -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -# CONFIG_NLS_ASCII is not set -CONFIG_NLS_ISO8859_1=y -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_MAC_ROMAN is not set -# CONFIG_NLS_MAC_CELTIC is not set -# CONFIG_NLS_MAC_CENTEURO is not set -# CONFIG_NLS_MAC_CROATIAN is not set -# CONFIG_NLS_MAC_CYRILLIC is not set -# CONFIG_NLS_MAC_GAELIC is not set -# CONFIG_NLS_MAC_GREEK is not set -# CONFIG_NLS_MAC_ICELAND is not set -# CONFIG_NLS_MAC_INUIT is not set -# CONFIG_NLS_MAC_ROMANIAN is not set -# CONFIG_NLS_MAC_TURKISH is not set -# CONFIG_NLS_UTF8 is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -# CONFIG_PRINTK_TIME is not set -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -CONFIG_ENABLE_WARN_DEPRECATED=y -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -CONFIG_UNUSED_SYMBOLS=y -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_HARDLOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_SCHED_DEBUG is not set -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_VIRTUAL is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -CONFIG_ARCH_WANT_FRAME_POINTERS=y -CONFIG_FRAME_POINTER=y -# CONFIG_BOOT_PRINTK_DELAY is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_CPU_STALL_INFO is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_CPU_NOTIFIER_ERROR_INJECT is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -# CONFIG_FUNCTION_TRACER is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_ENABLE_DEFAULT_TRACERS is not set -# CONFIG_FTRACE_SYSCALLS is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set -# CONFIG_STACK_TRACER is not set -# CONFIG_BLK_DEV_IO_TRACE is not set -# CONFIG_UPROBE_EVENT is not set -# CONFIG_PROBE_EVENTS is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -CONFIG_HAVE_ARCH_KMEMCHECK=y -# CONFIG_KMEMCHECK is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_STRICT_DEVMEM is not set -CONFIG_X86_VERBOSE_BOOTUP=y -CONFIG_EARLY_PRINTK=y -# CONFIG_DEBUG_STACKOVERFLOW is not set -# CONFIG_X86_PTDUMP is not set -# CONFIG_DEBUG_RODATA is not set -# CONFIG_DEBUG_SET_MODULE_RONX is not set -# CONFIG_DEBUG_NX_TEST is not set -# CONFIG_DOUBLEFAULT is not set -# CONFIG_IOMMU_STRESS is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -CONFIG_IO_DELAY_0X80=y -# CONFIG_IO_DELAY_0XED is not set -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=0 -# CONFIG_CPA_DEBUG is not set -# CONFIG_OPTIMIZE_INLINING is not set -# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set -# CONFIG_DEBUG_NMI_SELFTEST is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -CONFIG_CRYPTO_HASH=y -CONFIG_CRYPTO_HASH2=y -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_PCRYPT is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -CONFIG_CRYPTO_CRC32C=y -# CONFIG_CRYPTO_CRC32C_INTEL is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -# CONFIG_CRYPTO_AES is not set -# CONFIG_CRYPTO_AES_586 is not set -# CONFIG_CRYPTO_AES_NI_INTEL is not set -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SALSA20_586 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_SERPENT_SSE2_586 is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set -# CONFIG_CRYPTO_TWOFISH_586 is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -# CONFIG_CRYPTO_DEV_PADLOCK is not set -CONFIG_HAVE_KVM=y -# CONFIG_VIRTUALIZATION is not set -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_FIND_FIRST_BIT=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -CONFIG_CRC16=y -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -CONFIG_ZLIB_INFLATE=y -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_CPU_RMAP=y -CONFIG_DQL=y -CONFIG_NLATTR=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/repos/ports-foc/config/linux_config.arm b/repos/ports-foc/config/linux_config.arm deleted file mode 100644 index 031af0780..000000000 --- a/repos/ports-foc/config/linux_config.arm +++ /dev/null @@ -1,1368 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/l4 3.9.0-l4 Kernel Configuration -# - -# -# L4Linux configuration -# -CONFIG_L4=y -CONFIG_L4_LINUX=y -CONFIG_L4_OBJ_TREE="/build/genode_panda/l4" -# CONFIG_L4_ARCH_X86 is not set -CONFIG_L4_ARCH_ARM=y -CONFIG_L4_VMLINUZ_SUFFIX=".arm" -CONFIG_HZ=100 -CONFIG_PHYSICAL_START=0x0 -CONFIG_L4_PLATFORM_GENERIC=y -# CONFIG_L4_PLATFORM_REALVIEW is not set - -# -# Features -# -# CONFIG_L4_SERVER is not set - -# -# IRQ Handling -# - -# -# Stub drivers -# -# CONFIG_L4_BLK_DS_DRV is not set -# CONFIG_L4_CHR_DS_DRV is not set -# CONFIG_L4_FB_DRIVER is not set -# CONFIG_L4_NET_L4SHM is not set -# CONFIG_L4_SERIAL is not set -# CONFIG_L4_SERIAL_SHM is not set -CONFIG_GENODE_SCREEN=y -CONFIG_GENODE_SERIAL=y -CONFIG_GENODE_BALLOON=y - -# -# Debugging options -# -CONFIG_L4_DEBUG=y -CONFIG_L4_DEBUG_REGISTER_NAMES=y -# CONFIG_L4_DEBUG_SEGFAULTS is not set -# CONFIG_L4_DEBUG_STATS is not set - -# -# Advanced options -# -CONFIG_L4_MEMSIZE=32 -CONFIG_L4_TAMED=y -CONFIG_L4_VCPU=y -# CONFIG_L4_DMAPOOL is not set - -# -# Priority configuration -# -CONFIG_L4_PRIO_SERVER_PROC=1 -CONFIG_L4_PRIO_IDLER=2 -CONFIG_L4_PRIO_IRQ_BASE=3 -CONFIG_L4_PRIO_TAMER=22 -CONFIG_L4_PRIO_L4FB_INPUT=7 -CONFIG_L4_PRIO_L4FB_REFRESH=7 -CONFIG_L4_PRIO_L4ANKH=7 -CONFIG_L4_CONFIG_CHECKS=y -# CONFIG_L4_SAMPLE_MODULE is not set -CONFIG_L4_CLK_NOOP=y - -# -# -# -CONFIG_ARM=y -CONFIG_MIGHT_HAVE_PCI=y -CONFIG_SYS_SUPPORTS_APM_EMULATION=y -CONFIG_HAVE_PROC_CPU=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_NEED_DMA_MAP_STATE=y -CONFIG_VECTORS_BASE=0xbffff000 -# CONFIG_ARM_PATCH_PHYS_VIRT is not set -CONFIG_NEED_MACH_MEMORY_H=y -CONFIG_GENERIC_BUG=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_IRQ_WORK=y -CONFIG_BUILDTIME_EXTABLE_SORT=y - -# -# General setup -# -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -CONFIG_LOCALVERSION_AUTO=y -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -CONFIG_KERNEL_GZIP=y -# CONFIG_KERNEL_LZMA is not set -# CONFIG_KERNEL_XZ is not set -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="l4box" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -CONFIG_FHANDLE=y -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_HARDIRQS_SW_RESEND=y -CONFIG_IRQ_EDGE_EOI_HANDLER=y -# CONFIG_ALWAYS_USE_PERSISTENT_CLOCK is not set -CONFIG_KTIME_SCALAR=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_ARCH_HAS_TICK_BROADCAST=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y - -# -# Timers subsystem -# -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set - -# -# CPU/Task time and stats accounting -# -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set - -# -# RCU Subsystem -# -CONFIG_TREE_RCU=y -# CONFIG_PREEMPT_RCU is not set -CONFIG_RCU_STALL_COMMON=y -CONFIG_RCU_FANOUT=32 -CONFIG_RCU_FANOUT_LEAF=16 -# CONFIG_RCU_FANOUT_EXACT is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_RCU_NOCB_CPU is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=15 -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -CONFIG_UIDGID_CONVERTED=y -# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set -# CONFIG_SCHED_AUTOGROUP is not set -CONFIG_SYSFS_DEPRECATED=y -CONFIG_SYSFS_DEPRECATED_V2=y -# CONFIG_RELAY is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -# CONFIG_RD_BZIP2 is not set -# CONFIG_RD_LZMA is not set -# CONFIG_RD_XZ is not set -# CONFIG_RD_LZO is not set -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_HAVE_UID16=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -CONFIG_ELF_CORE=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y -CONFIG_PERF_USE_VMALLOC=y - -# -# Kernel Performance Events And Counters -# -# CONFIG_PERF_EVENTS is not set -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_COMPAT_BRK=y -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y - -# -# GCOV-based kernel profiling -# -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -CONFIG_STOP_MACHINE=y -CONFIG_BLOCK=y -CONFIG_LBDAF=y -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -CONFIG_EFI_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_FREEZER=y - -# -# System Type -# -CONFIG_MMU=y -# CONFIG_ARCH_MULTIPLATFORM is not set -# CONFIG_ARCH_INTEGRATOR is not set -# CONFIG_ARCH_REALVIEW is not set -# CONFIG_ARCH_VERSATILE is not set -# CONFIG_ARCH_AT91 is not set -CONFIG_ARCH_L4=y -# CONFIG_ARCH_BCM2835 is not set -# CONFIG_ARCH_CNS3XXX is not set -# CONFIG_ARCH_CLPS711X is not set -# CONFIG_ARCH_GEMINI is not set -# CONFIG_ARCH_SIRF is not set -# CONFIG_ARCH_EBSA110 is not set -# CONFIG_ARCH_EP93XX is not set -# CONFIG_ARCH_FOOTBRIDGE is not set -# CONFIG_ARCH_MXS is not set -# CONFIG_ARCH_NETX is not set -# CONFIG_ARCH_H720X is not set -# CONFIG_ARCH_IOP13XX is not set -# CONFIG_ARCH_IOP32X is not set -# CONFIG_ARCH_IOP33X is not set -# CONFIG_ARCH_IXP4XX is not set -# CONFIG_ARCH_DOVE is not set -# CONFIG_ARCH_KIRKWOOD is not set -# CONFIG_ARCH_MV78XX0 is not set -# CONFIG_ARCH_ORION5X is not set -# CONFIG_ARCH_MMP is not set -# CONFIG_ARCH_KS8695 is not set -# CONFIG_ARCH_W90X900 is not set -# CONFIG_ARCH_LPC32XX is not set -# CONFIG_ARCH_TEGRA is not set -# CONFIG_ARCH_PXA is not set -# CONFIG_ARCH_MSM is not set -# CONFIG_ARCH_SHMOBILE is not set -# CONFIG_ARCH_RPC is not set -# CONFIG_ARCH_SA1100 is not set -# CONFIG_ARCH_S3C24XX is not set -# CONFIG_ARCH_S3C64XX is not set -# CONFIG_ARCH_S5P64X0 is not set -# CONFIG_ARCH_S5PC100 is not set -# CONFIG_ARCH_S5PV210 is not set -# CONFIG_ARCH_EXYNOS is not set -# CONFIG_ARCH_SHARK is not set -# CONFIG_ARCH_U300 is not set -# CONFIG_ARCH_U8500 is not set -# CONFIG_ARCH_NOMADIK is not set -# CONFIG_PLAT_SPEAR is not set -# CONFIG_ARCH_DAVINCI is not set -# CONFIG_ARCH_OMAP1 is not set -CONFIG_MACH_L4=y -# CONFIG_L4_ARM_BUILD_FOR_V5 is not set -# CONFIG_L4_ARM_BUILD_FOR_V6K is not set -CONFIG_L4_ARM_BUILD_FOR_V7=y - -# -# Processor Type -# -CONFIG_CPU_V7=y -CONFIG_CPU_32v6K=y -CONFIG_CPU_32v7=y -CONFIG_CPU_ABRT_EV7=y -CONFIG_CPU_PABRT_V7=y -CONFIG_CPU_CACHE_V7=y -CONFIG_CPU_CACHE_VIPT=y -CONFIG_CPU_COPY_V6=y -CONFIG_CPU_TLB_V7=y -CONFIG_CPU_HAS_ASID=y -CONFIG_CPU_CP15=y -CONFIG_CPU_CP15_MMU=y - -# -# Processor Features -# -# CONFIG_ARM_LPAE is not set -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -CONFIG_ARM_THUMB=y -# CONFIG_ARM_THUMBEE is not set -CONFIG_ARM_VIRT_EXT=y -# CONFIG_SWP_EMULATE is not set -# CONFIG_CPU_ICACHE_DISABLE is not set -# CONFIG_CPU_DCACHE_DISABLE is not set -# CONFIG_CPU_BPREDICT_DISABLE is not set -CONFIG_MIGHT_HAVE_CACHE_L2X0=y -# CONFIG_CACHE_L2X0 is not set -CONFIG_ARM_L1_CACHE_SHIFT_6=y -CONFIG_ARM_L1_CACHE_SHIFT=6 -CONFIG_ARM_DMA_MEM_BUFFERABLE=y -CONFIG_ARM_NR_BANKS=8 -# CONFIG_ARM_ERRATA_430973 is not set -# CONFIG_ARM_ERRATA_458693 is not set -# CONFIG_ARM_ERRATA_460075 is not set -# CONFIG_ARM_ERRATA_742230 is not set -# CONFIG_ARM_ERRATA_742231 is not set -# CONFIG_ARM_ERRATA_720789 is not set -# CONFIG_ARM_ERRATA_743622 is not set -# CONFIG_ARM_ERRATA_751472 is not set -# CONFIG_ARM_ERRATA_754322 is not set -# CONFIG_ARM_ERRATA_754327 is not set -# CONFIG_ARM_ERRATA_764369 is not set -# CONFIG_ARM_ERRATA_775420 is not set -# CONFIG_ARM_ERRATA_798181 is not set - -# -# Bus support -# -CONFIG_ARM_AMBA=y -# CONFIG_PCI is not set -# CONFIG_PCI_SYSCALL is not set -# CONFIG_PCCARD is not set - -# -# Kernel Features -# -CONFIG_HAVE_SMP=y -CONFIG_SMP=y -CONFIG_SMP_ON_UP=y -# CONFIG_ARM_CPU_TOPOLOGY is not set -CONFIG_HAVE_ARM_SCU=y -# CONFIG_HAVE_ARM_ARCH_TIMER is not set -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0xC0000000 -CONFIG_NR_CPUS=4 -CONFIG_HOTPLUG_CPU=y -# CONFIG_ARM_PSCI is not set -# CONFIG_LOCAL_TIMERS is not set -CONFIG_ARCH_NR_GPIO=0 -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -# CONFIG_SCHED_HRTICK is not set -# CONFIG_THUMB2_KERNEL is not set -CONFIG_AEABI=y -CONFIG_OABI_COMPAT=y -# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set -# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set -CONFIG_HAVE_ARCH_PFN_VALID=y -# CONFIG_HIGHMEM is not set -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_HAVE_MEMBLOCK=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=0 -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_CLEANCACHE is not set -# CONFIG_FRONTSWAP is not set -CONFIG_FORCE_MAX_ZONEORDER=11 -CONFIG_ALIGNMENT_TRAP=y -# CONFIG_UACCESS_WITH_MEMCPY is not set -# CONFIG_SECCOMP is not set -# CONFIG_CC_STACKPROTECTOR is not set - -# -# Boot options -# -# CONFIG_USE_OF is not set -CONFIG_ATAGS=y -# CONFIG_DEPRECATED_PARAM_STRUCT is not set -CONFIG_ZBOOT_ROM_TEXT=0x0 -CONFIG_ZBOOT_ROM_BSS=0x0 -CONFIG_CMDLINE="" -# CONFIG_XIP_KERNEL is not set -# CONFIG_KEXEC is not set -# CONFIG_CRASH_DUMP is not set -# CONFIG_AUTO_ZRELADDR is not set - -# -# CPU Power Management -# -# CONFIG_CPU_IDLE is not set -# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set - -# -# Floating point emulation -# - -# -# At least one emulation must be selected -# -# CONFIG_FPE_NWFPE is not set -# CONFIG_FPE_FASTFPE is not set -CONFIG_VFP=y -CONFIG_VFPv3=y -# CONFIG_NEON is not set - -# -# Userspace binary formats -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set -CONFIG_HAVE_AOUT=y -# CONFIG_BINFMT_AOUT is not set -CONFIG_BINFMT_MISC=y -CONFIG_COREDUMP=y - -# -# Power management options -# -CONFIG_SUSPEND=y -CONFIG_SUSPEND_FREEZER=y -CONFIG_PM_SLEEP=y -CONFIG_PM_SLEEP_SMP=y -# CONFIG_PM_AUTOSLEEP is not set -# CONFIG_PM_WAKELOCKS is not set -# CONFIG_PM_RUNTIME is not set -CONFIG_PM=y -# CONFIG_PM_DEBUG is not set -# CONFIG_APM_EMULATION is not set -CONFIG_PM_CLK=y -CONFIG_CPU_PM=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ARM_CPU_SUSPEND=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_DIAG is not set -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -CONFIG_XFRM=y -# CONFIG_XFRM_USER is not set -# CONFIG_XFRM_SUB_POLICY is not set -# CONFIG_XFRM_MIGRATE is not set -# CONFIG_XFRM_STATISTICS is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_PNP=y -CONFIG_IP_PNP_DHCP=y -# CONFIG_IP_PNP_BOOTP is not set -# CONFIG_IP_PNP_RARP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_NET_IPVTI is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -CONFIG_INET_XFRM_MODE_TRANSPORT=y -CONFIG_INET_XFRM_MODE_TUNNEL=y -CONFIG_INET_XFRM_MODE_BEET=y -# CONFIG_INET_LRO is not set -CONFIG_INET_DIAG=y -CONFIG_INET_TCP_DIAG=y -# CONFIG_INET_UDP_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -# CONFIG_VSOCKETS is not set -CONFIG_RPS=y -CONFIG_RFS_ACCEL=y -CONFIG_XPS=y -CONFIG_BQL=y -# CONFIG_BPF_JIT is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set -CONFIG_HAVE_BPF_JIT=y - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="" -# CONFIG_DEVTMPFS is not set -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y -CONFIG_FW_LOADER=y -CONFIG_FIRMWARE_IN_KERNEL=y -CONFIG_EXTRA_FIRMWARE="" -CONFIG_FW_LOADER_USER_HELPER=y -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CMA is not set - -# -# Bus devices -# -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set -# CONFIG_BLK_DEV_DRBD is not set -# CONFIG_BLK_DEV_NBD is not set -CONFIG_BLK_DEV_RAM=y -CONFIG_BLK_DEV_RAM_COUNT=16 -CONFIG_BLK_DEV_RAM_SIZE=4096 -# CONFIG_BLK_DEV_XIP is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_RBD is not set - -# -# Misc devices -# -# CONFIG_SENSORS_LIS3LV02D is not set -# CONFIG_ATMEL_PWM is not set -# CONFIG_ATMEL_SSC is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set - -# -# Texas Instruments shared transport line discipline -# - -# -# Altera FPGA firmware download module -# - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_NETDEVICES is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set -# CONFIG_INPUT_SPARSEKMAP is not set -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -CONFIG_INPUT_MOUSEDEV=y -CONFIG_INPUT_MOUSEDEV_PSAUX=y -CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -# CONFIG_INPUT_JOYDEV is not set -CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_TTY=y -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_VT_CONSOLE_SLEEP=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -CONFIG_LEGACY_PTYS=y -CONFIG_LEGACY_PTY_COUNT=256 -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -CONFIG_DEVKMEM=y - -# -# Serial drivers -# -# CONFIG_SERIAL_8250 is not set - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_AMBA_PL010 is not set -# CONFIG_SERIAL_AMBA_PL011 is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_ARC is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_HVC_DCC is not set -# CONFIG_IPMI_HANDLER is not set -CONFIG_HW_RANDOM=m -# CONFIG_HW_RANDOM_TIMERIOMEM is not set -# CONFIG_HW_RANDOM_ATMEL is not set -# CONFIG_HW_RANDOM_EXYNOS is not set -# CONFIG_R3964 is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# -# CONFIG_PTP_1588_CLOCK is not set - -# -# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. -# -# CONFIG_PTP_1588_CLOCK_PCH is not set -CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y -CONFIG_GPIO_DEVRES=y -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_POWER_AVS is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_MFD_TI_AM335X_TSCADC is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_MFD_T7L66XB is not set -# CONFIG_MFD_TC6387XB is not set -# CONFIG_MFD_TC6393XB is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -# CONFIG_FB_DDC is not set -# CONFIG_FB_BOOT_VESA_SUPPORT is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_SYS_FOPS is not set -# CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -# CONFIG_FB_MODE_HELPERS is not set -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_ARMCLCD is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_GOLDFISH is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_BROADSHEET is not set -# CONFIG_FB_AUO_K190X is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Console display driver support -# -CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -CONFIG_LOGO=y -CONFIG_LOGO_LINUX_MONO=y -CONFIG_LOGO_LINUX_VGA16=y -CONFIG_LOGO_LINUX_CLUT224=y -# CONFIG_SOUND is not set - -# -# HID support -# -CONFIG_HID=y -# CONFIG_HIDRAW is not set -# CONFIG_UHID is not set -# CONFIG_HID_GENERIC is not set - -# -# Special HID drivers -# -# CONFIG_USB_ARCH_HAS_OHCI is not set -# CONFIG_USB_ARCH_HAS_EHCI is not set -# CONFIG_USB_ARCH_HAS_XHCI is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_EDAC is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_HCTOSYS=y -# CONFIG_RTC_SYSTOHC is not set -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -# CONFIG_RTC_DRV_CMOS is not set -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set -# CONFIG_RTC_DRV_DS2404 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_RTC_DRV_PL030 is not set -# CONFIG_RTC_DRV_PL031 is not set - -# -# HID Sensor RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -# CONFIG_STAGING is not set -CONFIG_CLKDEV_LOOKUP=y - -# -# Hardware Spinlock drivers -# -# CONFIG_MAILBOX is not set -# CONFIG_IOMMU_SUPPORT is not set - -# -# Remoteproc drivers -# -# CONFIG_STE_MODEM_RPROC is not set - -# -# Rpmsg drivers -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_PWM is not set -# CONFIG_IPACK_BUS is not set - -# -# File systems -# -CONFIG_DCACHE_WORD_ACCESS=y -CONFIG_EXT2_FS=y -# CONFIG_EXT2_FS_XATTR is not set -# CONFIG_EXT2_FS_XIP is not set -CONFIG_EXT3_FS=y -CONFIG_EXT3_DEFAULTS_TO_ORDERED=y -CONFIG_EXT3_FS_XATTR=y -# CONFIG_EXT3_FS_POSIX_ACL is not set -# CONFIG_EXT3_FS_SECURITY is not set -CONFIG_EXT4_FS=y -# CONFIG_EXT4_FS_POSIX_ACL is not set -# CONFIG_EXT4_FS_SECURITY is not set -# CONFIG_EXT4_DEBUG is not set -CONFIG_JBD=y -CONFIG_JBD2=y -CONFIG_FS_MBCACHE=y -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_EXPORTFS=y -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -CONFIG_FAT_FS=y -CONFIG_MSDOS_FS=y -CONFIG_VFAT_FS=y -CONFIG_FAT_DEFAULT_CODEPAGE=437 -CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_LOGFS is not set -CONFIG_CRAMFS=y -# CONFIG_SQUASHFS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_QNX6FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_PSTORE is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -# CONFIG_F2FS_FS is not set -CONFIG_NETWORK_FILESYSTEMS=y -# CONFIG_NFS_FS is not set -# CONFIG_NFSD is not set -# CONFIG_CEPH_FS is not set -# CONFIG_CIFS is not set -# CONFIG_NCP_FS is not set -# CONFIG_CODA_FS is not set -# CONFIG_AFS_FS is not set -CONFIG_NLS=y -CONFIG_NLS_DEFAULT="iso8859-1" -CONFIG_NLS_CODEPAGE_437=y -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -# CONFIG_NLS_ASCII is not set -CONFIG_NLS_ISO8859_1=y -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_MAC_ROMAN is not set -# CONFIG_NLS_MAC_CELTIC is not set -# CONFIG_NLS_MAC_CENTEURO is not set -# CONFIG_NLS_MAC_CROATIAN is not set -# CONFIG_NLS_MAC_CYRILLIC is not set -# CONFIG_NLS_MAC_GAELIC is not set -# CONFIG_NLS_MAC_GREEK is not set -# CONFIG_NLS_MAC_ICELAND is not set -# CONFIG_NLS_MAC_INUIT is not set -# CONFIG_NLS_MAC_ROMANIAN is not set -# CONFIG_NLS_MAC_TURKISH is not set -# CONFIG_NLS_UTF8 is not set - -# -# Kernel hacking -# -# CONFIG_PRINTK_TIME is not set -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -CONFIG_ENABLE_WARN_DEPRECATED=y -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -CONFIG_SCHED_DEBUG=y -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -CONFIG_DEBUG_MUTEXES=y -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -CONFIG_FRAME_POINTER=y -# CONFIG_BOOT_PRINTK_DELAY is not set - -# -# RCU Debugging -# -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_CPU_STALL_INFO is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_NOTIFIER_ERROR_INJECTION is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -# CONFIG_FUNCTION_TRACER is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_ENABLE_DEFAULT_TRACERS is not set -# CONFIG_FTRACE_SYSCALLS is not set -# CONFIG_TRACER_SNAPSHOT is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set -# CONFIG_STACK_TRACER is not set -# CONFIG_BLK_DEV_IO_TRACE is not set -# CONFIG_PROBE_EVENTS is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_STRICT_DEVMEM is not set -# CONFIG_ARM_UNWIND is not set -# CONFIG_DEBUG_USER is not set -# CONFIG_DEBUG_LL is not set -CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" -# CONFIG_OC_ETM is not set -# CONFIG_PID_IN_CONTEXTIDR is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -CONFIG_CRYPTO_HASH=y -CONFIG_CRYPTO_HASH2=y -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_PCRYPT is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -CONFIG_CRYPTO_CRC32C=y -# CONFIG_CRYPTO_CRC32 is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA1_ARM is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -# CONFIG_CRYPTO_AES_ARM is not set -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -CONFIG_CRC16=y -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -CONFIG_ZLIB_INFLATE=y -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_GENERIC_ALLOCATOR=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_CPU_RMAP=y -CONFIG_DQL=y -CONFIG_NLATTR=y -CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set -# CONFIG_VIRTUALIZATION is not set diff --git a/repos/ports-foc/config/linux_config.x86_32 b/repos/ports-foc/config/linux_config.x86_32 deleted file mode 100644 index db7dca699..000000000 --- a/repos/ports-foc/config/linux_config.x86_32 +++ /dev/null @@ -1,1539 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/l4 3.9.0-l4 Kernel Configuration -# - -# -# L4Linux configuration -# -CONFIG_L4=y -CONFIG_L4_LINUX=y -CONFIG_L4_OBJ_TREE="/home/kalle/pub/builds/genode/foc_x86_32/l4" -CONFIG_L4_ARCH_X86=y -# CONFIG_L4_ARCH_ARM is not set -CONFIG_L4_VMLINUZ_SUFFIX="" -CONFIG_HZ=100 -CONFIG_PHYSICAL_START=0x100000 - -# -# Features -# -# CONFIG_L4_SERVER is not set - -# -# IRQ Handling -# - -# -# Stub drivers -# -# CONFIG_L4_EXTERNAL_RTC is not set -# CONFIG_L4_BLK_DS_DRV is not set -# CONFIG_L4_CHR_DS_DRV is not set -# CONFIG_L4_FB_DRIVER is not set -# CONFIG_L4_NET_L4SHM is not set -# CONFIG_L4_SERIAL is not set -# CONFIG_L4_SERIAL_SHM is not set -CONFIG_GENODE_SCREEN=y -CONFIG_GENODE_SERIAL=y -CONFIG_GENODE_BALLOON=y - -# -# Debugging options -# -CONFIG_L4_DEBUG=y -CONFIG_L4_DEBUG_REGISTER_NAMES=y -CONFIG_L4_DEBUG_SEGFAULTS=y -# CONFIG_L4_DEBUG_STATS is not set - -# -# Advanced options -# -CONFIG_L4_MEMSIZE=32 -CONFIG_L4_TAMED=y -CONFIG_L4_VCPU=y - -# -# Priority configuration -# -CONFIG_L4_PRIO_SERVER_PROC=1 -CONFIG_L4_PRIO_IDLER=2 -CONFIG_L4_PRIO_IRQ_BASE=3 -CONFIG_L4_PRIO_TAMER=22 -CONFIG_L4_PRIO_L4FB_INPUT=7 -CONFIG_L4_PRIO_L4FB_REFRESH=7 -CONFIG_L4_PRIO_L4ANKH=7 -CONFIG_L4_CONFIG_CHECKS=y -# CONFIG_L4_SAMPLE_MODULE is not set - -# -# -# -CONFIG_X86_32=y -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf32-i386" -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_HAVE_LATENCYTOP_SUPPORT=y -CONFIG_MMU=y -CONFIG_NEED_SG_DMA_LENGTH=y -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_DEFAULT_IDLE=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_CPU_AUTOPROBE=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_ZONE_DMA32 is not set -# CONFIG_AUDIT_ARCH is not set -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_X86_32_SMP=y -CONFIG_X86_HT=y -CONFIG_X86_32_LAZY_GS=y -CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" -CONFIG_ARCH_CPU_PROBE_RELEASE=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_IRQ_WORK=y -CONFIG_BUILDTIME_EXTABLE_SORT=y - -# -# General setup -# -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -CONFIG_KERNEL_GZIP=y -# CONFIG_KERNEL_BZIP2 is not set -# CONFIG_KERNEL_LZMA is not set -# CONFIG_KERNEL_XZ is not set -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="(none)" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -CONFIG_FHANDLE=y -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_GENERIC_PENDING_IRQ=y -CONFIG_IRQ_EDGE_EOI_HANDLER=y -CONFIG_IRQ_FORCED_THREADING=y -CONFIG_SPARSE_IRQ=y -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_ALWAYS_USE_PERSISTENT_CLOCK=y -CONFIG_KTIME_SCALAR=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y -CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y -CONFIG_GENERIC_CMOS_UPDATE=y - -# -# Timers subsystem -# -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set - -# -# CPU/Task time and stats accounting -# -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_IRQ_TIME_ACCOUNTING is not set -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set - -# -# RCU Subsystem -# -CONFIG_TREE_RCU=y -# CONFIG_PREEMPT_RCU is not set -CONFIG_RCU_STALL_COMMON=y -CONFIG_RCU_FANOUT=32 -CONFIG_RCU_FANOUT_LEAF=16 -# CONFIG_RCU_FANOUT_EXACT is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_RCU_NOCB_CPU is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=17 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y -CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -CONFIG_UIDGID_CONVERTED=y -# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set -# CONFIG_SCHED_AUTOGROUP is not set -CONFIG_SYSFS_DEPRECATED=y -CONFIG_SYSFS_DEPRECATED_V2=y -# CONFIG_RELAY is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -# CONFIG_RD_BZIP2 is not set -# CONFIG_RD_LZMA is not set -# CONFIG_RD_XZ is not set -# CONFIG_RD_LZO is not set -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_HAVE_UID16=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -CONFIG_SYSCTL_EXCEPTION_TRACE=y -CONFIG_KALLSYMS=y -CONFIG_KALLSYMS_ALL=y -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -CONFIG_ELF_CORE=y -# CONFIG_PCSPKR_PLATFORM is not set -CONFIG_HAVE_PCSPKR_PLATFORM=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y - -# -# Kernel Performance Events And Counters -# -CONFIG_PERF_EVENTS=y -# CONFIG_DEBUG_PERF_USE_VMALLOC is not set -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_COMPAT_BRK=y -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_KPROBES_ON_FTRACE=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -CONFIG_STOP_MACHINE=y -CONFIG_BLOCK=y -# CONFIG_LBDAF is not set -CONFIG_BLK_DEV_BSG=y -CONFIG_BLK_DEV_BSGLIB=y -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -CONFIG_EFI_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -# CONFIG_FREEZER is not set - -# -# Processor type and features -# -CONFIG_ZONE_DMA=y -CONFIG_SMP=y -CONFIG_X86_MPPARSE=y -# CONFIG_X86_BIGSMP is not set -CONFIG_X86_EXTENDED_PLATFORM=y -# CONFIG_X86_GOLDFISH is not set -# CONFIG_X86_WANT_INTEL_MID is not set -# CONFIG_X86_RDC321X is not set -# CONFIG_X86_32_NON_STANDARD is not set -# CONFIG_X86_32_IRIS is not set -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_PARAVIRT_GUEST is not set -CONFIG_NO_BOOTMEM=y -# CONFIG_MEMTEST is not set -# CONFIG_M486 is not set -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -CONFIG_M686=y -# CONFIG_MPENTIUMII is not set -# CONFIG_MPENTIUMIII is not set -# CONFIG_MPENTIUMM is not set -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MEFFICEON is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MELAN is not set -# CONFIG_MGEODEGX1 is not set -# CONFIG_MGEODE_LX is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -# CONFIG_MVIAC7 is not set -# CONFIG_MCORE2 is not set -# CONFIG_MATOM is not set -# CONFIG_X86_GENERIC is not set -CONFIG_X86_INTERNODE_CACHE_SHIFT=5 -CONFIG_X86_L1_CACHE_SHIFT=5 -CONFIG_X86_PPRO_FENCE=y -CONFIG_X86_USE_PPRO_CHECKSUM=y -CONFIG_X86_TSC=y -CONFIG_X86_CMPXCHG64=y -CONFIG_X86_CMOV=y -CONFIG_X86_MINIMUM_CPU_FAMILY=5 -CONFIG_X86_DEBUGCTLMSR=y -# CONFIG_PROCESSOR_SELECT is not set -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_CYRIX_32=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_CENTAUR=y -CONFIG_CPU_SUP_TRANSMETA_32=y -CONFIG_CPU_SUP_UMC_32=y -# CONFIG_HPET_TIMER is not set -# CONFIG_DMI is not set -CONFIG_NR_CPUS=8 -# CONFIG_SCHED_SMT is not set -CONFIG_SCHED_MC=y -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -CONFIG_X86_LOCAL_APIC=y -CONFIG_X86_IO_APIC=y -# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set -# CONFIG_X86_MCE is not set -# CONFIG_VM86 is not set -# CONFIG_TOSHIBA is not set -# CONFIG_I8K is not set -# CONFIG_X86_REBOOTFIXUPS is not set -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -CONFIG_NOHIGHMEM=y -# CONFIG_HIGHMEM4G is not set -# CONFIG_HIGHMEM64G is not set -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_3G_OPT is not set -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_2G_OPT is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0 -# CONFIG_X86_PAE is not set -CONFIG_ARCH_FLATMEM_ENABLE=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_ILLEGAL_POINTER_VALUE=0 -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_FLATMEM_MANUAL=y -# CONFIG_SPARSEMEM_MANUAL is not set -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 -# CONFIG_TRANSPARENT_HUGEPAGE is not set -CONFIG_CROSS_MEMORY_ATTACH=y -# CONFIG_CLEANCACHE is not set -# CONFIG_FRONTSWAP is not set -# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set -CONFIG_X86_RESERVE_LOW=64 -# CONFIG_MATH_EMULATION is not set -# CONFIG_MTRR is not set -# CONFIG_ARCH_RANDOM is not set -# CONFIG_X86_SMAP is not set -CONFIG_SECCOMP=y -# CONFIG_CC_STACKPROTECTOR is not set -# CONFIG_HZ_100 is not set -CONFIG_HZ_250=y -# CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -# CONFIG_SCHED_HRTICK is not set -# CONFIG_KEXEC is not set -# CONFIG_RELOCATABLE is not set -CONFIG_PHYSICAL_ALIGN=0x100000 -CONFIG_HOTPLUG_CPU=y -# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set -# CONFIG_DEBUG_HOTPLUG_CPU0 is not set -CONFIG_COMPAT_VDSO=y -# CONFIG_CMDLINE_BOOL is not set - -# -# Power management and ACPI options -# -# CONFIG_SUSPEND is not set -# CONFIG_HIBERNATION is not set -# CONFIG_PM_RUNTIME is not set -# CONFIG_SFI is not set - -# -# CPU Frequency scaling -# -# CONFIG_CPU_FREQ is not set -# CONFIG_CPU_IDLE is not set -# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set - -# -# Bus options (PCI etc.) -# -# CONFIG_PCI is not set -CONFIG_ISA_DMA_API=y -# CONFIG_ISA is not set -# CONFIG_SCx200 is not set -# CONFIG_OLPC is not set -# CONFIG_ALIX is not set -# CONFIG_NET5501 is not set -# CONFIG_PCCARD is not set - -# -# Executable file formats / Emulations -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set -CONFIG_HAVE_AOUT=y -CONFIG_BINFMT_AOUT=y -# CONFIG_BINFMT_MISC is not set -CONFIG_COREDUMP=y -CONFIG_HAVE_TEXT_POKE_SMP=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_DIAG is not set -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -CONFIG_XFRM=y -CONFIG_XFRM_ALGO=y -# CONFIG_XFRM_USER is not set -# CONFIG_XFRM_SUB_POLICY is not set -# CONFIG_XFRM_MIGRATE is not set -# CONFIG_XFRM_STATISTICS is not set -CONFIG_NET_KEY=y -# CONFIG_NET_KEY_MIGRATE is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -CONFIG_INET_DIAG=y -CONFIG_INET_TCP_DIAG=y -# CONFIG_INET_UDP_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -# CONFIG_VSOCKETS is not set -CONFIG_RPS=y -CONFIG_RFS_ACCEL=y -CONFIG_XPS=y -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="" -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -# CONFIG_STANDALONE is not set -CONFIG_PREVENT_FIRMWARE_BUILD=y -CONFIG_FW_LOADER=y -CONFIG_FIRMWARE_IN_KERNEL=y -CONFIG_EXTRA_FIRMWARE="" -# CONFIG_FW_LOADER_USER_HELPER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CMA is not set - -# -# Bus devices -# -CONFIG_CONNECTOR=y -CONFIG_PROC_EVENTS=y -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -# CONFIG_BLK_DEV is not set - -# -# Misc devices -# -# CONFIG_SENSORS_LIS3LV02D is not set -# CONFIG_AD525X_DPOT is not set -# CONFIG_ICS932S401 is not set -# CONFIG_ATMEL_SSC is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_APDS9802ALS is not set -# CONFIG_ISL29003 is not set -# CONFIG_ISL29020 is not set -# CONFIG_SENSORS_TSL2550 is not set -# CONFIG_SENSORS_BH1780 is not set -# CONFIG_SENSORS_BH1770 is not set -# CONFIG_SENSORS_APDS990X is not set -# CONFIG_HMC6352 is not set -# CONFIG_DS1682 is not set -# CONFIG_VMWARE_BALLOON is not set -# CONFIG_BMP085_I2C is not set -# CONFIG_USB_SWITCH_FSA9480 is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_AT24 is not set -# CONFIG_EEPROM_LEGACY is not set -# CONFIG_EEPROM_MAX6875 is not set -# CONFIG_EEPROM_93CX6 is not set - -# -# Texas Instruments shared transport line discipline -# -# CONFIG_SENSORS_LIS3_I2C is not set - -# -# Altera FPGA firmware download module -# -# CONFIG_ALTERA_STAPL is not set -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -CONFIG_RAID_ATTRS=m -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_TGT=m -CONFIG_SCSI_NETLINK=y -CONFIG_SCSI_PROC_FS=y - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=y -CONFIG_CHR_DEV_ST=m -CONFIG_CHR_DEV_OSST=m -CONFIG_BLK_DEV_SR=y -# CONFIG_BLK_DEV_SR_VENDOR is not set -CONFIG_CHR_DEV_SG=y -CONFIG_CHR_DEV_SCH=m -CONFIG_SCSI_MULTI_LUN=y -CONFIG_SCSI_CONSTANTS=y -CONFIG_SCSI_LOGGING=y -CONFIG_SCSI_SCAN_ASYNC=y - -# -# SCSI Transports -# -CONFIG_SCSI_SPI_ATTRS=m -CONFIG_SCSI_FC_ATTRS=m -CONFIG_SCSI_FC_TGT_ATTRS=y -CONFIG_SCSI_ISCSI_ATTRS=m -CONFIG_SCSI_SAS_ATTRS=m -CONFIG_SCSI_SAS_LIBSAS=m -CONFIG_SCSI_SAS_HOST_SMP=y -CONFIG_SCSI_SRP_ATTRS=m -CONFIG_SCSI_SRP_TGT_ATTRS=y -CONFIG_SCSI_LOWLEVEL=y -# CONFIG_ISCSI_TCP is not set -# CONFIG_ISCSI_BOOT_SYSFS is not set -# CONFIG_SCSI_UFSHCD is not set -CONFIG_LIBFC=m -CONFIG_LIBFCOE=m -CONFIG_SCSI_DEBUG=m -CONFIG_SCSI_DH=y -CONFIG_SCSI_DH_RDAC=m -CONFIG_SCSI_DH_HP_SW=m -CONFIG_SCSI_DH_EMC=m -CONFIG_SCSI_DH_ALUA=m -CONFIG_SCSI_OSD_INITIATOR=m -CONFIG_SCSI_OSD_ULD=m -CONFIG_SCSI_OSD_DPRINT_SENSE=1 -# CONFIG_SCSI_OSD_DEBUG is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_TARGET_CORE is not set -# CONFIG_MACINTOSH_DRIVERS is not set -# CONFIG_NETDEVICES is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set -# CONFIG_INPUT_SPARSEKMAP is not set -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -CONFIG_INPUT_MOUSEDEV=y -CONFIG_INPUT_MOUSEDEV_PSAUX=y -CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 -CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 -# CONFIG_INPUT_JOYDEV is not set -CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -CONFIG_SERIO=y -# CONFIG_SERIO_I8042 is not set -CONFIG_SERIO_SERPORT=y -# CONFIG_SERIO_CT82C710 is not set -CONFIG_SERIO_LIBPS2=y -# CONFIG_SERIO_RAW is not set -# CONFIG_SERIO_ALTERA_PS2 is not set -# CONFIG_SERIO_PS2MULT is not set -# CONFIG_SERIO_ARC_PS2 is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_TTY=y -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_HW_CONSOLE=y -CONFIG_VT_HW_CONSOLE_BINDING=y -CONFIG_UNIX98_PTYS=y -CONFIG_DEVPTS_MULTIPLE_INSTANCES=y -CONFIG_LEGACY_PTYS=y -CONFIG_LEGACY_PTY_COUNT=0 -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_DEVKMEM is not set - -# -# Serial drivers -# -# CONFIG_SERIAL_8250 is not set -CONFIG_FIX_EARLYCON_MEM=y - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_ARC is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_NVRAM is not set -# CONFIG_R3964 is not set -# CONFIG_MWAVE is not set -# CONFIG_PC8736x_GPIO is not set -# CONFIG_NSC_GPIO is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -CONFIG_I2C=y -CONFIG_I2C_BOARDINFO=y -# CONFIG_I2C_COMPAT is not set -# CONFIG_I2C_CHARDEV is not set -# CONFIG_I2C_MUX is not set -# CONFIG_I2C_HELPER_AUTO is not set -CONFIG_I2C_SMBUS=m - -# -# I2C Algorithms -# -CONFIG_I2C_ALGOBIT=m -CONFIG_I2C_ALGOPCF=m -CONFIG_I2C_ALGOPCA=m - -# -# I2C Hardware Bus support -# - -# -# I2C system bus drivers (mostly embedded / system-on-chip) -# -CONFIG_I2C_OCORES=m -CONFIG_I2C_PCA_PLATFORM=m -# CONFIG_I2C_PXA_PCI is not set -CONFIG_I2C_SIMTEC=m -# CONFIG_I2C_XILINX is not set - -# -# External I2C/SMBus adapter drivers -# -CONFIG_I2C_PARPORT_LIGHT=m -CONFIG_I2C_TAOS_EVM=m - -# -# Other I2C/SMBus bus drivers -# -CONFIG_I2C_STUB=m -# CONFIG_I2C_DEBUG_CORE is not set -# CONFIG_I2C_DEBUG_ALGO is not set -# CONFIG_I2C_DEBUG_BUS is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# -# CONFIG_PTP_1588_CLOCK is not set - -# -# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. -# -# CONFIG_PTP_1588_CLOCK_PCH is not set -CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y -CONFIG_GPIO_DEVRES=y -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_POWER_AVS is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -CONFIG_SSB=m -# CONFIG_SSB_SILENT is not set -# CONFIG_SSB_DEBUG is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_88PM860X is not set -# CONFIG_MFD_88PM800 is not set -# CONFIG_MFD_88PM805 is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_MFD_TI_AM335X_TSCADC is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_LM3533 is not set -# CONFIG_TPS6105X is not set -# CONFIG_TPS6507X is not set -# CONFIG_MFD_TPS65217 is not set -# CONFIG_MFD_TPS6586X is not set -# CONFIG_MFD_TPS80031 is not set -# CONFIG_TWL4030_CORE is not set -# CONFIG_TWL6040_CORE is not set -# CONFIG_MFD_STMPE is not set -# CONFIG_MFD_TC3589X is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_MFD_SMSC is not set -# CONFIG_PMIC_DA903X is not set -# CONFIG_MFD_DA9052_I2C is not set -# CONFIG_MFD_DA9055 is not set -# CONFIG_PMIC_ADP5520 is not set -# CONFIG_MFD_LP8788 is not set -# CONFIG_MFD_MAX77686 is not set -# CONFIG_MFD_MAX77693 is not set -# CONFIG_MFD_MAX8907 is not set -# CONFIG_MFD_MAX8925 is not set -# CONFIG_MFD_MAX8997 is not set -# CONFIG_MFD_MAX8998 is not set -# CONFIG_MFD_SEC_CORE is not set -# CONFIG_MFD_ARIZONA_I2C is not set -# CONFIG_MFD_WM8400 is not set -# CONFIG_MFD_WM831X_I2C is not set -# CONFIG_MFD_WM8350_I2C is not set -# CONFIG_MFD_WM8994 is not set -# CONFIG_MFD_PCF50633 is not set -# CONFIG_MFD_MC13XXX_I2C is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_MFD_WL1273_CORE is not set -# CONFIG_MFD_TPS65090 is not set -# CONFIG_MFD_RC5T583 is not set -# CONFIG_MFD_PALMAS is not set -# CONFIG_MFD_RETU is not set -# CONFIG_MFD_AS3711 is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -# CONFIG_FB_DDC is not set -# CONFIG_FB_BOOT_VESA_SUPPORT is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_SYS_FOPS is not set -# CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -CONFIG_FB_MODE_HELPERS=y -CONFIG_FB_TILEBLITTING=y - -# -# Frame buffer hardware drivers -# -# CONFIG_FB_ARC is not set -# CONFIG_FB_VGA16 is not set -# CONFIG_FB_UVESA is not set -# CONFIG_FB_VESA is not set -# CONFIG_FB_N411 is not set -# CONFIG_FB_HGA is not set -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_GOLDFISH is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_BROADSHEET is not set -# CONFIG_FB_AUO_K190X is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Console display driver support -# -# CONFIG_VGA_CONSOLE is not set -CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -CONFIG_LOGO=y -CONFIG_LOGO_LINUX_MONO=y -CONFIG_LOGO_LINUX_VGA16=y -CONFIG_LOGO_LINUX_CLUT224=y -# CONFIG_SOUND is not set - -# -# HID support -# -# CONFIG_HID is not set - -# -# I2C HID support -# -# CONFIG_I2C_HID is not set -# CONFIG_USB_ARCH_HAS_OHCI is not set -# CONFIG_USB_ARCH_HAS_EHCI is not set -# CONFIG_USB_ARCH_HAS_XHCI is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -CONFIG_NEW_LEDS=y -CONFIG_LEDS_CLASS=y - -# -# LED drivers -# -# CONFIG_LEDS_LM3530 is not set -# CONFIG_LEDS_LM3642 is not set -CONFIG_LEDS_PCA9532=m -CONFIG_LEDS_LP3944=m -# CONFIG_LEDS_LP5521 is not set -# CONFIG_LEDS_LP5523 is not set -CONFIG_LEDS_PCA955X=m -# CONFIG_LEDS_PCA9633 is not set -CONFIG_LEDS_BD2802=m -# CONFIG_LEDS_TCA6507 is not set -# CONFIG_LEDS_LM355x is not set -# CONFIG_LEDS_OT200 is not set -# CONFIG_LEDS_BLINKM is not set -CONFIG_LEDS_TRIGGERS=y - -# -# LED Triggers -# -CONFIG_LEDS_TRIGGER_TIMER=m -# CONFIG_LEDS_TRIGGER_ONESHOT is not set -CONFIG_LEDS_TRIGGER_HEARTBEAT=m -CONFIG_LEDS_TRIGGER_BACKLIGHT=m -# CONFIG_LEDS_TRIGGER_CPU is not set -CONFIG_LEDS_TRIGGER_DEFAULT_ON=m - -# -# iptables trigger is under Netfilter config (LED target) -# -# CONFIG_LEDS_TRIGGER_TRANSIENT is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_EDAC is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# I2C RTC drivers -# -# CONFIG_RTC_DRV_DS1307 is not set -# CONFIG_RTC_DRV_DS1374 is not set -# CONFIG_RTC_DRV_DS1672 is not set -# CONFIG_RTC_DRV_DS3232 is not set -# CONFIG_RTC_DRV_MAX6900 is not set -# CONFIG_RTC_DRV_RS5C372 is not set -# CONFIG_RTC_DRV_ISL1208 is not set -# CONFIG_RTC_DRV_ISL12022 is not set -# CONFIG_RTC_DRV_X1205 is not set -# CONFIG_RTC_DRV_PCF8523 is not set -# CONFIG_RTC_DRV_PCF8563 is not set -# CONFIG_RTC_DRV_PCF8583 is not set -# CONFIG_RTC_DRV_M41T80 is not set -# CONFIG_RTC_DRV_BQ32K is not set -# CONFIG_RTC_DRV_S35390A is not set -# CONFIG_RTC_DRV_FM3130 is not set -# CONFIG_RTC_DRV_RX8581 is not set -# CONFIG_RTC_DRV_RX8025 is not set -# CONFIG_RTC_DRV_EM3027 is not set -# CONFIG_RTC_DRV_RV3029C2 is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -# CONFIG_RTC_DRV_CMOS is not set -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set -# CONFIG_RTC_DRV_DS2404 is not set - -# -# on-CPU RTC drivers -# - -# -# HID Sensor RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -# CONFIG_STAGING is not set -# CONFIG_X86_PLATFORM_DEVICES is not set - -# -# Hardware Spinlock drivers -# -CONFIG_CLKSRC_I8253=y -CONFIG_CLKEVT_I8253=y -CONFIG_CLKBLD_I8253=y -# CONFIG_MAILBOX is not set -# CONFIG_IOMMU_SUPPORT is not set - -# -# Remoteproc drivers -# -# CONFIG_STE_MODEM_RPROC is not set - -# -# Rpmsg drivers -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_PWM is not set -# CONFIG_IPACK_BUS is not set - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -CONFIG_FIRMWARE_MEMMAP=y -# CONFIG_DELL_RBU is not set -# CONFIG_DCDBAS is not set -# CONFIG_ISCSI_IBFT_FIND is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# File systems -# -CONFIG_DCACHE_WORD_ACCESS=y -CONFIG_EXT2_FS=y -# CONFIG_EXT2_FS_XATTR is not set -# CONFIG_EXT2_FS_XIP is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -CONFIG_FS_POSIX_ACL=y -CONFIG_EXPORTFS=y -CONFIG_FILE_LOCKING=y -# CONFIG_FSNOTIFY is not set -# CONFIG_DNOTIFY is not set -# CONFIG_INOTIFY_USER is not set -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set -CONFIG_GENERIC_ACL=y - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -CONFIG_PROC_KCORE=y -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -CONFIG_TMPFS_POSIX_ACL=y -CONFIG_TMPFS_XATTR=y -# CONFIG_HUGETLBFS is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -# CONFIG_NLS is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -CONFIG_UNUSED_SYMBOLS=y -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -CONFIG_SCHED_DEBUG=y -CONFIG_SCHEDSTATS=y -CONFIG_TIMER_STATS=y -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -CONFIG_STACKTRACE=y -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_VIRTUAL is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -CONFIG_ARCH_WANT_FRAME_POINTERS=y -CONFIG_FRAME_POINTER=y -# CONFIG_BOOT_PRINTK_DELAY is not set - -# -# RCU Debugging -# -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_CPU_STALL_INFO is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_LKDTM is not set -# CONFIG_NOTIFIER_ERROR_INJECTION is not set -# CONFIG_FAULT_INJECTION is not set -CONFIG_LATENCYTOP=y -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -# CONFIG_FTRACE is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_DYNAMIC_DEBUG is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -CONFIG_HAVE_ARCH_KMEMCHECK=y -# CONFIG_KMEMCHECK is not set -# CONFIG_TEST_KSTRTOX is not set -CONFIG_STRICT_DEVMEM=y -# CONFIG_X86_VERBOSE_BOOTUP is not set -CONFIG_EARLY_PRINTK=y -# CONFIG_DEBUG_STACKOVERFLOW is not set -# CONFIG_X86_PTDUMP is not set -CONFIG_DEBUG_RODATA=y -# CONFIG_DEBUG_RODATA_TEST is not set -# CONFIG_DEBUG_SET_MODULE_RONX is not set -# CONFIG_DEBUG_NX_TEST is not set -CONFIG_DOUBLEFAULT=y -# CONFIG_IOMMU_STRESS is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -# CONFIG_IO_DELAY_0X80 is not set -CONFIG_IO_DELAY_0XED=y -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=1 -# CONFIG_DEBUG_BOOT_PARAMS is not set -# CONFIG_CPA_DEBUG is not set -CONFIG_OPTIMIZE_INLINING=y -# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set -# CONFIG_DEBUG_NMI_SELFTEST is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -CONFIG_CRYPTO_AEAD=m -CONFIG_CRYPTO_AEAD2=y -CONFIG_CRYPTO_BLKCIPHER=y -CONFIG_CRYPTO_BLKCIPHER2=y -CONFIG_CRYPTO_HASH=y -CONFIG_CRYPTO_HASH2=y -CONFIG_CRYPTO_RNG=m -CONFIG_CRYPTO_RNG2=y -CONFIG_CRYPTO_PCOMP=m -CONFIG_CRYPTO_PCOMP2=y -CONFIG_CRYPTO_MANAGER=y -CONFIG_CRYPTO_MANAGER2=y -# CONFIG_CRYPTO_USER is not set -CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y -CONFIG_CRYPTO_GF128MUL=m -CONFIG_CRYPTO_NULL=m -# CONFIG_CRYPTO_PCRYPT is not set -CONFIG_CRYPTO_WORKQUEUE=y -CONFIG_CRYPTO_CRYPTD=m -CONFIG_CRYPTO_AUTHENC=m -CONFIG_CRYPTO_TEST=m - -# -# Authenticated Encryption with Associated Data -# -CONFIG_CRYPTO_CCM=m -CONFIG_CRYPTO_GCM=m -CONFIG_CRYPTO_SEQIV=m - -# -# Block modes -# -CONFIG_CRYPTO_CBC=y -CONFIG_CRYPTO_CTR=m -CONFIG_CRYPTO_CTS=m -CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_LRW=m -CONFIG_CRYPTO_PCBC=m -CONFIG_CRYPTO_XTS=m - -# -# Hash modes -# -CONFIG_CRYPTO_HMAC=y -CONFIG_CRYPTO_XCBC=m -CONFIG_CRYPTO_VMAC=m - -# -# Digest -# -CONFIG_CRYPTO_CRC32C=y -CONFIG_CRYPTO_CRC32C_INTEL=m -# CONFIG_CRYPTO_CRC32 is not set -# CONFIG_CRYPTO_CRC32_PCLMUL is not set -CONFIG_CRYPTO_GHASH=m -CONFIG_CRYPTO_MD4=m -CONFIG_CRYPTO_MD5=y -CONFIG_CRYPTO_MICHAEL_MIC=m -CONFIG_CRYPTO_RMD128=m -CONFIG_CRYPTO_RMD160=m -CONFIG_CRYPTO_RMD256=m -CONFIG_CRYPTO_RMD320=m -CONFIG_CRYPTO_SHA1=m -CONFIG_CRYPTO_SHA256=m -CONFIG_CRYPTO_SHA512=m -CONFIG_CRYPTO_TGR192=m -CONFIG_CRYPTO_WP512=m - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -CONFIG_CRYPTO_AES_586=m -# CONFIG_CRYPTO_AES_NI_INTEL is not set -CONFIG_CRYPTO_ANUBIS=m -CONFIG_CRYPTO_ARC4=m -CONFIG_CRYPTO_BLOWFISH=m -CONFIG_CRYPTO_BLOWFISH_COMMON=m -CONFIG_CRYPTO_CAMELLIA=m -CONFIG_CRYPTO_CAST_COMMON=m -CONFIG_CRYPTO_CAST5=m -CONFIG_CRYPTO_CAST6=m -CONFIG_CRYPTO_DES=m -CONFIG_CRYPTO_FCRYPT=m -CONFIG_CRYPTO_KHAZAD=m -CONFIG_CRYPTO_SALSA20=m -CONFIG_CRYPTO_SALSA20_586=m -CONFIG_CRYPTO_SEED=m -CONFIG_CRYPTO_SERPENT=m -# CONFIG_CRYPTO_SERPENT_SSE2_586 is not set -CONFIG_CRYPTO_TEA=m -CONFIG_CRYPTO_TWOFISH=m -CONFIG_CRYPTO_TWOFISH_COMMON=m -CONFIG_CRYPTO_TWOFISH_586=m - -# -# Compression -# -CONFIG_CRYPTO_DEFLATE=m -CONFIG_CRYPTO_ZLIB=m -CONFIG_CRYPTO_LZO=m - -# -# Random Number Generation -# -CONFIG_CRYPTO_ANSI_CPRNG=m -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -CONFIG_CRYPTO_DEV_PADLOCK=y -CONFIG_CRYPTO_DEV_PADLOCK_AES=m -CONFIG_CRYPTO_DEV_PADLOCK_SHA=m -CONFIG_HAVE_KVM=y -CONFIG_VIRTUALIZATION=y -# CONFIG_VHOST_NET is not set -# CONFIG_LGUEST is not set -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_FIND_FIRST_BIT=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_IO=y -CONFIG_CRC_CCITT=y -CONFIG_CRC16=y -CONFIG_CRC_T10DIF=y -CONFIG_CRC_ITU_T=y -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -CONFIG_CRC7=y -CONFIG_LIBCRC32C=y -# CONFIG_CRC8 is not set -CONFIG_ZLIB_INFLATE=y -CONFIG_ZLIB_DEFLATE=m -CONFIG_LZO_COMPRESS=m -CONFIG_LZO_DECOMPRESS=m -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_CPU_RMAP=y -CONFIG_DQL=y -CONFIG_NLATTR=y -CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/repos/ports-foc/include/32-bit/l4/util/l4_macros.h b/repos/ports-foc/include/32-bit/l4/util/l4_macros.h deleted file mode 100644 index 5e022e497..000000000 --- a/repos/ports-foc/include/32-bit/l4/util/l4_macros.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__L4_MACROS_H_ -#define _L4__UTIL__L4_MACROS_H_ - -#define l4util_idfmt "%lx" -#define l4_addr_fmt "%08lx" -#define l4util_idstr(tid) (tid >> L4_CAP_SHIFT) - -#endif /* _L4__UTIL__L4_MACROS_H_ */ diff --git a/repos/ports-foc/include/64-bit/l4/util/l4_macros.h b/repos/ports-foc/include/64-bit/l4/util/l4_macros.h deleted file mode 100644 index 05528e7bb..000000000 --- a/repos/ports-foc/include/64-bit/l4/util/l4_macros.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__L4_MACROS_H_ -#define _L4__UTIL__L4_MACROS_H_ - -#define l4util_idfmt "%lx" -#define l4_addr_fmt "%016lx" -#define l4util_idstr(tid) (tid >> L4_CAP_SHIFT) - -#endif /* _L4__UTIL__L4_MACROS_H_ */ diff --git a/repos/ports-foc/include/genode/balloon.h b/repos/ports-foc/include/genode/balloon.h deleted file mode 100644 index 69e097786..000000000 --- a/repos/ports-foc/include/genode/balloon.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * \brief Genode C API balloon functions - * \author Stefan Kalkowski - * \date 2013-09-19 - */ - -/* - * Copyright (C) 2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__BALLOON_H_ -#define _INCLUDE__GENODE__BALLOON_H_ - -#include -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV l4_cap_idx_t genode_balloon_irq_cap(void); - -L4_CV void genode_balloon_free_chunk(unsigned long addr); - -L4_CV void genode_balloon_free_done(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _INCLUDE__GENODE__BALLOON_H_ */ diff --git a/repos/ports-foc/include/genode/block.h b/repos/ports-foc/include/genode/block.h deleted file mode 100644 index 49effd29d..000000000 --- a/repos/ports-foc/include/genode/block.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * \brief Genode C API block driver related functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2010-07-08 - */ - -/* - * Copyright (C) 2010-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__BLOCK_H_ -#define _INCLUDE__GENODE__BLOCK_H_ - -#include -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV unsigned genode_block_count(void); - -L4_CV const char *genode_block_name(unsigned idx); - -L4_CV l4_cap_idx_t genode_block_irq_cap(unsigned idx); - -L4_CV void genode_block_register_callback(FASTCALL void (*func)(void*, short, - void*, unsigned long)); - -L4_CV void genode_block_geometry(unsigned idx, unsigned long *blk_cnt, - unsigned long *blk_sz, int *writeable, - unsigned long *req_queue_sz); - -L4_CV void* genode_block_request(unsigned idx, unsigned long sz, - void *req, unsigned long *offset); - -L4_CV void genode_block_submit(unsigned idx, unsigned long queue_offset, - unsigned long size, unsigned long long disc_offset, - int write); - -L4_CV void genode_block_collect_responses(unsigned idx); - -#ifdef __cplusplus -} -#endif - -#endif //_INCLUDE__GENODE__BLOCK_H_ diff --git a/repos/ports-foc/include/genode/framebuffer.h b/repos/ports-foc/include/genode/framebuffer.h deleted file mode 100644 index 286465347..000000000 --- a/repos/ports-foc/include/genode/framebuffer.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * \brief Genode C API framebuffer functions needed by Linux - * \author Stefan Kalkowski - * \date 2009-06-08 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__FRAMEBUFFER_H_ -#define _INCLUDE__GENODE__FRAMEBUFFER_H_ - - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Returns the count of screens (framebuffer + input devices) - * given by config-file information - */ -L4_CV int genode_screen_count(void); - -/** - * Get the size of the framebuffer - * - * \param screen the index of the framebuffer - * \return the size - */ -L4_CV unsigned long genode_fb_size(unsigned int screen); - -/** - * Attach the framebuffer to our address space - * - * \param screen the index of the framebuffer - * \return the virtual address the framebuffer was attached to - */ -L4_CV void *genode_fb_attach(unsigned int screen); - -/** - * Get information about the resolution of the framebuffer - * - * \param screen the index of the framebuffer - * \param out_w resulting pointer to the horizontal resolution info - * \param out_h resulting pointer to the vertical resolution info - */ -L4_CV void genode_fb_info(unsigned int screen, int *out_w, int *out_h); - -/** - * Refresh a specified area of the framebuffer - * - * \param screen the index of the framebuffer - * \param x x-coordinate of the area's position - * \param y y-coordinate of the area's position - * \param w width of the area - * \param h height of the area - */ -L4_CV void genode_fb_refresh(unsigned int screen, int x, int y, int w, int h); - -/** - * Close the framebuffer session - * - * \param screen the index of the framebuffer - */ -L4_CV void genode_fb_close(unsigned screen); - -//int genode_nit_view_create(unsigned screen, unsigned view); -// -//void genode_nit_view_destroy(unsigned screen, unsigned view); -// -//void genode_nit_view_back(unsigned screen, unsigned view); -// -//void genode_nit_view_place(unsigned screen, unsigned view, int x, -// int y, int w, int h); -// -//void genode_nit_view_stack(unsigned int screen, unsigned view, -// unsigned neighbor, int behind); -// -///** -// * Close all views of a nitpicker session -// * -// * \param screen the index of the framebuffer -// */ -//void genode_nit_close_all_views(unsigned screen); - -#ifdef __cplusplus -} -#endif - - -#endif //_INCLUDE__GENODE__FRAMEBUFFER_H_ diff --git a/repos/ports-foc/include/genode/input.h b/repos/ports-foc/include/genode/input.h deleted file mode 100644 index b84fb09c6..000000000 --- a/repos/ports-foc/include/genode/input.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * \brief Genode C API input functions needed by Linux - * \author Stefan Kalkowski - * \date 2009-06-08 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__INPUT_H_ -#define _INCLUDE__GENODE__INPUT_H_ - - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef i386 -#define FASTCALL __attribute__((regparm(3))) -#else -#define FASTCALL -#endif - -L4_CV void genode_input_register_callback(FASTCALL void (*genode_input_event) - (void*,unsigned int, unsigned int, int)); - -L4_CV void genode_input_unregister_callback(void); - -L4_CV void genode_input_register_keyb(unsigned int idx, void* dev); - -L4_CV void genode_input_register_mouse(unsigned int idx, void* dev); - -L4_CV void genode_input_unregister_keyb(unsigned int idx); - -L4_CV void genode_input_unregister_mouse(unsigned int idx); - -L4_CV void genode_input_handle_events(void); - -#ifdef __cplusplus -} -#endif - - -#endif //_INCLUDE__GENODE__INPUT_H_ diff --git a/repos/ports-foc/include/genode/linkage.h b/repos/ports-foc/include/genode/linkage.h deleted file mode 100644 index 15d0ec4b7..000000000 --- a/repos/ports-foc/include/genode/linkage.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - * \brief Genode linkage defines needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-11-24 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__LINKAGE_H_ -#define _INCLUDE__GENODE__LINKAGE_H_ - -#ifdef i386 -#define FASTCALL __attribute__((regparm(3))) -#else -#define FASTCALL -#endif - -#endif /* _INCLUDE__GENODE__LINKAGE_H_ */ diff --git a/repos/ports-foc/include/genode/net.h b/repos/ports-foc/include/genode/net.h deleted file mode 100644 index 309b115c2..000000000 --- a/repos/ports-foc/include/genode/net.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * \brief Genode C API network functions needed by OKLinux - * \author Stefan Kalkowski - * \date 2009-09-10 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__NET_H_ -#define _INCLUDE__GENODE__NET_H_ - -#include -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV l4_cap_idx_t genode_net_irq_cap (void); -L4_CV int genode_net_ready (void); -L4_CV void genode_net_start (void *dev, FASTCALL void (*func)(void*, void*, unsigned long)); -L4_CV void genode_net_stop (void); -L4_CV void genode_net_mac (void* mac_addr, unsigned long size); -L4_CV int genode_net_tx (void* addr, unsigned long len); -L4_CV int genode_net_tx_ack_avail(void); -L4_CV void genode_net_tx_ack (void); -L4_CV void genode_net_rx_receive (void); -L4_CV void *genode_net_memcpy (void *dst, void const *src, unsigned long size); - -#ifdef __cplusplus -} -#endif - -#endif /* _INCLUDE__GENODE__NET_H_ */ diff --git a/repos/ports-foc/include/genode/string.h b/repos/ports-foc/include/genode/string.h deleted file mode 100644 index bb6102d2f..000000000 --- a/repos/ports-foc/include/genode/string.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * \brief Genode C API string related functions - * \author Stefan Kalkowski - * \date 2013-06-26 - */ - -/* - * Copyright (C) 2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__STRING_H_ -#define _INCLUDE__GENODE__STRING_H_ - -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - - L4_CV void genode_memcpy(void* dst, void *src, unsigned long size); - -#ifdef __cplusplus -} -#endif - -#endif //_INCLUDE__GENODE__STRING_H_ diff --git a/repos/ports-foc/include/genode/terminal.h b/repos/ports-foc/include/genode/terminal.h deleted file mode 100644 index f51d8f76c..000000000 --- a/repos/ports-foc/include/genode/terminal.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * \brief Genode C API serial/console driver related functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-09-16 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _INCLUDE__GENODE__TERMINAL_H_ -#define _INCLUDE__GENODE__TERMINAL_H_ - - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV signed char genode_terminal_readchar(unsigned idx, char *buf, unsigned long sz); -L4_CV void genode_terminal_writechar(unsigned idx, const char *buf, unsigned long sz); -L4_CV l4_cap_idx_t genode_terminal_irq(unsigned idx); -L4_CV void genode_terminal_stop(unsigned idx); -L4_CV unsigned genode_terminal_count(void); - -#ifdef __cplusplus -} -#endif - -#endif //_INCLUDE__GENODE__TERMINAL_H_ diff --git a/repos/ports-foc/include/l4/io/io.h b/repos/ports-foc/include/l4/io/io.h deleted file mode 100644 index 490777114..000000000 --- a/repos/ports-foc/include/l4/io/io.h +++ /dev/null @@ -1,103 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__IO__IO_H_ -#define _L4__IO__IO_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -enum l4io_resource_types_t { - L4IO_RESOURCE_INVALID = 0, - L4IO_RESOURCE_IRQ, - L4IO_RESOURCE_MEM, - L4IO_RESOURCE_PORT, - L4IO_RESOURCE_ANY = ~0 -}; - -/** - * Flags for 'l4io_request_iomem' - * - * These flags are specified by 'map_dma_mem' in 'arch-arm/mach_setup.c'. - */ -enum { - L4IO_MEM_NONCACHED = 1 << 0, - L4IO_MEM_EAGER_MAP = 1 << 1 -}; - -typedef l4_mword_t l4io_device_handle_t; -typedef int l4io_resource_handle_t; -typedef l4_addr_t l4vbus_paddr_t; - -typedef struct { - int type; - char name[64]; - unsigned num_resources; - unsigned flags; -} l4io_device_t; - -typedef struct { - l4_uint16_t type; - l4_uint16_t flags; - l4_addr_t start; - l4_addr_t end; -} l4io_resource_t; - -l4io_device_handle_t l4io_get_root_device(void); - -L4_CV int L4_EXPORT -l4io_iterate_devices(l4io_device_handle_t *devhandle, - l4io_device_t *dev, l4io_resource_handle_t *reshandle); - -L4_CV int L4_EXPORT -l4io_lookup_resource(l4io_device_handle_t devhandle, - enum l4io_resource_types_t type, - l4io_resource_handle_t *reshandle, - l4io_resource_t *res); - -L4_CV long L4_EXPORT -l4io_request_ioport(unsigned portnum, unsigned len); - -L4_CV long L4_EXPORT -l4io_request_iomem_region(l4_addr_t phys, l4_addr_t virt, - unsigned long size, int flags); - -L4_CV long L4_EXPORT -l4io_search_iomem_region(l4_addr_t phys, l4_addr_t size, - l4_addr_t *rstart, l4_addr_t *rsize); - -L4_CV long L4_EXPORT -l4io_request_iomem(l4_addr_t phys, unsigned long size, int flags, - l4_addr_t *virt); - -L4_CV long L4_EXPORT -l4io_release_iomem(l4_addr_t virt, unsigned long size); - -L4_CV long L4_EXPORT -l4io_request_irq(int irqnum, l4_cap_idx_t irqcap); - -L4_CV long L4_EXPORT -l4io_release_irq(int irqnum, l4_cap_idx_t irq_cap); - -L4_CV int L4_EXPORT -l4io_has_resource(enum l4io_resource_types_t type, - l4vbus_paddr_t start, l4vbus_paddr_t end); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__IO__IO_H_ */ diff --git a/repos/ports-foc/include/l4/log/log.h b/repos/ports-foc/include/l4/log/log.h deleted file mode 100644 index ad53e714c..000000000 --- a/repos/ports-foc/include/l4/log/log.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__LOG__LOG_H_ -#define _L4__LOG__LOG_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV void LOG_printf(const char *format, ...); -L4_CV void LOG_vprintf(const char *format, va_list list); -void LOG_flush(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__LOG__LOG_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/dataspace.h b/repos/ports-foc/include/l4/re/c/dataspace.h deleted file mode 100644 index fefe2f571..000000000 --- a/repos/ports-foc/include/l4/re/c/dataspace.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__DATASPACE_H_ -#define _L4__RE__C__DATASPACE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -enum l4re_ds_map_flags { - L4RE_DS_MAP_FLAG_RO = 0, - L4RE_DS_MAP_FLAG_RW = 1, -}; - -typedef l4_cap_idx_t l4re_ds_t; - -typedef struct { - unsigned long size; - unsigned long flags; -} l4re_ds_stats_t; - -L4_CV int l4re_ds_map_region(const l4re_ds_t ds, l4_addr_t offset, unsigned long flags, - l4_addr_t min_addr, l4_addr_t max_addr); - -L4_CV long l4re_ds_size(const l4re_ds_t ds); - -L4_CV int l4re_ds_phys(const l4re_ds_t ds, l4_addr_t offset, - l4_addr_t *phys_addr, l4_size_t *phys_size); - -L4_CV int l4re_ds_copy_in(const l4re_ds_t ds, l4_addr_t dst_offs, const l4re_ds_t src, - l4_addr_t src_offs, unsigned long size); - -L4_CV int l4re_ds_info(const l4re_ds_t ds, l4re_ds_stats_t *stats); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__DATASPACE_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/debug.h b/repos/ports-foc/include/l4/re/c/debug.h deleted file mode 100644 index 6d389a561..000000000 --- a/repos/ports-foc/include/l4/re/c/debug.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__DEBUG_H_ -#define _L4__RE__C__DEBUG_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV void l4re_debug_obj_debug(l4_cap_idx_t srv, unsigned long function); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__DEBUG_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/mem_alloc.h b/repos/ports-foc/include/l4/re/c/mem_alloc.h deleted file mode 100644 index 74767d3ff..000000000 --- a/repos/ports-foc/include/l4/re/c/mem_alloc.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__MEM_ALLOC_H_ -#define _L4__RE__C__MEM_ALLOC_H_ - -#include -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -enum l4re_ma_flags { - L4RE_MA_CONTINUOUS = 0x01, - L4RE_MA_PINNED = 0x02, - L4RE_MA_SUPER_PAGES = 0x04, -}; - -L4_CV long l4re_ma_alloc(unsigned long size, l4re_ds_t const mem, - unsigned long flags); - -L4_CV long l4re_ma_alloc_align(unsigned long size, l4re_ds_t const mem, - unsigned long flags, unsigned long align); - -L4_CV long l4re_ma_free(l4re_ds_t const mem); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__MEM_ALLOC_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/namespace.h b/repos/ports-foc/include/l4/re/c/namespace.h deleted file mode 100644 index 4d25f1fc4..000000000 --- a/repos/ports-foc/include/l4/re/c/namespace.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__NAMESPACE_H_ -#define _L4__RE__C__NAMESPACE_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef l4_cap_idx_t l4re_namespace_t; - -L4_CV long l4re_ns_query_srv(l4re_namespace_t srv, char const *name, - l4_cap_idx_t const cap); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__NAMESPACE_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/rm.h b/repos/ports-foc/include/l4/re/c/rm.h deleted file mode 100644 index d1e436c90..000000000 --- a/repos/ports-foc/include/l4/re/c/rm.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__RM_H_ -#define _L4__RE__C__RM_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -enum l4re_rm_flags_t { - L4RE_RM_READ_ONLY = 0x01, - L4RE_RM_SEARCH_ADDR = 0x20, - L4RE_RM_IN_AREA = 0x40, - L4RE_RM_EAGER_MAP = 0x80, -}; - -L4_CV int l4re_rm_find(l4_addr_t *addr, unsigned long *size, l4_addr_t *offset, - unsigned *flags, l4re_ds_t *m); - -L4_CV int l4re_rm_attach(void **start, unsigned long size, unsigned long flags, - l4re_ds_t const mem, l4_addr_t offs, - unsigned char align); - -L4_CV int l4re_rm_detach(void *addr); - -L4_CV int l4re_rm_reserve_area(l4_addr_t *start, unsigned long size, - unsigned flags, unsigned char align); - -L4_CV int l4re_rm_free_area(l4_addr_t addr); - -L4_CV void l4re_rm_show_lists(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__RM_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/util/cap.h b/repos/ports-foc/include/l4/re/c/util/cap.h deleted file mode 100644 index 798cf42e3..000000000 --- a/repos/ports-foc/include/l4/re/c/util/cap.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__UTIL__CAP_H_ -#define _L4__RE__C__UTIL__CAP_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV l4_msgtag_t l4re_util_cap_release(l4_cap_idx_t cap); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__UTIL__CAP_H_ */ diff --git a/repos/ports-foc/include/l4/re/c/util/cap_alloc.h b/repos/ports-foc/include/l4/re/c/util/cap_alloc.h deleted file mode 100644 index b0690bd30..000000000 --- a/repos/ports-foc/include/l4/re/c/util/cap_alloc.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__C__UTIL__CAP_ALLOC_H_ -#define _L4__RE__C__UTIL__CAP_ALLOC_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV l4_cap_idx_t l4re_util_cap_alloc(void); -L4_CV void l4re_util_cap_free(l4_cap_idx_t cap); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__C__UTIL__CAP_ALLOC_H_ */ diff --git a/repos/ports-foc/include/l4/re/consts.h b/repos/ports-foc/include/l4/re/consts.h deleted file mode 100644 index 33197674f..000000000 --- a/repos/ports-foc/include/l4/re/consts.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__CONSTS_H_ -#define _L4__RE__CONSTS_H_ - -#include - -enum { - L4RE_THIS_TASK_CAP = 1UL << L4_CAP_SHIFT, -}; - -#endif /* _L4__RE__CONSTS_H_ */ diff --git a/repos/ports-foc/include/l4/re/env.h b/repos/ports-foc/include/l4/re/env.h deleted file mode 100644 index fcb7cdf46..000000000 --- a/repos/ports-foc/include/l4/re/env.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__RE__ENV_H_ -#define _L4__RE__ENV_H_ - -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct l4re_env_cap_entry_t -{ - l4_cap_idx_t cap; -// l4_umword_t flags; -// char name[16]; -} l4re_env_cap_entry_t; - - -typedef struct l4re_env_t -{ - l4_cap_idx_t factory; - l4_cap_idx_t scheduler; - l4_cap_idx_t mem_alloc; - l4_cap_idx_t log; - l4_cap_idx_t main_thread; - l4_cap_idx_t rm; - l4_fpage_t utcb_area; - l4_addr_t first_free_utcb; -} l4re_env_t; - -L4_CV l4re_env_cap_entry_t const * l4re_env_get_cap_l(char const *name, - unsigned l, - l4re_env_t const *e); - -L4_CV l4_kernel_info_t *l4re_kip(void); - -L4_CV l4re_env_t *l4re_env(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__RE__ENV_H_ */ diff --git a/repos/ports-foc/include/l4/util/atomic.h b/repos/ports-foc/include/l4/util/atomic.h deleted file mode 100644 index df3aeb3ef..000000000 --- a/repos/ports-foc/include/l4/util/atomic.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__ATOMIC_H_ -#define _L4__UTIL__ATOMIC_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV int l4util_cmpxchg(volatile l4_umword_t * dest, - l4_umword_t cmp_val, l4_umword_t new_val); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__UTIL__ATOMIC_H_ */ diff --git a/repos/ports-foc/include/l4/util/cpu.h b/repos/ports-foc/include/l4/util/cpu.h deleted file mode 100644 index 898cfe17f..000000000 --- a/repos/ports-foc/include/l4/util/cpu.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__CPU_H_ -#define _L4__UTIL__CPU_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -unsigned int l4util_cpu_capabilities(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__UTIL__CPU_H_ */ diff --git a/repos/ports-foc/include/l4/util/kip.h b/repos/ports-foc/include/l4/util/kip.h deleted file mode 100644 index 9f6f4cbf3..000000000 --- a/repos/ports-foc/include/l4/util/kip.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__KIP_H_ -#define _L4__UTIL__KIP_H_ - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -L4_CV int l4util_kip_kernel_has_feature(l4_kernel_info_t *, const char *str); -L4_CV unsigned long l4util_kip_kernel_abi_version(l4_kernel_info_t *); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4__UTIL__KIP_H_ */ diff --git a/repos/ports-foc/include/l4/util/kprintf.h b/repos/ports-foc/include/l4/util/kprintf.h deleted file mode 100644 index d7a235e8f..000000000 --- a/repos/ports-foc/include/l4/util/kprintf.h +++ /dev/null @@ -1,17 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__KPRINTF_H_ -#define _L4__UTIL__KPRINTF_H_ - -#endif /* _L4__UTIL__KPRINTF_H_ */ diff --git a/repos/ports-foc/include/l4/util/util.h b/repos/ports-foc/include/l4/util/util.h deleted file mode 100644 index e05e96742..000000000 --- a/repos/ports-foc/include/l4/util/util.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4__UTIL__UTIL_H_ -#define _L4__UTIL__UTIL_H_ - -#include -#include -#include - -L4_CV void l4_sleep(int ms); - -L4_CV void l4_sleep_forever(void) __attribute__((noreturn)); - - -static inline void -l4_touch_ro(const void*addr, unsigned size) -{ - volatile const char *bptr, *eptr; - - bptr = (const char*)(((unsigned)addr) & L4_PAGEMASK); - eptr = (const char*)(((unsigned)addr+size-1) & L4_PAGEMASK); - for(;bptr<=eptr;bptr+=L4_PAGESIZE) { - (void)(*bptr); - } -} - - -static inline void -l4_touch_rw(const void*addr, unsigned size) -{ - volatile char *bptr; - volatile const char *eptr; - - bptr = (char*)(((unsigned)addr) & L4_PAGEMASK); - eptr = (const char*)(((unsigned)addr+size-1) & L4_PAGEMASK); - for(;bptr<=eptr;bptr+=L4_PAGESIZE) { - char x = *bptr; - *bptr = x; - } -} - -#endif /* _L4__UTIL__UTIL_H_ */ diff --git a/repos/ports-foc/lib/mk/l4lx.mk b/repos/ports-foc/lib/mk/l4lx.mk deleted file mode 100644 index 588f4fe51..000000000 --- a/repos/ports-foc/lib/mk/l4lx.mk +++ /dev/null @@ -1,41 +0,0 @@ -# -# L4Linux support library -# -SRC_CC += env.cc \ - dataspace.cc \ - genode_block.cc \ - genode_framebuffer.cc \ - genode_input.cc \ - genode_net.cc \ - genode_terminal.cc \ - genode_string.cc \ - l4_io.cc \ - l4_log.cc \ - l4_re_c_dataspace.cc \ - l4_re_c_debug.cc \ - l4_re_c_mem_alloc.cc \ - l4_re_c_namespace.cc \ - l4_re_c_rm.cc \ - l4_re_c_util_cap.cc \ - l4_re_env.cc \ - l4_util_atomic.cc \ - l4_util_cpu.cc \ - l4_util_kip.cc \ - l4_util_util.cc \ - l4lx_irq.cc \ - l4lx_memory.cc \ - l4lx_task.cc \ - l4lx_thread.cc \ - l4x_pagefault.cc \ - rm.cc \ - startup.cc - -INC_DIR += $(REP_DIR)/include \ - $(REP_DIR)/src/lib/l4lx/include \ - -# for reusing the 'Expanding_rm_session' from the platform env in dataspace.h -INC_DIR += $(BASE_DIR)/src/include - -LIBS = base-foc config syscall-foc - -vpath %.cc $(REP_DIR)/src/lib/l4lx diff --git a/repos/ports-foc/lib/mk/l4sys.mk b/repos/ports-foc/lib/mk/l4sys.mk deleted file mode 100644 index b78cba9f2..000000000 --- a/repos/ports-foc/lib/mk/l4sys.mk +++ /dev/null @@ -1,5 +0,0 @@ -SRC_C += errtostr.c - -LIBS += syscall-foc - -vpath errtostr.c $(LIB_CACHE_DIR)/syscall-foc/build/source/pkg/l4sys/lib/src diff --git a/repos/ports-foc/mk/l4lx.mk b/repos/ports-foc/mk/l4lx.mk deleted file mode 100644 index eeeeef795..000000000 --- a/repos/ports-foc/mk/l4lx.mk +++ /dev/null @@ -1,43 +0,0 @@ -TARGET = vmlinux -VERBOSE_LX_MK ?= 0 -REQUIRES += foc -INC_DIR += $(REP_DIR)/include -LIBS = l4lx l4sys syscall-foc -GENODE_LIBS := base-foc base-foc-common startup-foc syscall-foc cxx l4lx l4sys config - -GENODE_LIBS := $(foreach l,$(GENODE_LIBS),$(BUILD_BASE_DIR)/var/libcache/$l/$l.lib.a) -GENODE_LIBS_SORTED = $(sort $(wildcard $(GENODE_LIBS))) -GENODE_LIBS_SORTED += $(shell $(CC) $(CC_MARCH) -print-libgcc-file-name) - -L4LX_CONTRIB_DIR := $(call select_from_ports,$(LX_TARGET))/src -L4LX_BUILD = $(BUILD_BASE_DIR)/$(LX_TARGET) -L4LX_BINARY = $(L4LX_BUILD)/$(TARGET) -L4LX_SYMLINK = $(BUILD_BASE_DIR)/bin/$(LX_TARGET) -L4LX_CONFIG = $(L4LX_BUILD)/.config - -L4_BUILD_DIR := $(LIB_CACHE_DIR)/syscall-foc/build - -BUILD_OUTPUT_FILTER = 2>&1 | sed "s/^/ [l4linux] /" - -$(TARGET): $(L4LX_BINARY) - -$(L4LX_BINARY): $(L4LX_CONFIG) - $(VERBOSE_MK)$(MAKE) $(VERBOSE_DIR) \ - -C $(L4LX_CONTRIB_DIR)/$(LX_TARGET) \ - O=$(L4LX_BUILD) \ - CROSS_COMPILE="$(CROSS_DEV_PREFIX)" \ - CC="$(CC)" \ - KBUILD_VERBOSE=$(VERBOSE_LX_MK) \ - V=$(VERBOSE_LX_MK) \ - GENODE_INCLUDES="$(addprefix -I,$(INC_DIR))" \ - GENODE_LIBS="$(GENODE_LIBS_SORTED)" \ - L4ARCH="$(L4LX_L4ARCH)" $(BUILD_OUTPUT_FILTER) || false - $(VERBOSE)ln -sf $@ $(L4LX_SYMLINK) - -$(L4LX_CONFIG): $(SRC_L4LX_CONFIG) - $(VERBOSE)sed -e "s/CONFIG_L4_OBJ_TREE.*/CONFIG_L4_OBJ_TREE=\"$(subst /,\/,$(L4_BUILD_DIR))\"/" $< > $@ - -clean: - $(VERBOSE)rm -rf $(L4LX_BUILD) - -.PHONY: $(L4LX_BINARY) diff --git a/repos/ports-foc/patches/android_binder.patch b/repos/ports-foc/patches/android_binder.patch deleted file mode 100644 index de89ed847..000000000 --- a/repos/ports-foc/patches/android_binder.patch +++ /dev/null @@ -1,110 +0,0 @@ ---- drivers/staging/android/binder.c -+++ drivers/staging/android/binder.c -@@ -34,6 +34,8 @@ - #include - #include - -+#include -+ - #include "binder.h" - - static DEFINE_MUTEX(binder_lock); -@@ -49,6 +51,8 @@ static struct dentry *binder_debugfs_dir_entry_proc; - static struct binder_node *binder_context_mgr_node; - static uid_t binder_context_mgr_uid = -1; - static int binder_last_id; -+static struct task_struct *binder_deferred_task; -+static DECLARE_WAIT_QUEUE_HEAD(binder_deferred_wq); - static struct workqueue_struct *binder_deferred_workqueue; - - #define BINDER_DEBUG_ENTRY(name) \ -@@ -3075,14 +3079,23 @@ static void binder_deferred_release(struct binder_proc *proc) - kfree(proc); - } - --static void binder_deferred_func(struct work_struct *work) -+static int binder_deferred_thread(void *ignore) - { - struct binder_proc *proc; - struct files_struct *files; -- -+ int ret; - int defer; -- do { -+ -+ for (;;) { -+ -+ do { -+ ret = wait_event_interruptible(binder_deferred_wq, !hlist_empty(&binder_deferred_list)); -+ } while (ret == -ERESTARTSYS); -+ if (kthread_should_stop()) -+ break; -+ - mutex_lock(&binder_lock); -+ - mutex_lock(&binder_deferred_lock); - if (!hlist_empty(&binder_deferred_list)) { - proc = hlist_entry(binder_deferred_list.first, -@@ -3097,24 +3110,27 @@ static void binder_deferred_func(struct work_struct *work) - mutex_unlock(&binder_deferred_lock); - - files = NULL; -- if (defer & BINDER_DEFERRED_PUT_FILES) { -- files = proc->files; -- if (files) -- proc->files = NULL; -- } -+ if (proc != NULL) { - -- if (defer & BINDER_DEFERRED_FLUSH) -- binder_deferred_flush(proc); -+ if (defer & BINDER_DEFERRED_PUT_FILES) { -+ files = proc->files; -+ if (files) -+ proc->files = NULL; -+ } - -- if (defer & BINDER_DEFERRED_RELEASE) -- binder_deferred_release(proc); /* frees proc */ -+ if (defer & BINDER_DEFERRED_FLUSH) -+ binder_deferred_flush(proc); -+ -+ if (defer & BINDER_DEFERRED_RELEASE) -+ binder_deferred_release(proc); /* frees proc */ -+ } - - mutex_unlock(&binder_lock); - if (files) - put_files_struct(files); -- } while (proc); -+ } -+ return 0; - } --static DECLARE_WORK(binder_deferred_work, binder_deferred_func); - - static void - binder_defer_work(struct binder_proc *proc, enum binder_deferred_state defer) -@@ -3124,9 +3140,9 @@ binder_defer_work(struct binder_proc *proc, enum binder_deferred_state defer) - if (hlist_unhashed(&proc->deferred_work_node)) { - hlist_add_head(&proc->deferred_work_node, - &binder_deferred_list); -- queue_work(binder_deferred_workqueue, &binder_deferred_work); - } - mutex_unlock(&binder_deferred_lock); -+ wake_up_interruptible(&binder_deferred_wq); - } - - static void print_binder_transaction(struct seq_file *m, const char *prefix, -@@ -3603,6 +3619,12 @@ static int __init binder_init(void) - &binder_transaction_log_failed, - &binder_transaction_log_fops); - } -+ -+ if (ret == 0) { -+ binder_deferred_task = kthread_run(binder_deferred_thread, NULL, "binder_deferred_thread"); -+ if (binder_deferred_task == NULL) -+ ret = PTR_ERR(binder_deferred_task); -+ } - return ret; - } - diff --git a/repos/ports-foc/patches/icmp_align.patch b/repos/ports-foc/patches/icmp_align.patch deleted file mode 100644 index 21a3d9ad4..000000000 --- a/repos/ports-foc/patches/icmp_align.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: net/ipv4/icmp.c -=================================================================== ---- net/ipv4/icmp.c (revision 23) -+++ net/ipv4/icmp.c (working copy) -@@ -818,7 +818,7 @@ - if (!net->ipv4.sysctl_icmp_echo_ignore_all) { - struct icmp_bxm icmp_param; - -- icmp_param.data.icmph = *icmp_hdr(skb); -+ memcpy(&icmp_param.data.icmph, icmp_hdr(skb), sizeof(struct icmphdr)); - icmp_param.data.icmph.type = ICMP_ECHOREPLY; - icmp_param.skb = skb; - icmp_param.offset = 0; diff --git a/repos/ports-foc/patches/l4lx_genode.patch b/repos/ports-foc/patches/l4lx_genode.patch deleted file mode 100644 index 820af3f85..000000000 --- a/repos/ports-foc/patches/l4lx_genode.patch +++ /dev/null @@ -1,1264 +0,0 @@ -Index: arch/l4/Makefile -=================================================================== ---- arch/l4/Makefile (revision 25) -+++ arch/l4/Makefile (working copy) -@@ -163,6 +163,14 @@ - KBUILD_CFLAGS += $(call cc-option,-mno-sse -mno-mmx -mno-sse2 -mno-3dnow,) - KBUILD_CFLAGS += $(call cc-option,-mno-avx,) - -+# -+# Prevent the gcc from linking Linux functions into compiler-generated -+# Genode stuff. -+# -+KBUILD_CFLAGS += -Dmemmove=lx_memmove -Dmemset=lx_memset -Dmemcpy=lx_memcpy -+KBUILD_CFLAGS += -Dstrlen=lx_strlen -Dabort=lx_abort -+ -+ - endif - - ifeq ($(BASEARCH),arm) -@@ -243,6 +251,8 @@ - - endif - -+# Genode compiler is build without Linux defines. -+KBUILD_CFLAGS +=-D__linux__ -Dlinux - - # ----------------------------------------------- - -@@ -265,14 +275,15 @@ - L4LX_E_L-$(CONFIG_L4_TCG_STPM) += stpm-client - L4LX_E_L-$(CONFIG_L4_FERRET) += ferret - --L4INC = -I$(L4OBJ)/include/$(L4_MK_ARCH)/$(L4_MK_API) \ -- -I$(L4OBJ)/include/$(L4_MK_ARCH) \ -- -I$(L4OBJ)/include/$(L4_MK_API) \ -- -I$(L4OBJ)/include -+#L4INC = -I$(L4OBJ)/include/$(L4_MK_ARCH)/$(L4_MK_API) \ -+# -I$(L4OBJ)/include/$(L4_MK_ARCH) \ -+# -I$(L4OBJ)/include/$(L4_MK_API) \ -+# -I$(L4OBJ)/include - - head-y := arch/l4/kernel/head.o - --libs-y += arch/l4/lib/arch-$(BASEARCH)/ \ -+libs-y += arch/l4/lib/arch-$(BASEARCH)/ -+#\ - arch/l4/l4lxlib/generic/ \ - arch/l4/l4lxlib/$(BASEENV)/ - -@@ -291,7 +302,7 @@ - - core-y += arch/l4/ - ---include $(L4OBJ)/l4defs.mk.inc -+#-include $(L4OBJ)/l4defs.mk.inc - - L4_REQUIRED_MODS := libc_be_minimal_log_io \ - libc_minimal libc_minimal_l4re \ -@@ -307,15 +318,17 @@ - $(error Aborting.) - endif - --libs-y += -Bstatic $(L4_LIBDIRS) -ll4sys -ll4sys-direct -lgcc-l4 -+libs-y += -Bstatic $(L4_LIBDIRS) -+#-ll4sys -ll4sys-direct -lgcc-l4 -+libs-y += $(GENODE_LIBS) - export L4INC L4_REQUIRED_MODS - --LDFLAGS_vmlinux = \ -- --defsym __L4_KIP_ADDR__=$(L4_BID_KIP_ADDR) \ -+LDFLAGS_vmlinux = -nostdlib -+# --defsym __L4_KIP_ADDR__=$(L4_BID_KIP_ADDR) \ - --defsym __l4sys_invoke_direct=$(L4_BID_KIP_ADDR)+$(L4_BID_KIP_OFFS_SYS_INVOKE) \ - --defsym __l4sys_debugger_direct=$(L4_BID_KIP_ADDR)+$(L4_BID_KIP_OFFS_SYS_DEBUGGER) - --KBUILD_CPPFLAGS += -Iarch/l4/include/asm/l4-arch \ -+KBUILD_CPPFLAGS += $(GENODE_INCLUDES) -Iarch/l4/include/asm/l4-arch \ - -Iarch/$(LINSRCARCH)/include/generated \ - $(if $(PLATFORMNAME),-I$(src)/arch/l4/include/asm/mach-$(LINSRCARCH)/$(PLATFORMNAME)) \ - $(if $(PLATFORMNAME),-I$(src)/arch/l4/include/asm/plat-$(LINSRCARCH)/$(PLATFORMNAME)) \ -@@ -337,6 +350,8 @@ - KBUILD_CPPFLAGS += -DTEXT_OFFSET=0x01000000 - endif - -+drivers-y += arch/l4/drivers/ -+ - all: lImage - - boot := arch/l4/boot -@@ -345,11 +360,11 @@ - $(Q)$(MAKE) $(build)=$(boot) $@ - - check_for_l4defs: -- $(Q)if [ ! -e $(L4OBJ)/l4defs.mk.inc ]; then \ -- echo "No $(L4OBJ)/l4defs.mk.inc available."; \ -- echo "Did you run 'make' in $(L4OBJ) to a successful end?"; \ -- exit 1; \ -- fi -+# $(Q)if [ ! -e $(L4OBJ)/l4defs.mk.inc ]; then \ -+# echo "No $(L4OBJ)/l4defs.mk.inc available."; \ -+# echo "Did you run 'make' in $(L4OBJ) to a successful end?"; \ -+# exit 1; \ -+# fi - - server: - $(Q)$(MAKE) $(build)=arch/l4/server -Index: arch/l4/Kconfig -=================================================================== ---- arch/l4/Kconfig (revision 25) -+++ arch/l4/Kconfig (working copy) -@@ -235,6 +235,20 @@ - help - Support for (virtual) TPMs provided by the L4 service STPM of TUD:OS. - -+config SCREEN_GENODE -+ bool -+ select FB_CFB_FILLRECT -+ select FB_CFB_COPYAREA -+ select FB_CFB_IMAGEBLIT -+ default y -+ -+config SERIAL_GENODE -+ bool -+ default y -+ select SERIAL_CORE -+ select SERIAL_CORE_CONSOLE -+ -+ - endmenu # stub drivers - - menu "Debugging options" -Index: arch/l4/kernel/arch-arm/traps.c -=================================================================== ---- arch/l4/kernel/arch-arm/traps.c (revision 25) -+++ arch/l4/kernel/arch-arm/traps.c (working copy) -@@ -68,6 +68,7 @@ - dump_mem("", "Exception stack", frame + 4, frame + 4 + sizeof(struct pt_regs)); - } - -+#if 0 - #ifndef CONFIG_ARM_UNWIND - /* - * Stack pointers should always be within the kernels view of -@@ -83,6 +84,7 @@ - return 0; - } - #endif -+#endif - - /* - * Dump out the contents of some memory nicely... -@@ -172,6 +174,7 @@ - #else - static void dump_backtrace(struct pt_regs *regs, struct task_struct *tsk) - { -+#if 0 - unsigned int fp, mode; - int ok = 1; - -@@ -203,6 +206,7 @@ - - if (ok) - c_backtrace(fp, mode); -+#endif - } - #endif - -Index: arch/l4/kernel/arch-arm/vmlinux.lds.S -=================================================================== ---- arch/l4/kernel/arch-arm/vmlinux.lds.S (revision 25) -+++ arch/l4/kernel/arch-arm/vmlinux.lds.S (working copy) -@@ -47,6 +47,12 @@ - jiffies = jiffies_64 + 4; - #endif - -+PHDRS -+{ -+ ro PT_LOAD; -+ rw PT_LOAD; -+} -+ - SECTIONS - { - /* -@@ -82,14 +88,32 @@ - } - - #ifdef CONFIG_XIP_KERNEL -- . = XIP_VIRT_ADDR(CONFIG_XIP_PHYS_ADDR); -+ . = XIP_VIRT_ADDR(CONFIG_XIP_PHYS_ADDR) - 4096; - #else -- . = PAGE_OFFSET + TEXT_OFFSET; -+ . = PAGE_OFFSET + TEXT_OFFSET - 4096; - #endif -+ -+ .parent : { -+ /* -+ * Leave space for parent capability parameters at start of data -+ * section. The protection domain creator is reponsible for storing -+ * sane values here. -+ */ -+ _parent_cap = .; -+ _parent_cap_thread_id = .; -+ LONG(0xffffffff); -+ _parent_cap_local_name = .; -+ LONG(0xffffffff); -+ } : rw -+ -+ . = ALIGN(4096); -+ - .head.text : { -+ _prog_img_beg = .; - _text = .; - HEAD_TEXT - } -+ - .text : { /* Real text segment */ - _stext = .; /* Text and read-only data */ - __exception_text_start = .; -@@ -104,6 +128,7 @@ - #ifdef CONFIG_MMU - *(.fixup) - #endif -+ *(.text.*) /* put all Genode .text entries in here */ - *(.gnu.warning) - *(.glue_7) - *(.glue_7t) -@@ -136,6 +161,42 @@ - } - #endif - -+ /* -+ * When building L4Linux for Genode, the 'CONFIG_ARM_UNWIND' option is -+ * disabled to avoid conflicts between unwinding-related symbols provided -+ * by the Linux kernel and the C++ compiler's libsupc++. Hence, the linker -+ * script section above is not used. Instead, the '.ARM.exidx' entries are -+ * handled as follows (taken from the Genode linker script. -+ */ -+ /* .ARM.exidx is sorted, so has to go in its own output section */ -+ __exidx_start = .; -+ .ARM.exidx : { -+ *(.ARM.exidx* .gnu.linkonce.armexidx.*) -+ } -+ __exidx_end = .; -+ -+ .ARM.extab : { -+ *(.ARM.extab*) -+ } : rw -+ -+ /* exception frames for C++ */ -+ .eh_frame : { -+ __eh_frame_start__ = .; -+ KEEP (*(.eh_frame)) -+ LONG(0) -+ } : rw -+ -+ .init_array : { -+ __init_array_start = .; -+ _ctors_start = .; -+ KEEP (*(SORT(.init_array.*))) -+ KEEP (*(.init_array)) -+ __init_array_end = .; -+ _ctors_end = .; -+ _dtors_start = .; -+ _dtors_end = .; -+ } -+ - _etext = .; /* End of text and rodata section */ - - #ifndef CONFIG_XIP_KERNEL -@@ -240,8 +301,10 @@ - DATA_DATA - CONSTRUCTORS - -+ *(.data.*) /* put all Genode .data entries in here */ -+ - _edata = .; -- } -+ } : rw - _edata_loc = __data_loc + SIZEOF(.data); - - #ifdef CONFIG_HAVE_TCM -@@ -303,10 +366,20 @@ - - NOTES - -- BSS_SECTION(0, 0, 0) -+ /* BSS */ -+ . = ALIGN(PAGE_SIZE); -+ .bss : AT(ADDR(.bss) - LOAD_OFFSET) { -+ __bss_start = .; -+ *(.bss..page_aligned) -+ *(.bss) -+ *(.bss.*) /* put all Genode .bss entries in here */ -+ . = ALIGN(4); -+ __bss_stop = .; -+ } - - /* L4: Align to full superpage */ - . = ALIGN(1048576); -+ _prog_img_end = .; - _end = .; - - STABS_DEBUG -Index: arch/l4/kernel/arch-x86/rtc.c -=================================================================== ---- arch/l4/kernel/arch-x86/rtc.c (revision 25) -+++ arch/l4/kernel/arch-x86/rtc.c (working copy) -@@ -163,6 +163,7 @@ - /* Routines for accessing the CMOS RAM/RTC. */ - unsigned char rtc_cmos_read(unsigned char addr) - { -+#ifdef NOT_GENODE - #ifndef CONFIG_L4_EXTERNAL_RTC - unsigned char val; - -@@ -175,17 +176,22 @@ - #else - return 0; - #endif -+#else /* NOT_GENODE */ -+ return 0; -+#endif /* NOT_GENODE */ - } - EXPORT_SYMBOL(rtc_cmos_read); - - void rtc_cmos_write(unsigned char val, unsigned char addr) - { -+#ifdef NOT_GENODE - #ifndef CONFIG_L4_EXTERNAL_RTC - lock_cmos_prefix(addr); - outb(addr, RTC_PORT(0)); - outb(val, RTC_PORT(1)); - lock_cmos_suffix(addr); - #endif -+#endif /* NOT_GENODE */ - } - EXPORT_SYMBOL(rtc_cmos_write); - -Index: arch/l4/kernel/arch-x86/dispatch.c -=================================================================== ---- arch/l4/kernel/arch-x86/dispatch.c (revision 25) -+++ arch/l4/kernel/arch-x86/dispatch.c (working copy) -@@ -749,6 +749,7 @@ - - TBUF_LOG_EXCP(fiasco_tbuf_log_3val("except ", TBUF_TID(t->user_thread_id), t->trap_nr, t->error_code)); - -+ fiasco_tbuf_log_3val("except ", t->trap_nr, regs->ip, 0); - if (l4x_deliver_signal(r_trapno(t, v), r_err(t, v))) - return 0; /* handled signal, reply */ - -Index: arch/l4/kernel/arch-x86/vmlinux.lds.S -=================================================================== ---- arch/l4/kernel/arch-x86/vmlinux.lds.S (revision 25) -+++ arch/l4/kernel/arch-x86/vmlinux.lds.S (working copy) -@@ -33,7 +33,7 @@ - - #ifdef CONFIG_X86_32 - OUTPUT_ARCH(i386) --ENTRY(phys_startup_32) -+ENTRY(_start) - jiffies = jiffies_64; - #else - OUTPUT_ARCH(i386:x86-64) -@@ -68,15 +68,8 @@ - #endif - - PHDRS { -- text PT_LOAD FLAGS(5); /* R_E */ -- data PT_LOAD FLAGS(6); /* RW_ */ --#ifdef CONFIG_X86_64 --#ifdef CONFIG_SMP -- percpu PT_LOAD FLAGS(6); /* RW_ */ --#endif -- init PT_LOAD FLAGS(7); /* RWE */ --#endif -- note PT_NOTE FLAGS(0); /* ___ */ -+ ro PT_LOAD; -+ rw PT_LOAD; - } - - SECTIONS -@@ -96,6 +89,29 @@ - /*_stext = .;*/ - .text : AT(ADDR(.text) - LOAD_OFFSET) { - _text = .; -+ _prog_img_beg = .; -+ -+ /* -+ * Leave space for parent capability parameters at start of data -+ * section. The protection domain creator is reponsible for storing -+ * sane values here. -+ */ -+ _parent_cap = .; -+ _parent_cap_thread_id = .; -+ LONG(0xffffffff); -+ _parent_cap_local_name = .; -+ LONG(0xffffffff); -+ -+ /* -+ * Platform-specific entry for Fiasco.OC. -+ * -+ * PIC-code compiled for Fiasco.OC, needs some PIC-compatible -+ * way to enter the kernel, the fixed address of the kernel -+ * entry code address needs to be found here. -+ */ -+ __l4sys_invoke_indirect = .; -+ LONG(0xeacff000); -+ - /* bootstrapping code */ - HEAD_TEXT - #ifdef CONFIG_X86_32 -@@ -111,19 +127,55 @@ - ENTRY_TEXT - IRQENTRY_TEXT - *(.fixup) -+ *(.text.*) /* put all Genode .text entries in here */ - *(.gnu.warning) -+ -+ . = ALIGN(0x08); -+ -+ _ctors_start = .; -+ KEEP (*(.ctors)) -+ KEEP (*(SORT(.ctors.*))) -+ KEEP (*(.init_array)) /* list of constructors specific for ARM eabi */ -+ _ctors_end = .; -+ _dtors_start = .; -+ KEEP (*(SORT(.dtors.*))) -+ KEEP (*(.dtors)) -+ _dtors_end = .; -+ - /* End of text section */ - _etext = .; -- } :text = 0x9090 -+ } : rw - -- NOTES :text :note -+ NOTES :rw - -- EXCEPTION_TABLE(16) :text = 0x9090 -+ .eh_frame_hdr : { *(.eh_frame_hdr) } - - #if defined(CONFIG_DEBUG_RODATA) - /* .text should occupy whole number of pages */ - . = ALIGN(PAGE_SIZE); - #endif -+ -+ /* -+ * because in Genode we collect all data.* entries in the data section -+ * we have to put the per_cpu section before defining the data section -+ * otherwise it's symbols would end up in the data section too. -+ */ -+#if !defined(CONFIG_X86_64) || !defined(CONFIG_SMP) -+ PERCPU_SECTION(INTERNODE_CACHE_BYTES) -+#endif -+ -+ /* -+ * smp_locks might be freed after init -+ * start/end must be page aligned -+ */ -+ . = ALIGN(PAGE_SIZE); -+ .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) { -+ __smp_locks = .; -+ *(.smp_locks) -+ . = ALIGN(PAGE_SIZE); -+ __smp_locks_end = .; -+ } -+ - X64_ALIGN_DEBUG_RODATA_BEGIN - RO_DATA(PAGE_SIZE) - X64_ALIGN_DEBUG_RODATA_END -@@ -151,10 +203,34 @@ - /* rarely changed data like cpu maps */ - READ_MOSTLY_DATA(INTERNODE_CACHE_BYTES) - -+ *(.data.*) /* put all Genode .data entries in here */ -+ -+ - /* End of data section */ - _edata = .; -- } :data -+ } : rw - -+ EXCEPTION_TABLE(16) : rw -+ -+ /* exception frames for C++ */ -+ .eh_frame : { -+ __eh_frame_start__ = .; -+ KEEP (*(.eh_frame)) -+ LONG(0) -+ } : rw -+ -+ .init_array : { -+ __init_array_start = .; -+ KEEP (*(SORT(.init_array.*))) -+ KEEP (*(.init_array)) -+ __init_array_end = .; -+ } -+ -+ .gcc_except_table : { -+ KEEP(*(.gcc_except_table)) -+ KEEP(*(.gcc_except_table.*)) -+ } -+ - #ifdef CONFIG_X86_64 - - . = ALIGN(PAGE_SIZE); -@@ -273,10 +349,6 @@ - EXIT_DATA - } - --#if !defined(CONFIG_X86_64) || !defined(CONFIG_SMP) -- PERCPU_SECTION(INTERNODE_CACHE_BYTES) --#endif -- - . = ALIGN(PAGE_SIZE); - - /* freed after init ends here */ -@@ -284,18 +356,6 @@ - __init_end = .; - } - -- /* -- * smp_locks might be freed after init -- * start/end must be page aligned -- */ -- . = ALIGN(PAGE_SIZE); -- .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) { -- __smp_locks = .; -- *(.smp_locks) -- . = ALIGN(PAGE_SIZE); -- __smp_locks_end = .; -- } -- - #ifdef CONFIG_X86_64 - .data_nosave : AT(ADDR(.data_nosave) - LOAD_OFFSET) { - NOSAVE_DATA -@@ -308,6 +368,7 @@ - __bss_start = .; - *(.bss..page_aligned) - *(.bss) -+ *(.bss.*) /* put all Genode .bss entries in here */ - . = ALIGN(PAGE_SIZE); - __bss_stop = .; - } -@@ -320,6 +381,7 @@ - __brk_limit = .; - } - -+ _prog_img_end = .; - _end = .; - - STABS_DEBUG -Index: arch/l4/kernel/arch-x86/x86_init.c -=================================================================== ---- arch/l4/kernel/arch-x86/x86_init.c (revision 25) -+++ arch/l4/kernel/arch-x86/x86_init.c (working copy) -@@ -42,7 +42,7 @@ - struct x86_init_ops x86_init __initdata = { - - .resources = { -- .probe_roms = probe_roms, -+ .probe_roms = x86_init_noop, - .reserve_resources = reserve_standard_io_resources, - .memory_setup = l4x_memory_setup, - }, -Index: arch/l4/kernel/timer.c -=================================================================== ---- arch/l4/kernel/timer.c (revision 25) -+++ arch/l4/kernel/timer.c (working copy) -@@ -225,12 +225,16 @@ - return -ENOMEM; - } - -+#if 0 - r = L4XV_FN_i(l4_error(l4_factory_create_irq(l4re_env()->factory, - timer_irq_cap))); - if (r) { - printk(KERN_ERR "l4timer: Failed to create irq: %d\n", r); - goto out1; - } -+#else -+ l4lx_thread_alloc_irq(timer_irq_cap); -+#endif - - if ((irq = l4x_register_irq(timer_irq_cap)) < 0) { - r = -ENOMEM; -@@ -238,6 +242,7 @@ - } - - printk("l4timer: Using IRQ%d\n", irq); -+ LOG_printf("l4timer: Using IRQ%d\n", irq); - - setup_irq(irq, &l4timer_irq); - -@@ -279,7 +284,9 @@ - l4x_unregister_irq(irq); - out2: - L4XV_FN_v(l4re_util_cap_release(timer_irq_cap)); -+#if 0 - out1: -+#endif - l4x_cap_free(timer_irq_cap); - return r; - } -Index: arch/l4/kernel/head.S -=================================================================== ---- arch/l4/kernel/head.S (revision 25) -+++ arch/l4/kernel/head.S (working copy) -@@ -53,6 +53,7 @@ - .previous - #endif - -+#ifdef NOT_GENODE - #ifdef ARCH_arm - .section ".text" - .globl _start -@@ -82,6 +83,10 @@ - __address_l4lx_kinfo: - .long l4lx_kinfo - .previous -+#endif -+#endif /* NOT_GENODE */ -+ -+#ifdef ARCH_arm - .section .data.head, "wa" - .p2align 12 - ENTRY(swapper_pg_dir) -Index: arch/l4/kernel/main.c -=================================================================== ---- arch/l4/kernel/main.c (revision 25) -+++ arch/l4/kernel/main.c (working copy) -@@ -209,6 +209,7 @@ - static void *l4x_main_memory_start; - static void *l4x_isa_dma_memory_start; - unsigned long l4x_vmalloc_memory_start; -+unsigned long l4x_vmalloc_memory_size; - l4_kernel_info_t *l4lx_kinfo; - l4_cap_idx_t l4x_user_gate[NR_CPUS]; - -@@ -381,6 +382,28 @@ - } - - -+static spinlock_t migrate_lock; -+ -+void l4x_irq_save(unsigned long *flags) { local_irq_save(*flags); } -+void l4x_irq_restore(unsigned long flags) { local_irq_restore(flags); } -+unsigned long l4x_hz(void) { return HZ; } -+int l4x_nr_irqs(void) { return NR_IRQS; } -+void l4x_migrate_lock(unsigned long *flags) { spin_lock_irqsave(&migrate_lock, *flags); } -+void l4x_migrate_unlock(unsigned long flags) { spin_unlock_irqrestore(&migrate_lock, flags);} -+unsigned l4x_smp_processor_id() { return smp_processor_id(); } -+ -+ -+unsigned l4x_target_cpu(const struct cpumask *dest) -+{ -+ if (!cpumask_intersects(dest, cpu_online_mask)) -+ return (unsigned) -1; -+ return cpumask_any_and(dest, cpu_online_mask); -+} -+ -+void l4x_cpumask_copy(struct irq_data *data, const struct cpumask *dest) { -+ cpumask_copy(data->affinity, dest); } -+ -+ - unsigned long l4x_virt_to_phys(volatile void * address) - { - int i; -@@ -405,10 +428,10 @@ - - /* Debugging check: don't miss a translation, can give nasty - * DMA problems */ -- l4x_printf("%s: Could not translate virt. address %p\n", -+ LOG_printf("%s: Could not translate virt. address %p\n", - __func__, address); -- l4x_virt_to_phys_show(); -- WARN_ON(1); -+ //l4x_virt_to_phys_show(); -+ //WARN_ON(1); - - return __pa(address); - } -@@ -439,7 +462,7 @@ - - /* Debugging check: don't miss a translation, can give nasty - * DMA problems */ -- l4x_printf("%s: Could not translate phys. address 0x%lx\n", -+ LOG_printf("%s: Could not translate phys. address 0x%lx\n", - __func__, address); - l4x_virt_to_phys_show(); - WARN_ON(1); -@@ -558,7 +581,7 @@ - - r = l4re_ns_query_srv(entry->cap, n + 1, *cap); - if (r) { -- l4x_printf("Failed to query name '%s': %s(%d)\n", -+ LOG_printf("Failed to query name '%s': %s(%d)\n", - name, l4sys_errtostr(r), r); - L4XV_U(f); - return -ENOENT; -@@ -742,6 +765,7 @@ - = sizeof(at_exit_functions) / sizeof(at_exit_functions[0]); - static int __current_exititem; - -+#if 0 - static struct cxa_atexit_item *__next_atexit(void) - { - if (__current_exititem >= at_exit_nr_of_functions) { -@@ -750,21 +774,10 @@ - } - return &at_exit_functions[__current_exititem++]; - } -+#endif - --int __cxa_atexit(void (*f)(void *), void *arg, void *dso_handle) --{ -- struct cxa_atexit_item *h = __next_atexit(); -+extern int __cxa_atexit(void (*f)(void *), void *arg, void *dso_handle); - -- if (!h) -- return -1; -- -- h->f = f; -- h->arg = arg; -- h->dso_handle = dso_handle; -- -- return 0; --} -- - void __cxa_finalize(void *dso_handle) - { - const int verbose = 0; -@@ -819,10 +832,20 @@ - } - static int l4x_forward_pf(l4_umword_t addr, l4_umword_t pc, int extra_write) - { -+#if 0 - l4_msgtag_t tag; - l4_umword_t err; - l4_utcb_t *u = l4_utcb(); -+#endif - -+ if (!extra_write) -+ l4_touch_ro((void*)l4_trunc_page(addr), L4_LOG2_PAGESIZE); -+ else -+ l4_touch_rw((void*)l4_trunc_page(addr), L4_LOG2_PAGESIZE); -+ -+ // TODO: Reenable this part -+#if 0 -+ - do { - l4_msg_regs_t *mr = l4_utcb_mr_u(u); - mr->mr[0] = addr | (extra_write ? 2 : 0); -@@ -844,6 +867,7 @@ - // unresolvable page fault, we're supposed to trigger an - // exception - return 0; -+#endif - - return 1; - } -@@ -1283,16 +1307,19 @@ - 0, "Main memory"); - - /* Reserve some part of the virtual address space for vmalloc */ -- l4x_vmalloc_memory_start = (unsigned long)l4x_main_memory_start; -- if (l4re_rm_reserve_area(&l4x_vmalloc_memory_start, -+ l4x_vmalloc_memory_start = ((((unsigned long)l4x_main_memory_start + l4x_mainmem_size) + -+ VMALLOC_OFFSET) & ~(VMALLOC_OFFSET - 1)); - #ifdef CONFIG_X86_32 -- __VMALLOC_RESERVE, -+ l4x_vmalloc_memory_size = __VMALLOC_RESERVE; - #elif defined(CONFIG_X86_64) -- VMALLOC_END - VMALLOC_START + 1, -+ l4x_vmalloc_memory_size = VMALLOC_END - VMALLOC_START + 1; - #else -- VMALLOC_SIZE << 20, -+ l4x_vmalloc_memory_size = VMALLOC_SIZE << 20; - #endif -- L4RE_RM_SEARCH_ADDR, PGDIR_SHIFT)) { -+ -+ if (l4re_rm_reserve_area(&l4x_vmalloc_memory_start, -+ l4x_vmalloc_memory_size, -+ L4RE_RM_SEARCH_ADDR, ilog2(VMALLOC_OFFSET))) { - LOG_printf("%s: Error reserving vmalloc memory area!\n", __func__); - l4x_exit_l4linux(); - } -@@ -1305,7 +1332,7 @@ - - #ifdef ARCH_x86 - // fixmap area -- l4x_fixmap_space_start = (unsigned long)l4x_main_memory_start; -+ l4x_fixmap_space_start = (unsigned long)l4x_vmalloc_memory_start + l4x_vmalloc_memory_size; - if (l4re_rm_reserve_area(&l4x_fixmap_space_start, - __end_of_fixed_addresses * PAGE_SIZE, - L4RE_RM_SEARCH_ADDR, PAGE_SHIFT) < 0) { -@@ -1416,6 +1443,10 @@ - - static void l4x_create_ugate(l4_cap_idx_t forthread, unsigned cpu) - { -+ LOG_printf("thread=%lx cpu=%x\n", forthread, cpu); -+ l4x_user_gate[cpu] = forthread; -+ -+#if 0 - l4_msgtag_t r; - - l4x_user_gate[cpu] = l4x_cap_alloc_noctx(); -@@ -1436,6 +1467,7 @@ - l4_debugger_set_object_name(l4x_user_gate[cpu], n); - #endif - } -+#endif - } - - #ifdef CONFIG_HOTPLUG_CPU -@@ -1641,11 +1673,15 @@ - l4x_exit_l4linux(); - } - -+#if 0 - t = l4_factory_create_irq(l4re_env()->factory, c); - if (l4_error(t)) { - LOG_printf("Failed to create IRQ\n"); - l4x_exit_l4linux(); - } -+#else -+ l4lx_thread_alloc_irq(c); -+#endif - - #ifdef CONFIG_L4_DEBUG_REGISTER_NAMES - l4_debugger_set_object_name(c, s); -@@ -1906,8 +1942,12 @@ - - static int l4x_cpu_virt_phys_map_init(const char *boot_command_line) - { -+#ifdef CONFIG_SMP - l4_umword_t max_cpus = 1; -+#if 0 - l4_sched_cpu_set_t cs = l4_sched_cpu_set(0, 0, 0); -+#endif -+#endif - unsigned i; - - #ifdef CONFIG_SMP -@@ -1923,9 +1963,10 @@ - } - } - -- -+#if 0 - if (l4_error(l4_scheduler_info(l4re_env()->scheduler, - &max_cpus, &cs)) == L4_EOK) { -+#endif - if ((p = strstr(boot_command_line, "l4x_cpus_map="))) { - // l4x_cpus_map=0,1,2,3,4,... - // the list specifies the physical CPU for each -@@ -1947,10 +1988,12 @@ - LOG_printf("ERROR: Error parsing l4x_cpus_map option\n"); - return 1; - } -+#if 0 - if (!l4x_cpu_check_pcpu(pcpu, max_cpus)) { - LOG_printf("ERROR: pCPU%d not found\n", pcpu); - return 1; - } -+#endif - l4x_cpu_physmap[l4x_nr_cpus].phys_id = pcpu; - for (i = 0; i < l4x_nr_cpus; ++i) - overbooking |= -@@ -1974,12 +2017,16 @@ - l4x_nr_cpus = v; - - } -+#if 0 - } -+#endif - #ifndef CONFIG_L4_VCPU - l4x_tamed_set_mapping(0, l4x_cpu_physmap_get_id(0)); - #endif - - #else /* UP */ -+ -+#if 0 - if (l4_error(l4_scheduler_info(l4re_env()->scheduler, - &max_cpus, &cs)) == L4_EOK) { - -@@ -1989,6 +2036,8 @@ - l4x_cpu_physmap[0].phys_id = p; - } - #endif -+ l4x_cpu_physmap[0].phys_id = 0; -+#endif - - LOG_printf("CPU mapping (l:p)[%d]: ", l4x_nr_cpus); - for (i = 0; i < l4x_nr_cpus; i++) -@@ -2034,6 +2083,7 @@ - printk("panic: going to sleep forever, bye\n"); - L4XV_L(f); - LOG_printf("panic: going to sleep forever, bye\n"); -+ enter_kdebug("PANIC"); - l4_sleep_forever(); - return 0; - } -@@ -2302,7 +2352,7 @@ - LOG_printf("Device scan done.\n"); - } - --int __init_refok L4_CV main(int argc, char **argv) -+int __init_refok L4_CV linux_main(int argc, char **argv) - { - l4lx_thread_t main_id; - struct l4lx_thread_start_info_t si; -@@ -2414,10 +2464,13 @@ - - l4x_start_thread_id = l4re_env()->main_thread; - -+#if 0 - l4_thread_control_start(); - l4_thread_control_commit(l4x_start_thread_id); - l4x_start_thread_pager_id - = l4_utcb_mr()->mr[L4_THREAD_CONTROL_MR_IDX_PAGER]; -+#endif -+ l4x_start_thread_pager_id = l4re_env()->rm; - - #ifndef CONFIG_L4_VCPU - #ifdef CONFIG_L4_TAMED -@@ -3223,6 +3276,10 @@ - /* Not resolvable: Ooops */ - LOG_printf("Non-resolvable page fault at %lx, ip %lx.\n", pfa, ip); - // will trigger an oops in caller -+ -+#ifdef CONFIG_L4_DEBUG_SEGFAULTS -+ enter_kdebug("PF"); -+#endif - return 0; - } - -@@ -3419,7 +3476,9 @@ - void exit(int code) - { - __cxa_finalize(0); -+#if 0 - l4x_external_exit(code); -+#endif - LOG_printf("Still alive, going zombie???\n"); - l4_sleep_forever(); - } -Index: arch/l4/kernel/tamed.c -=================================================================== ---- arch/l4/kernel/tamed.c (revision 25) -+++ arch/l4/kernel/tamed.c (working copy) -@@ -366,8 +366,12 @@ - #ifdef CONFIG_L4_VCPU - void l4x_global_halt(void) - { -- l4vcpu_halt(l4x_vcpu_state_current(), l4x_utcb_current(), -- do_vcpu_irq, l4x_srv_setup_recv_wrap); -+ l4vcpu_wait_for_event(l4x_vcpu_state_current(), l4x_utcb_current(), -+ do_vcpu_irq, l4x_srv_setup_recv_wrap); -+#ifdef CONFIG_X86 -+ // on x86, interrupts are enabled after hlt -+ l4x_global_sti(); -+#endif - } - EXPORT_SYMBOL(l4x_global_halt); - -Index: arch/l4/kernel/dispatch.c -=================================================================== ---- arch/l4/kernel/dispatch.c (revision 25) -+++ arch/l4/kernel/dispatch.c (working copy) -@@ -121,6 +121,9 @@ - { - unsigned long devmem; - -+ printk("l4x_handle_dev_mem(%lx) called - currently not supported on Genode.\n", phy); -+ return 0; -+ - #ifdef CONFIG_X86 - if (phy > 0x80000000U) { - if (!(devmem = find_ioremap_entry(phy)) -@@ -271,7 +274,7 @@ - return 0; - - if (l4_msgtag_is_page_fault(tag)) { -- l4x_printf("HYBRID PF!!\n"); -+ LOG_printf("HYBRID PF!!\n"); - /* No exception IPC, it's a page fault, but shouldn't happen */ - goto out_fail; - } -@@ -695,7 +698,7 @@ - enter_kdebug("non hybrid in idle?!"); - } else { - if (unlikely(l4x_handle_async_event(label, utcb, tag))) -- l4x_printf("Async return with error\n"); -+ LOG_printf("Async return with error\n"); - } - } - } -Index: arch/l4/include/asm/arch-arm/pgtable.h -=================================================================== ---- arch/l4/include/asm/arch-arm/pgtable.h (revision 25) -+++ arch/l4/include/asm/arch-arm/pgtable.h (working copy) -@@ -42,6 +42,7 @@ - - #include - -+#define VMALLOC_OFFSET (8*1024*1024) - #define VMALLOC_SIZE 128 - - #define VMALLOC_START l4x_vmalloc_memory_start -Index: arch/l4/include/asm/generic/l4lib.h -=================================================================== ---- arch/l4/include/asm/generic/l4lib.h (revision 25) -+++ arch/l4/include/asm/generic/l4lib.h (working copy) -@@ -3,6 +3,7 @@ - - #include - -+#if 0 - #ifdef ARCH_arm - #define L4_EXTERNAL_FUNC(func) \ - asm(".section \".data.l4externals.str\" \n" \ -@@ -58,5 +59,8 @@ - ".previous \n" \ - ) - #endif -+#endif - -+#define L4_EXTERNAL_FUNC(func) ; -+ - #endif /* __INCLUDE__ASM_L4__GENERIC__L4LIB_H__ */ -Index: arch/l4/include/asm/l4lxapi/thread.h -=================================================================== ---- arch/l4/include/asm/l4lxapi/thread.h (revision 25) -+++ arch/l4/include/asm/l4lxapi/thread.h (working copy) -@@ -32,6 +32,8 @@ - */ - void l4lx_thread_init(void); - -+void l4lx_thread_alloc_irq(l4_cap_idx_t c); -+ - /** - * \brief Create a thread. - * \ingroup thread -Index: arch/l4/boot/Makefile -=================================================================== ---- arch/l4/boot/Makefile (revision 25) -+++ arch/l4/boot/Makefile (working copy) -@@ -10,7 +10,7 @@ - $(call if_changed,objcopy) - @echo ' Kernel: $@ is ready' - --lImage: $(obj)/Image vmlinuz$(VMLINUZ_SUFFIX) l4linux$(VMLINUZ_SUFFIX) -+lImage: $(obj)/Image - - vmlinuz$(VMLINUZ_SUFFIX): ldrImage FORCE - $(call if_changed,gzip) -@@ -21,8 +21,8 @@ - - objects-y := ldr.o res.o image.o - --include $(L4OBJ)/l4defs.mk.inc -- -+#include $(L4OBJ)/l4defs.mk.inc -+KBUILD_CFLAGS_i386 = -m32 - KBUILD_CFLAGS := $(filter-out -mregparm=3,$(KBUILD_CFLAGS)) \ - $(L4INC) -I$(L4OBJ)/include/uclibc \ - -Wall -fno-strict-aliasing -O2 -pipe \ -Index: arch/l4/lib/pte.c -=================================================================== ---- arch/l4/lib/pte.c (revision 25) -+++ arch/l4/lib/pte.c (working copy) -@@ -18,7 +18,10 @@ - #include - #include - #include -+#include - -+extern void l4lx_memory_map_physical_page(unsigned long address); -+ - static void l4x_flush_page(struct mm_struct *mm, - unsigned long address, - unsigned long vaddr, -@@ -45,6 +48,12 @@ - } - } else - #endif -+#ifdef NOT_GENODE -+ /* -+ * Device memory is currently not supported on Genode. If this changes, -+ * a check for overlapping 'low memory' and 'device memory' regions -+ * must get added. -+ */ - if (address > 0x80000000UL) { - unsigned long remap; - remap = find_ioremap_entry(address); -@@ -57,8 +66,10 @@ - return; - - address = remap; -+ } else -+#endif /* NOT_GENODE */ - -- } else if ((address & PAGE_MASK) == 0) -+ if ((address & PAGE_MASK) == 0) - address = PAGE0_PAGE_ADDRESS; - - #if 0 -@@ -77,7 +88,7 @@ - if (mm && !l4_is_invalid_cap(mm->context.task)) { - L4XV_V(f); - if (!mm->context.task) -- l4x_printf("%s: Ups, task == 0\n", __func__); -+ LOG_printf("%s: Ups, task == 0\n", __func__); - /* Direct flush in the child, use virtual address in the - * child address space */ - L4XV_L(f); -@@ -93,10 +104,11 @@ - tag = l4_task_unmap(L4RE_THIS_TASK_CAP, - l4_fpage(address & PAGE_MASK, size, flush_rights), - L4_FP_OTHER_SPACES); -+ l4lx_memory_map_physical_page(address); - L4XV_U(f); - } - if (l4_error(tag)) -- l4x_printf("l4_task_unmap error %ld\n", l4_error(tag)); -+ LOG_printf("l4_task_unmap error %ld\n", l4_error(tag)); - } - - #ifdef ARCH_arm -Index: arch/x86/lib/memcpy_32.c -=================================================================== ---- arch/x86/lib/memcpy_32.c (revision 25) -+++ arch/x86/lib/memcpy_32.c (working copy) -@@ -1,8 +1,13 @@ - #include - #include - -+#ifdef NOT_GENODE - #undef memcpy - #undef memset -+#else -+#undef lx_memcpy -+#undef lx_memset -+#endif /* NOT_GENODE */ - - void *memcpy(void *to, const void *from, size_t n) - { -Index: arch/x86/include/asm/string_32.h -=================================================================== ---- arch/x86/include/asm/string_32.h (revision 25) -+++ arch/x86/include/asm/string_32.h (working copy) -@@ -179,8 +179,12 @@ - #ifndef CONFIG_KMEMCHECK - - #if (__GNUC__ >= 4) -+#ifdef NOT_GENODE - #define memcpy(t, f, n) __builtin_memcpy(t, f, n) - #else -+#define lx_memcpy(t, f, n) __memcpy(t, f, n) -+#endif -+#else - #define memcpy(t, f, n) \ - (__builtin_constant_p((n)) \ - ? __constant_memcpy((t), (f), (n)) \ -@@ -322,8 +326,12 @@ - - #define __HAVE_ARCH_MEMSET - #if (__GNUC__ >= 4) -+#ifdef NOT_GENODE - #define memset(s, c, count) __builtin_memset(s, c, count) - #else -+#define lx_memset(s, c, count) __memset(s, c, count) -+#endif -+#else - #define memset(s, c, count) \ - (__builtin_constant_p(c) \ - ? __constant_c_x_memset((s), (0x01010101UL * (unsigned char)(c)), \ -Index: drivers/tty/serial/l4ser.c -=================================================================== ---- drivers/tty/serial/l4ser.c (revision 25) -+++ drivers/tty/serial/l4ser.c (working copy) -@@ -22,10 +22,12 @@ - #include - - #include -+#include - #include - #include - #include - #include -+#include - #include - #include - #include -@@ -118,7 +120,7 @@ - int c; - - if (port->x_char) { -- L4XV_FN_v(l4_vcon_write(l4port->vcon_cap, &port->x_char, 1)); -+ L4XV_FN_v(l4_vcon_write(LOG_printf("%c", port->x_char)); - port->icount.tx++; - port->x_char = 0; - return; -@@ -128,7 +130,12 @@ - c = CIRC_CNT_TO_END(xmit->head, xmit->tail, UART_XMIT_SIZE); - if (c > L4_VCON_WRITE_SIZE) - c = L4_VCON_WRITE_SIZE; -- L4XV_FN_v(l4_vcon_write(l4port->vcon_cap, &xmit->buf[xmit->tail], c)); -+ L4XV_L(f); -+ char *ptr = (char*)&xmit->buf[xmit->tail], old = ptr[c]; -+ ptr[c] = 0; -+ LOG_printf("%s", ptr); -+ ptr[c] = old; -+ L4XV_U(f); - xmit->tail = (xmit->tail + c) & (UART_XMIT_SIZE - 1); - port->icount.tx += c; - } -@@ -247,7 +254,7 @@ - if (l4ser_port[num].inited) - return 0; - l4ser_port[num].inited = 1; -- -+#if 0 - if ((r = l4x_re_resolve_name(name, &l4ser_port[num].vcon_cap))) { - if (num == 0) - l4ser_port[num].vcon_cap = l4re_env()->log; -@@ -285,7 +292,7 @@ - vcon_attr.i_flags = 0; - vcon_attr.o_flags = 0; - vcon_attr.l_flags = 0; -- L4XV_FN_v(l4_vcon_set_attr(l4ser_port[num].vcon_cap, &vcon_attr)); -+// L4XV_FN_v(l4_vcon_set_attr(l4ser_port[num].vcon_cap, &vcon_attr)); - - l4ser_port[num].port.uartclk = 3686400; - l4ser_port[num].port.ops = &l4ser_pops; -@@ -326,7 +333,13 @@ - unsigned c = count; - if (c > L4_VCON_WRITE_SIZE) - c = L4_VCON_WRITE_SIZE; -- L4XV_FN_v(l4_vcon_write(l4ser_port[co->index].vcon_cap, s, c)); -+ L4XV_L(f); -+ char *ptr = (char*)s, old = ptr[c]; -+ ptr[c] = 0; -+ LOG_printf("%s", ptr); -+ ptr[c] = old; -+ -+ L4XV_U(f); - count -= c; - } while (count); - } -Index: include/asm-generic/vmlinux.lds.h -=================================================================== ---- include/asm-generic/vmlinux.lds.h (revision 25) -+++ include/asm-generic/vmlinux.lds.h (working copy) -@@ -371,6 +371,7 @@ - VMLINUX_SYMBOL(__start___modver) = .; \ - *(__modver) \ - VMLINUX_SYMBOL(__stop___modver) = .; \ -+ LONG(0) /* enforce non-zero section size */ \ - . = ALIGN((align)); \ - VMLINUX_SYMBOL(__end_rodata) = .; \ - } \ diff --git a/repos/ports-foc/patches/parent_cap_ld_script.patch b/repos/ports-foc/patches/parent_cap_ld_script.patch deleted file mode 100644 index c54599cc2..000000000 --- a/repos/ports-foc/patches/parent_cap_ld_script.patch +++ /dev/null @@ -1,29 +0,0 @@ -+++ arch/l4/kernel/arch-arm/vmlinux.lds.S -@@ -108,6 +108,12 @@ SECTIONS - LONG(0xffffffff); - _parent_cap_local_name = .; - LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); - } : rw - - . = ALIGN(4096); -+++ arch/l4/kernel/arch-x86/vmlinux.lds.S -@@ -101,6 +101,13 @@ SECTIONS - LONG(0xffffffff); - _parent_cap_local_name = .; - LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); -+ LONG(0xffffffff); - - /* - * Platform-specific entry for Fiasco.OC. diff --git a/repos/ports-foc/patches/tcp_mem.patch b/repos/ports-foc/patches/tcp_mem.patch deleted file mode 100644 index 5f2c8f3e1..000000000 --- a/repos/ports-foc/patches/tcp_mem.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: net/ipv4/tcp.c -=================================================================== ---- net/ipv4/tcp.c (revision 25) -+++ net/ipv4/tcp.c (working copy) -@@ -3549,6 +3549,13 @@ - tcp_init_mem(&init_net); - /* Set per-socket limits to no more than 1/128 the pressure threshold */ - limit = nr_free_buffer_pages() << (PAGE_SHIFT - 7); -+ -+ /* -+ * Adjust limit so it performs well on systems with little memory. If -+ * this causes errors increase L4Linux main memory -+ */ -+ limit = limit < 768U * 1024 ? 768U * 1024 : limit; -+ - max_wshare = min(4UL*1024*1024, limit); - max_rshare = min(6UL*1024*1024, limit); - diff --git a/repos/ports-foc/ports/l4android.hash b/repos/ports-foc/ports/l4android.hash deleted file mode 100644 index 0558d7d88..000000000 --- a/repos/ports-foc/ports/l4android.hash +++ /dev/null @@ -1 +0,0 @@ -1e6243ccb8f368ed15b7f42c339434e46d0062a9 diff --git a/repos/ports-foc/ports/l4android.port b/repos/ports-foc/ports/l4android.port deleted file mode 100644 index d622724d3..000000000 --- a/repos/ports-foc/ports/l4android.port +++ /dev/null @@ -1,15 +0,0 @@ -LICENSE := GPLv2 -VERSION := git -DOWNLOADS := l4android.git -URL(l4android) := https://github.com/skalk/l4linux.git -REV(l4android) := cea6e7ab97a5ad421e53d456dd940893d5a14866 -DIR(l4android) := src/l4android -PATCHES := patches/parent_cap_ld_script.patch -PATCH_OPT := -p0 -d src/l4android -sym_link := src/l4android/arch/l4/drivers - -default: $(sym_link) - -# make sure to have downloaded the files before symlinking into it -$(sym_link) : $(DOWNLOADS) - $(VERBOSE)ln -sfT $(REP_DIR)/src/drivers $@ diff --git a/repos/ports-foc/ports/l4linux.hash b/repos/ports-foc/ports/l4linux.hash deleted file mode 100644 index db36d0174..000000000 --- a/repos/ports-foc/ports/l4linux.hash +++ /dev/null @@ -1 +0,0 @@ -153fac6366d79b8380ccc97a3a7ed099cedb51b2 diff --git a/repos/ports-foc/ports/l4linux.port b/repos/ports-foc/ports/l4linux.port deleted file mode 100644 index 3cb0d4809..000000000 --- a/repos/ports-foc/ports/l4linux.port +++ /dev/null @@ -1,15 +0,0 @@ -LICENSE := GPLv2 -VERSION := git -DOWNLOADS := l4linux.git -URL(l4linux) := https://github.com/skalk/l4linux.git -REV(l4linux) := 25aa4a5f25c920e18aa18899e45c71974058d813 -DIR(l4linux) := src/l4linux -PATCHES := patches/parent_cap_ld_script.patch -PATCH_OPT := -p0 -d src/l4linux -sym_link := src/l4linux/arch/l4/drivers - -default: $(sym_link) - -# make sure to have downloaded the files before symlinking into it -$(sym_link) : $(DOWNLOADS) - $(VERBOSE)ln -sfT $(REP_DIR)/src/drivers $@ diff --git a/repos/ports-foc/run/l4linux.run b/repos/ports-foc/run/l4linux.run deleted file mode 100644 index 039775eaf..000000000 --- a/repos/ports-foc/run/l4linux.run +++ /dev/null @@ -1,170 +0,0 @@ -assert_spec foc -assert_spec 32bit - -# -# Build -# -set build_components { - core - init - drivers/timer - drivers/uart - drivers/framebuffer - l4linux } - -set use_usb_driver [expr [have_spec omap4] || [have_spec arndale]] -set use_nic_driver [expr !$use_usb_driver && [expr [have_spec lan9118] || [have_spec x86]]] - -if {[expr !$use_usb_driver && !$use_nic_driver]} { - puts "\n Run script is not supported on this platform. \n"; exit 0 } - -lappend_if $use_usb_driver build_components drivers/usb -lappend_if $use_nic_driver build_components drivers/nic -lappend_if [have_spec ps2] build_components drivers/input/spec/ps2 -lappend_if [have_spec gpio] build_components drivers/gpio - -source ${genode_dir}/repos/base/run/platform_drv.inc -append_platform_drv_build_components - -build $build_components - -create_boot_directory - -# -# Config -# -set config { - - - - - - - - - - - - - - - - - - - - - - - - - - - } - -append_platform_drv_config - -append_if [have_spec framebuffer] config { - - - - } - -append_if [have_spec ps2] config { - - - - } - -append_if [have_spec gpio] config { - - - - - } - -append_if $use_usb_driver config { - - - - - - - - - - - } - -append_if $use_nic_driver config { - - - - } - -append config { - - } - -append_if [have_spec x86] config { - } - -append_if [have_spec arm] config { - } - -append config { - - } - -install_config $config - -# -# Boot modules -# -set boot_modules { core ld.lib.so init timer kdb_uart_drv l4linux initrd.gz } -lappend_if [have_spec ps2] boot_modules ps2_drv -lappend_if [have_spec framebuffer] boot_modules fb_drv -lappend_if $use_nic_driver boot_modules nic_drv -lappend_if $use_usb_driver boot_modules usb_drv -lappend_if [have_spec gpio] boot_modules gpio_drv - -if {[have_spec x86]} { - set uri "http://genode.org/files/release-11.11/l4lx/initrd-ia32.gz" -} elseif {[have_spec arm]} { - set uri "http://genode.org/files/release-11.11/l4lx/initrd-arm.gz" -} -if {![file exists bin/initrd.gz]} { - puts "Download initramfs ..." - exec >& /dev/null wget -c -O bin/initrd.gz $uri -} -exec >& /dev/null wget -O bin/initrd.gz.md5 $uri.md5 -cd bin -exec md5sum -c initrd.gz.md5 -cd .. - -append_platform_drv_boot_modules - -build_boot_image [join $boot_modules " "] - -# -# Qemu -# -append qemu_args " -m 160 -nographic " -append qemu_args " -serial mon:stdio " -append_if [have_spec x86] qemu_args " -smp 2,cores=2 " -append_if [have_spec x86] qemu_args " -net nic,model=e1000 -net user " -append_if [have_spec lan9118] qemu_args " -net nic,model=lan9118 -net user " - -# -# Execute test case -# -run_genode_until {.*\/ #.*} 220 -set serial_id [output_spawn_id] - -# Wait for network to settle down -send -i $serial_id "sleep 5\n" -send -i $serial_id "wget http://genode.org/\n" - -run_genode_until "Connecting to genode.org.*index.html.*\/ #.*" 30 $serial_id - -exec rm bin/initrd.gz bin/initrd.gz.md5 diff --git a/repos/ports-foc/run/l4linux_ahci_bench.run b/repos/ports-foc/run/l4linux_ahci_bench.run deleted file mode 100644 index 3cae49d4e..000000000 --- a/repos/ports-foc/run/l4linux_ahci_bench.run +++ /dev/null @@ -1,139 +0,0 @@ - -# -# settings -# -set interpose_part_blk 0 - -assert_spec foc -assert_spec arndale - -# -# build -# -set build_components { - core - init - drivers/timer - drivers/uart - drivers/ahci - drivers/platform - l4linux -} - -lappend_if $interpose_part_blk build_components server/part_blk - -build $build_components -create_boot_directory - -# -# genode config -# -set config { - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - } - -append_if $interpose_part_blk config { - - - - - - - - - - - } - -append config { - - - - - } - -append_if $interpose_part_blk config { - - - - } - -append config { - - } - -install_config $config - -# -# boot modules -# -set boot_modules { - core - ld.lib.so - init - timer - kdb_uart_drv - l4linux - initrd.gz - ahci_drv - platform_drv } - -lappend_if $interpose_part_blk boot_modules part_blk - -set uri "http://genode.org/files/l4linux/initrd-ahci-bench.gz" -if {![file exists bin/initrd.gz]} { - puts "Download initramfs ..." - exec >& /dev/null wget -c -O bin/initrd.gz $uri -} -exec >& /dev/null wget -O bin/initrd.gz.md5 $uri.md5 -cd bin -exec md5sum -c initrd.gz.md5 -cd .. - -set fiasco_serial_esc_arg "" - -build_boot_image [join $boot_modules " "] - -# -# qemu -# -append qemu_args " -m 512 -nographic " - -# -# execute test -# -run_genode_until forever - diff --git a/repos/ports-foc/run/l4linux_netperf.inc b/repos/ports-foc/run/l4linux_netperf.inc deleted file mode 100644 index 6d229a85e..000000000 --- a/repos/ports-foc/run/l4linux_netperf.inc +++ /dev/null @@ -1,267 +0,0 @@ -# -# \brief Test using netperf with l4linux -# \author Sebastian Sumpf -# \date 2013-07-08 -# - -assert_spec foc -assert_spec 32bit -assert_spec arndale - -set ip [check_installed ip] -set wget [check_installed wget] -set md5 [check_installed md5sum] - - -if {$use_nic_bridge == 1} { -set route_nic "nic_bridge" -} else { -set route_nic "usb_drv" -} - -set version "2.4.4" - -# sanity check that the right version is used -set wrong_version [catch { - spawn netperf-$version -V - expect { - "Netperf version $version" { } - eof { return } - timeout { return } - } - spawn netserver-$version -V - expect { - "Netperf version $version" { } - eof { return } - timeout { return } - } -}] - -if {$wrong_version} { - puts -nonewline "\nPlease compile a netperf client of version $version " - puts "for your host system." - puts -nonewline "The sources are available via " - puts "ftp://ftp.netperf.org/netperf/archive/netperf-2.4.4.tar.bz2" - puts "Please name the binary netperf-$version and netserver-$version\n" - exit 1; -} - -# -# Build -# -set build_components { - core - init - drivers/usb - drivers/timer - drivers/uart - server/nic_bridge - l4linux -} - -source ${genode_dir}/repos/base/run/platform_drv.inc -append_platform_drv_build_components - -build $build_components - -create_boot_directory - -# -# Config -# -set config { - - - - - - - - - - - - - - - - - - - -} - -append_platform_drv_config - -append config { - - - - - - - - - - - - - - - } -append config " - " -append config { - - - - - - -} - -append config { - - - - - } - append config "\t\t " - append config { - - - - } - - append_if $use_nic_bridge config { - - - - - - - - - - } - - -append config { - -} - -install_config $config - -# -# Boot modules -# -set boot_modules { - core - ld.lib.so - init - timer - l4linux - initrd.gz - usb_drv - nic_bridge - kdb_uart_drv -} - -set uri "http://genode.org/files/l4linux/initrd-arm-netperf.gz" -if {[have_spec x86]} { - set uri "http://genode.org/files/l4linux/busybox-initrd-x86-20140506.gz" -} elseif {[have_spec arm]} { - set uri "http://genode.org/files/l4linux/initrd-arm-mdev.gz" -} - -if {![file exists bin/initrd.gz]} { - puts "Download initramfs ..." - exec >& /dev/null $wget -c -O bin/initrd.gz $uri - exec >& /dev/null $wget -O bin/initrd.gz.md5 $uri.md5 - cd bin - exec $md5 -c initrd.gz.md5 - cd .. -} - -append_platform_drv_boot_modules - -build_boot_image $boot_modules - - -# -# Execute test case -# -set ip_match "(\[0-9]{1,3})\\.(\[0-9]{1,3})\\.(\[0-9]{1,3})\\.(\[0-9]{1,3})" - -# -# Local IP -# -set ip_string [ exec $ip addr show dev eth0 ] -regexp $ip_match $ip_string ip_local - - -# -# Remote IP -# -run_genode_until "netif_info: register.*\n" 60 -set serial_id [output_spawn_id] -sleep 8 -send -i $serial_id "ip addr show dev eth0\n" -run_genode_until "inet.*\n" 3 $serial_id -regexp $ip_match $output ip_remote - -puts "Using local IP: $ip_local remote IP: $ip_remote" - - -# -# TX (from board to local) -# -puts "\nTransmission test:" - -exec netserver-$version -p 8888 & -send -i $serial_id "netperf -p 8888 -H $ip_local -c -C -t TCP_STREAM && uname\n" -run_genode_until "Linux.*" 30 $serial_id - -puts "\n\n" - -# get throughput_tx from netperf output -set throughput_tx [regexp -all -inline {([0-9]+[ ]+){3}[0-9]+\.[0-9]+[ ]+[0-9]+\.[0-9]+} $output] -set throughput_tx [regexp -all -inline {[0-9]+\.[0-9]+} $throughput_tx] - -# -# RX -# -puts "Receive test:" - -set results [exec netperf-$version -p 8888 -H $ip_remote -t TCP_STREAM] -puts $results - -# get throughput from netperf output -set throughput_rx [regexp -all -inline {([0-9]+[ ]+){3}[0-9]+\.[0-9]+[ ]+[0-9]+\.[0-9]+} $results] -set throughput_rx [regexp -all -inline {[0-9]+\.[0-9]+} $throughput_rx] - -puts "\n" - -# -# format output parseable for post proccessing scripts -# -puts -nonewline "! PERF: TCP_TX" -if {$use_nic_bridge} { puts -nonewline "_bridge" } -if {![string compare $use_usb_11 "yes"]} { puts -nonewline "_uhci" } -if {![string compare $use_usb_20 "yes"]} { puts -nonewline "_ohci" } -if {![string compare $use_usb_30 "yes"]} { puts -nonewline "_xhci" } -puts " [lindex $throughput_tx 1] MBit/s ok" - -puts -nonewline "! PERF: TCP_RX" -if {$use_nic_bridge} { puts -nonewline "_bridge" } -if {![string compare $use_usb_11 "yes"]} { puts -nonewline "_uhci" } -if {![string compare $use_usb_20 "yes"]} { puts -nonewline "_ohci" } -if {![string compare $use_usb_30 "yes"]} { puts -nonewline "_xhci" } -puts " [lindex $throughput_rx 1] MBit/s ok" - -exec rm bin/initrd.gz bin/initrd.gz.md5 - -close -i $serial_id -exec killall netserver-$version - -# vi: set ft=tcl : diff --git a/repos/ports-foc/run/l4linux_netperf.run b/repos/ports-foc/run/l4linux_netperf.run deleted file mode 100644 index e20d0df86..000000000 --- a/repos/ports-foc/run/l4linux_netperf.run +++ /dev/null @@ -1,18 +0,0 @@ -# -# \brief Test using netperf with l4linux -# \date 2013-07-08 -# - -if {[have_include "power_on/qemu"]} { - puts "\nNetperf running on Qemu is not supported.\n" - exit -} - -# network configuration -set use_nic_bridge 0 - -set use_usb_11 "no" -set use_usb_20 "yes" -set use_usb_30 "no" - -source ${genode_dir}/repos/ports-foc/run/l4linux_netperf.inc diff --git a/repos/ports-foc/run/l4linux_netperf_bridge.run b/repos/ports-foc/run/l4linux_netperf_bridge.run deleted file mode 100644 index 03ca833a3..000000000 --- a/repos/ports-foc/run/l4linux_netperf_bridge.run +++ /dev/null @@ -1,18 +0,0 @@ -# -# \brief Test using netperf with l4linux and bridge -# \date 2013-07-08 -# - -if {[have_include "power_on/qemu"]} { - puts "\nNetperf running on Qemu is not supported.\n" - exit -} - -# network configuration -set use_nic_bridge 1 - -set use_usb_11 "no" -set use_usb_20 "no" -set use_usb_30 "yes" - -source ${genode_dir}/repos/ports-foc/run/l4linux_netperf.inc diff --git a/repos/ports-foc/run/l4linux_netperf_usb30.run b/repos/ports-foc/run/l4linux_netperf_usb30.run deleted file mode 100644 index 5e24d9ba3..000000000 --- a/repos/ports-foc/run/l4linux_netperf_usb30.run +++ /dev/null @@ -1,18 +0,0 @@ -# -# \brief Test using netperf with l4linux -# \date 2013-07-08 -# - -if {[have_include "power_on/qemu"]} { - puts "\nNetperf running on Qemu is not supported.\n" - exit -} - -# network configuration -set use_nic_bridge 0 - -set use_usb_11 "no" -set use_usb_20 "no" -set use_usb_30 "yes" - -source ${genode_dir}/repos/ports-foc/run/l4linux_netperf.inc diff --git a/repos/ports-foc/run/linux_panda.run b/repos/ports-foc/run/linux_panda.run deleted file mode 100644 index 196d3ee76..000000000 --- a/repos/ports-foc/run/linux_panda.run +++ /dev/null @@ -1,135 +0,0 @@ -assert_spec foc -assert_spec panda - -# -# Build -# -build { - core - init - drivers/timer - drivers/framebuffer - drivers/sd_card - drivers/usb - drivers/gpio - server/nic_bridge - server/part_blk - l4linux -} - -create_boot_directory - -# -# Config -# -set config { - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -} - -install_config $config - -# -# Boot modules -# -set boot_modules { - core - ld.lib.so - init - timer - nic_bridge - part_blk - l4linux - initrd.gz - fb_drv - sd_card_drv - gpio_drv - usb_drv -} - -set uri "http://genode.org/files/l4linux/busybox-initrd-arm-20120710.gz" -if {![file exists bin/initrd.gz]} { - puts "Download initramfs ..." - exec >& /dev/null wget -c -O bin/initrd.gz $uri -} -exec >& /dev/null wget -O bin/initrd.gz.md5 $uri.md5 -cd bin -exec md5sum -c initrd.gz.md5 -cd .. - -build_boot_image [join $boot_modules " "] - diff --git a/repos/ports-foc/src/drivers/Makefile b/repos/ports-foc/src/drivers/Makefile deleted file mode 100644 index d26248e03..000000000 --- a/repos/ports-foc/src/drivers/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -obj-y += genode_serial.o -obj-$(CONFIG_GENODE_BALLOON) += genode_balloon.o -obj-$(CONFIG_RTC_CLASS) += genode_rtc.o -obj-$(CONFIG_FB) += genode_fb.o -obj-$(CONFIG_BLOCK) += genode_block.o -obj-$(CONFIG_NET) += genode_net.o diff --git a/repos/ports-foc/src/drivers/genode_balloon.c b/repos/ports-foc/src/drivers/genode_balloon.c deleted file mode 100644 index 11b1a091e..000000000 --- a/repos/ports-foc/src/drivers/genode_balloon.c +++ /dev/null @@ -1,112 +0,0 @@ - -/* - * \brief Balloon driver to use Genode's dynamic memory balancing - * \author Stefan Kalkowski - * \date 2013-09-19 - */ - -/* - * Copyright (C) 2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Linux includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include - -#define GFP_BALLOON \ - (__GFP_IO | __GFP_FS | __GFP_HARDWALL | __GFP_HIGHMEM | __GFP_NOWARN | __GFP_NORETRY | __GFP_NOMEMALLOC) - -enum { CHUNK_CACHE_SIZE = 16384 }; -static void* chunk_cache[CHUNK_CACHE_SIZE]; - - -static void free_avail_pages(unsigned long data) -{ - void *pages; - unsigned i = 0; - - LOG_printf("free_avail_pages\n"); - for (; i < CHUNK_CACHE_SIZE; i++) { - pages = alloc_pages_exact(SZ_1M, GFP_BALLOON); - if (!pages) - break; - chunk_cache[i] = pages; - } - - BUG_ON(i == CHUNK_CACHE_SIZE); - - /* Ensure that ballooned highmem pages don't have kmaps. */ - kmap_flush_unused(); - flush_tlb_all(); - - for (; i > 0;) { - genode_balloon_free_chunk((unsigned long)chunk_cache[--i]); - free_pages_exact(chunk_cache[i], SZ_1M); - } - - LOG_printf("free_avail_pages done\n"); - genode_balloon_free_done(); -} - -DECLARE_TASKLET(free_avail, free_avail_pages, 0); - -static irqreturn_t event_interrupt(int irq, void *data) -{ - tasklet_schedule(&free_avail); - return IRQ_HANDLED; -} - - -static struct platform_device genode_balloon_device = { - .name = "balloon-genode", -}; - - -static int __init balloon_init(void) -{ - int ret = 0; - unsigned irq; - l4_cap_idx_t irq_cap; - - /* - * touch the memory eager otherwise we run into trouble - * when memory is empty and we balloon - */ - memset(&chunk_cache, 0, sizeof(chunk_cache)); - - /** - * Obtain an IRQ for the device. - */ - irq_cap = genode_balloon_irq_cap(); - if ((irq = l4x_register_irq(irq_cap)) < 0) - return -ENOMEM; - if ((ret = request_irq(irq, event_interrupt, 0, - "Genode balloon", &genode_balloon_device))) { - printk(KERN_WARNING "%s: request_irq failed: %d\n", __func__, ret); - return ret; - } - - ret = platform_device_register(&genode_balloon_device); - return ret; -} - -subsys_initcall(balloon_init); - -MODULE_LICENSE("GPL"); diff --git a/repos/ports-foc/src/drivers/genode_block.c b/repos/ports-foc/src/drivers/genode_block.c deleted file mode 100644 index 48405b0cc..000000000 --- a/repos/ports-foc/src/drivers/genode_block.c +++ /dev/null @@ -1,301 +0,0 @@ -/* - * \brief Block driver to access Genode's block service - * \author Stefan Kalkowski - * \date 2010-07-08 - */ - -/* - * Copyright (C) 2010-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Linux includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Genode support library includes */ -#include -#include -#include - -enum Geometry { - KERNEL_SECTOR_SIZE = 512, /* sector size used by kernel */ - GENODE_BLK_MINORS = 16 /* number of minor numbers */ -}; - - -/* - * The internal representation of our device. - */ -struct genode_blk_device { - unsigned blk_cnt; /* Total block count */ - unsigned long blk_sz; /* Single block size */ - spinlock_t lock; /* For mutual exclusion */ - struct gendisk *gd; /* Generic disk structure */ - struct request_queue *queue; /* The device request queue */ - struct semaphore queue_wait; /* Used to block, when queue is full */ - short stopped; /* Indicates queue availability */ - unsigned irq; /* IRQ number */ - l4_cap_idx_t irq_cap; /* IRQ capability slot */ - unsigned idx; /* drive index */ -}; - -enum { MAX_DISKS = 16 }; -static struct genode_blk_device blk_devs[MAX_DISKS]; - -/* - * Handle an I/O request. - */ -static void genode_blk_request(struct request_queue *q) -{ - struct request *req; - unsigned long queue_offset; - void *buf; - unsigned long long offset; - unsigned long nbytes; - short write; - struct genode_blk_device* dev; - - while ((req = blk_fetch_request(q))) { - dev = req->rq_disk->private_data; - buf = 0; - offset = blk_rq_pos(req) * KERNEL_SECTOR_SIZE; - nbytes = blk_rq_bytes(req); - write = rq_data_dir(req) == WRITE; - - if (req->cmd_type != REQ_TYPE_FS) { - printk(KERN_NOTICE "Skip non-fs request\n"); - __blk_end_request_all(req, -EIO); - continue; - } - - while (!buf) { - unsigned long flags; - - if ((buf = genode_block_request(dev->idx, nbytes, req, &queue_offset))) - break; - - /* stop_queue needs disabled interrupts */ - local_irq_save(flags); - blk_stop_queue(q); - - dev->stopped = 1; - - /* - * This function is called with the request queue lock held, unlock to - * enable VCPU IRQs - */ - spin_unlock_irqrestore(q->queue_lock, flags); - /* block until new responses are available */ - down(&dev->queue_wait); - spin_lock_irqsave(q->queue_lock, flags); - - /* start_queue needs disabled interrupts */ - blk_start_queue(q); - local_irq_restore(flags); - } - - if (write) { - char *ptr = (char*) buf; - struct req_iterator iter; - struct bio_vec *bvec; - - rq_for_each_segment(bvec, req, iter) { - void *buffer = page_address(bvec->bv_page) + bvec->bv_offset; - genode_memcpy((void*)ptr, buffer, bvec->bv_len); - ptr += bvec->bv_len; - } - } - - genode_block_submit(dev->idx, queue_offset, nbytes, offset, write); - } -} - - -static void FASTCALL -genode_end_request(void *request, short write, - void *buf, unsigned long sz) { - struct request *req = (struct request*) request; - struct genode_blk_device *dev = req->rq_disk->private_data; - char *ptr = (char*) buf; - - if (!write) { - struct req_iterator iter; - struct bio_vec *bvec; - - rq_for_each_segment(bvec, req, iter) { - void *buffer = page_address(bvec->bv_page) + bvec->bv_offset; - genode_memcpy(buffer, (void*)ptr, bvec->bv_len); - ptr += bvec->bv_len; - } - } - - __blk_end_request_all(req, 0); - - if (dev->stopped) { - dev->stopped = 0; - up(&dev->queue_wait); - } -} - - -static int genode_blk_getgeo(struct block_device *bdev, struct hd_geometry *geo) -{ - struct genode_blk_device *dev = bdev->bd_disk->private_data; - unsigned long size = dev->blk_cnt * dev->blk_sz * - (dev->blk_sz / KERNEL_SECTOR_SIZE); - geo->cylinders = size >> 7; - geo->heads = 4; - geo->sectors = 32; - return 0; -} - - -/* - * The device operations structure. - */ -static struct block_device_operations genode_blk_ops = { - .owner = THIS_MODULE, - .getgeo = genode_blk_getgeo -}; - - -static irqreturn_t event_interrupt(int irq, void *data) -{ - unsigned long flags; - struct genode_blk_device *dev = (struct genode_blk_device *)data; - spin_lock_irqsave(dev->queue->queue_lock, flags); - genode_block_collect_responses(dev->idx); - spin_unlock_irqrestore(dev->queue->queue_lock, flags); - return IRQ_HANDLED; -} - - -static int __init genode_blk_init(void) -{ - int err; - unsigned drive; - unsigned drive_cnt = (genode_block_count() > MAX_DISKS) - ? MAX_DISKS : genode_block_count(); - - /** - * Loop through all Genode block devices and register them in Linux. - */ - for (drive = 0 ; drive < drive_cnt; drive++) { - int major_num; - int writeable = 0; - unsigned long req_queue_sz = 0; - - /* Initialize device structure */ - memset (&blk_devs[drive], 0, sizeof(struct genode_blk_device)); - blk_devs[drive].idx = drive; - spin_lock_init(&blk_devs[drive].lock); - - genode_block_geometry(drive, (unsigned long*)&blk_devs[drive].blk_cnt, - &blk_devs[drive].blk_sz, &writeable, &req_queue_sz); - - /** - * Obtain an IRQ for the drive. - */ - blk_devs[drive].irq_cap = genode_block_irq_cap(drive); - if ((blk_devs[drive].irq = l4x_register_irq(blk_devs[drive].irq_cap)) < 0) - return -ENOMEM; - if ((err = request_irq(blk_devs[drive].irq, event_interrupt, 0, - "Genode block", &blk_devs[drive]))) { - printk(KERN_WARNING "%s: request_irq failed: %d\n", __func__, err); - return err; - } - - /* - * Get a request queue. - */ - if(!(blk_devs[drive].queue = blk_init_queue(genode_blk_request, - &blk_devs[drive].lock))) - return -ENOMEM; - - /* - * Align queue requests to hardware sector size. - */ - blk_queue_logical_block_size(blk_devs[drive].queue, blk_devs[drive].blk_sz); - - /* - * Important, limit number of sectors per request, - * as Genode's block-session has a limited request-transmit-queue. - */ - blk_queue_max_hw_sectors(blk_devs[drive].queue, req_queue_sz / KERNEL_SECTOR_SIZE); - blk_devs[drive].queue->queuedata = &blk_devs[drive]; - - sema_init(&blk_devs[drive].queue_wait, 0); - blk_devs[drive].stopped = 0; - - /* - * Register block device and gain major number. - */ - major_num = register_blkdev(0, genode_block_name(drive)); - if(major_num < 1) { - printk(KERN_WARNING "genode_blk: unable to get major number\n"); - return -EBUSY; - } - - /* - * Allocate and setup generic disk structure. - */ - if(!(blk_devs[drive].gd = alloc_disk(GENODE_BLK_MINORS))) { - unregister_blkdev(major_num, genode_block_name(drive)); - return -ENOMEM; - } - blk_devs[drive].gd->major = major_num; - blk_devs[drive].gd->first_minor = 0; - blk_devs[drive].gd->fops = &genode_blk_ops; - blk_devs[drive].gd->private_data = &blk_devs[drive]; - blk_devs[drive].gd->queue = blk_devs[drive].queue; - strncpy(blk_devs[drive].gd->disk_name, genode_block_name(drive), - sizeof(blk_devs[drive].gd->disk_name)); - set_capacity(blk_devs[drive].gd, blk_devs[drive].blk_cnt * - (blk_devs[drive].blk_sz / KERNEL_SECTOR_SIZE)); - - /* Set it read-only or writeable */ - if (!writeable) - set_disk_ro(blk_devs[drive].gd, 1); - - if (drive == 0) - genode_block_register_callback(genode_end_request); - - /* Make the block device available to the system */ - add_disk(blk_devs[drive].gd); - } - - printk(KERN_NOTICE "Genode blk-file driver initialized\n"); - return 0; -} - - -static void __exit -genode_blk_exit(void) -{ - unsigned drive, drive_cnt = (genode_block_count() > MAX_DISKS) - ? MAX_DISKS : genode_block_count(); - for (drive = 0 ; drive < drive_cnt; drive++) { - del_gendisk(blk_devs[drive].gd); - put_disk(blk_devs[drive].gd); - unregister_blkdev(blk_devs[drive].gd->major, genode_block_name(drive)); - blk_cleanup_queue(blk_devs[drive].queue); - } -} - -module_init(genode_blk_init); -module_exit(genode_blk_exit); - -MODULE_LICENSE("GPL"); diff --git a/repos/ports-foc/src/drivers/genode_fb.c b/repos/ports-foc/src/drivers/genode_fb.c deleted file mode 100644 index 3023e7629..000000000 --- a/repos/ports-foc/src/drivers/genode_fb.c +++ /dev/null @@ -1,526 +0,0 @@ -/* - * \brief Genode screen driver - * \author Stefan Kalkowski - * \date 2010-04-20 - * - * This driver enables usage of any of Genode's framebuffer, input - * and nitpicker sessions, as defined in Linux corresponding XML config stub. - * The implementation is based on virtual (vfb.c) and - * L4 (l4fb.c) framebuffer driver of L4Linux from TU-Dresden. - */ - -/* - * Copyright (C) 2010-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Linux includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Platform includes */ -#include - -/* L4 includes */ -#include - -/* Genode support lib includes */ -#include -#include - - -/********************************** - ** Datastructure declarations ** - **********************************/ - -/** - * List of available framebuffers (used by device->driver_data) - */ -struct genodefb_infolist { - struct fb_info *info; - struct genodefb_infolist *next; -}; - - -/********************** - ** Global variables ** - **********************/ - -static const int IRQ_KEYBOARD = 2; - -static const char GENODEFB_DRV_NAME[] = "genodefb"; - -static unsigned int poll_sleep = HZ / 10; -static struct timer_list input_timer; - -static struct fb_var_screeninfo genodefb_var __initdata = { - .activate = FB_ACTIVATE_NOW, - .height = -1, - .width = -1, - .right_margin = 32, - .upper_margin = 16, - .lower_margin = 4, - .vsync_len = 4, - .vmode = FB_VMODE_NONINTERLACED, - .bits_per_pixel = 16, // Genode only supports RGB565 by now */ - .red.length = 5, - .red.offset = 11, - .green.length = 6, - .green.offset = 5, - .blue.length = 5, - .blue.offset = 0, - .transp.length = 0, - .transp.offset = 0, -}; - -static struct fb_fix_screeninfo genodefb_fix __initdata = { - .id = "genode_fb", - .type = FB_TYPE_PACKED_PIXELS, - .accel = FB_ACCEL_NONE, - .visual = FB_VISUAL_TRUECOLOR, - .ypanstep = 0, - .ywrapstep = 0, -}; - -static u32 pseudo_palette[17]; - - -/************************* - ** Device operations ** - *************************/ - -/* - * Set a single color register. The values supplied are - * already rounded down to the hardware's capabilities - * (according to the entries in the `var' structure). Return - * != 0 for invalid regno and pixel formats. - */ -static int genodefb_setcolreg(unsigned regno, unsigned red, unsigned green, - unsigned blue, unsigned transp, - struct fb_info *info) -{ - if (regno >= info->cmap.len || info->var.bits_per_pixel != 16) - return 1; - - if (regno < 16) - ((u32*) (info->pseudo_palette))[regno] = - ((red >> (16 - info->var.red.length)) << info->var.red.offset) | - ((green >> (16 - info->var.green.length)) << info->var.green.offset) | - ((blue >> (16 - info->var.blue.length)) << info->var.blue.offset); - return 0; -} - - -/** - * Pan or Wrap the Display - * - * This call looks only at xoffset, yoffset and the FB_VMODE_YWRAP flag - */ -static int genodefb_pan_display(struct fb_var_screeninfo *var, - struct fb_info *info) -{ - if (var->vmode & FB_VMODE_YWRAP) { - if (var->yoffset < 0 - || var->yoffset >= info->var.yres_virtual - || var->xoffset) - return -EINVAL; - } else { - if (var->xoffset + var->xres > info->var.xres_virtual || - var->yoffset + var->yres > info->var.yres_virtual) - return -EINVAL; - } - info->var.xoffset = var->xoffset; - info->var.yoffset = var->yoffset; - if (var->vmode & FB_VMODE_YWRAP) - info->var.vmode |= FB_VMODE_YWRAP; - else - info->var.vmode &= ~FB_VMODE_YWRAP; - return 0; -} - - -static void genodefb_copyarea(struct fb_info *info, - const struct fb_copyarea *region) -{ - cfb_copyarea(info, region); - genode_fb_refresh(info->node, region->dx, region->dy, - region->width, region->height); -} - - -static void genodefb_fillrect(struct fb_info *info, - const struct fb_fillrect *rect) -{ - cfb_fillrect(info, rect); - genode_fb_refresh(info->node, rect->dx, rect->dy, - rect->width, rect->height); -} - - -static void genodefb_imageblit(struct fb_info *info, - const struct fb_image *image) -{ - cfb_imageblit(info, image); - genode_fb_refresh(info->node, image->dx, image->dy, - image->width, image->height); -} - - -static int genodefb_mmap(struct fb_info *info, - struct vm_area_struct *vma) -{ - unsigned long start = vma->vm_start; - unsigned long size = vma->vm_end - vma->vm_start; - unsigned long offset = vma->vm_pgoff << PAGE_SHIFT; - unsigned long pfn; - - if (offset + size > info->fix.smem_len) - return -EINVAL; - - pfn = ((unsigned long)info->fix.smem_start + offset) >> PAGE_SHIFT; - while (size > 0) { - if (remap_pfn_range(vma, start, pfn, PAGE_SIZE, PAGE_SHARED)) { - return -EAGAIN; - } - start += PAGE_SIZE; - pfn++; - if (size > PAGE_SIZE) - size -= PAGE_SIZE; - else - size = 0; - } - l4_touch_rw((char *)info->fix.smem_start + offset, - vma->vm_end - vma->vm_start); - - return 0; -} - - -static int genodefb_open(struct fb_info *info, int user) -{ - return 0; -} - - -static int genodefb_release(struct fb_info *info, int user) -{ - return 0; -} - - -static struct fb_ops genodefb_ops = { - .owner = THIS_MODULE, - .fb_open = genodefb_open, - .fb_release = genodefb_release, - .fb_setcolreg = genodefb_setcolreg, - .fb_pan_display = genodefb_pan_display, - .fb_fillrect = genodefb_fillrect, - .fb_copyarea = genodefb_copyarea, - .fb_imageblit = genodefb_imageblit, - .fb_mmap = genodefb_mmap, -}; - - -/*********************** - ** Input callbacks ** - ***********************/ - -void FASTCALL -input_event_callback (void *dev, unsigned int type, - unsigned int code, int value) -{ - struct input_dev *input_dev = (struct input_dev*) dev; - -#ifdef CONFIG_ANDROID - if (type == EV_KEY && code == BTN_LEFT) - code = BTN_TOUCH; -#endif - - input_event(input_dev, type, code, value); - input_sync(input_dev); -} - - - -static void genodefb_poll_for_events(unsigned long data) -{ - genode_input_handle_events(); - mod_timer(&input_timer, jiffies + poll_sleep); -} - - -/*************************************** - ** Device initialization / removal ** - ***************************************/ - -static int __init genodefb_register_input_devices(unsigned int idx, - unsigned int xres, - unsigned int yres) -{ - int i; - struct input_dev *mouse_dev = input_allocate_device(); - struct input_dev *keyb_dev = input_allocate_device(); - if (!keyb_dev || !mouse_dev) - return -ENOMEM; - - - /**************** - ** Keyboard ** - ****************/ - - keyb_dev->name = "Genode input key"; - keyb_dev->phys = "Genode fb key"; - keyb_dev->id.bustype = BUS_USB; - keyb_dev->id.vendor = 0; - keyb_dev->id.product = 0; - keyb_dev->id.version = 0; - - /* We generate key events */ - set_bit(EV_KEY, keyb_dev->evbit); - set_bit(EV_REP, keyb_dev->evbit); - - /* We can generate every key */ - for (i = 0; i < 0x100; i++) - set_bit(i, keyb_dev->keybit); - - /* Register keyboard device */ - if (input_register_device(keyb_dev)) { - input_free_device(keyb_dev); - printk(KERN_WARNING "cannot register keyboard!"); - return -1; - } - genode_input_register_keyb(idx, (void*) keyb_dev); - - - /************* - ** Mouse ** - *************/ - - mouse_dev->name = "Genode input mouse"; - mouse_dev->phys = "Genode mouse"; - mouse_dev->id.bustype = BUS_USB; - mouse_dev->id.vendor = 0; - mouse_dev->id.product = 0; - mouse_dev->id.version = 0; - - /* We generate key and relative mouse events */ - set_bit(EV_KEY, mouse_dev->evbit); - set_bit(EV_REP, mouse_dev->evbit); -#ifndef CONFIG_ANDROID - set_bit(EV_REL, mouse_dev->evbit); -#endif - set_bit(EV_ABS, mouse_dev->evbit); - set_bit(EV_SYN, mouse_dev->evbit); - - /* Buttons */ -#ifdef CONFIG_ANDROID - set_bit(BTN_TOUCH, mouse_dev->keybit); -#else - set_bit(BTN_0, mouse_dev->keybit); - set_bit(BTN_1, mouse_dev->keybit); - set_bit(BTN_2, mouse_dev->keybit); - set_bit(BTN_3, mouse_dev->keybit); - set_bit(BTN_4, mouse_dev->keybit); - set_bit(BTN_LEFT, mouse_dev->keybit); - set_bit(BTN_RIGHT, mouse_dev->keybit); - set_bit(BTN_MIDDLE, mouse_dev->keybit); -#endif - - /* Movements */ -#ifndef CONFIG_ANDROID - set_bit(REL_X, mouse_dev->relbit); - set_bit(REL_Y, mouse_dev->relbit); -#endif - set_bit(ABS_X, mouse_dev->absbit); - set_bit(ABS_Y, mouse_dev->absbit); - - input_set_abs_params(mouse_dev, ABS_PRESSURE, 0, 1, 0, 0); - - /* Coordinates are 1:1 pixel in frame buffer */ - input_set_abs_params(mouse_dev, ABS_X, 0, xres, 0, 0); - input_set_abs_params(mouse_dev, ABS_Y, 0, yres, 0, 0); - - /* Register mouse device */ - if (input_register_device(mouse_dev)) { - input_free_device(mouse_dev); - printk(KERN_WARNING "cannot register mouse!"); - return -1; - } - genode_input_register_mouse(idx, (void*) mouse_dev); - - init_timer(&input_timer); - input_timer.function = genodefb_poll_for_events; - input_timer.expires = jiffies + poll_sleep; - add_timer(&input_timer); - return 0; -} - - -static int __init genodefb_probe(struct platform_device *dev) -{ - struct genodefb_infolist *pred=0, *succ; - int i, ret, cnt = genode_screen_count(); - - /* - * Iterate through all available framebuffers - */ - for (i=0; i < cnt; i++) { - - /* Allocate new framebuffer list entry */ - if(!(succ = kmalloc(sizeof(struct genodefb_infolist), GFP_KERNEL))) - return -ENOMEM; - succ->next = 0; - - /* Set first entry as driver's private data, else concatenate it */ - if (!i) - platform_set_drvdata(dev, succ); - else - pred->next = succ; - pred = succ; - - /* Allocate new framebuffer info struct */ - pred->info = framebuffer_alloc(0, &dev->dev); - if (!pred->info) - return -ENOMEM; - - /* Copy default values */ - pred->info->var = genodefb_var; - pred->info->fix = genodefb_fix; - - /* Get framebuffer dimensions from Genode's support lib */ - pred->info->screen_base = genode_fb_attach(i); - pred->info->screen_size = genode_fb_size(i); - pred->info->fix.smem_start = (unsigned long) pred->info->screen_base; - pred->info->fix.smem_len = pred->info->screen_size; - if (!pred->info->screen_base || !pred->info->screen_size) { - printk(KERN_ERR "genode_fb: abort, could not be initialized.\n"); - framebuffer_release(pred->info); - return -EIO; - } - - /* Get framebuffer resolution from Genode's support lib */ - genode_fb_info(i, &pred->info->var.xres, &pred->info->var.yres); - - /* We only support 16-Bit Pixel, so line length is xres*2 */ - pred->info->fix.line_length = pred->info->var.xres * 2; - - /* Set virtual resolution to visible resolution */ - pred->info->var.xres_virtual = pred->info->var.xres; - pred->info->var.yres_virtual = pred->info->screen_size - / pred->info->fix.line_length; - - /* Some dummy values for timing to make fbset happy */ - pred->info->var.pixclock = 10000000 / pred->info->var.xres - * 1000 / pred->info->var.yres; - pred->info->var.left_margin = (pred->info->var.xres / 8) & 0xf8; - pred->info->var.hsync_len = (pred->info->var.xres / 8) & 0xf8; - - pred->info->fbops = &genodefb_ops; - pred->info->pseudo_palette = pseudo_palette; - pred->info->flags = FBINFO_FLAG_DEFAULT; - - printk(KERN_INFO "genode_fb:framebuffer at 0x%p, size %dk\n", - pred->info->screen_base, (int)(pred->info->screen_size >> 10)); - printk(KERN_INFO "genode_fb: mode is %dx%dx%d\n", - pred->info->var.xres, pred->info->var.yres, - pred->info->var.bits_per_pixel); - - /* Allocate 16-Bit colormap */ - ret = fb_alloc_cmap(&pred->info->cmap, 16, 0); - if (ret < 0) { - framebuffer_release(pred->info); - return ret; - } - - /* Register framebuffer info structure */ - if (register_framebuffer(pred->info) < 0) { - fb_dealloc_cmap(&pred->info->cmap); - framebuffer_release(pred->info); - return -EINVAL; - } - - ret = genodefb_register_input_devices(i, pred->info->var.xres, - pred->info->var.yres); - if (ret) { - fb_dealloc_cmap(&pred->info->cmap); - framebuffer_release(pred->info); - return ret; - } - } - return 0; -} - - -static int genodefb_remove(struct platform_device *device) -{ - struct genodefb_infolist *succ = platform_get_drvdata(device); - - while (succ && succ->info) { - struct genodefb_infolist *pred = succ; - succ = succ->next; - genode_fb_close(pred->info->node); - unregister_framebuffer(pred->info); - framebuffer_release(pred->info); - kfree(pred); - } - platform_set_drvdata(device, 0); - return 0; -} - - -/*************************************** - ** Module initialization / removal ** - ***************************************/ - -static struct platform_driver __refdata genodefb_driver = { - .probe = genodefb_probe, - .remove = genodefb_remove, - .driver.name = GENODEFB_DRV_NAME, -}; - -static struct platform_device genodefb_device = { - .name = GENODEFB_DRV_NAME, -}; - - -static int __init genodefb_init(void) -{ - int ret = platform_driver_register(&genodefb_driver); - if (!ret) { - ret = platform_device_register(&genodefb_device); - if (ret) - platform_driver_unregister(&genodefb_driver); - } - genode_input_register_callback(&input_event_callback); - return ret; -} -module_init(genodefb_init); - - -static void __exit genodefb_exit(void) -{ - platform_device_unregister(&genodefb_device); - platform_driver_unregister(&genodefb_driver); - genode_input_unregister_callback(); -} -module_exit(genodefb_exit); - - -MODULE_AUTHOR("Stefan Kalkowski "); -MODULE_DESCRIPTION("Frame buffer driver for Linux on Genode"); -MODULE_LICENSE("GPL v2"); diff --git a/repos/ports-foc/src/drivers/genode_net.c b/repos/ports-foc/src/drivers/genode_net.c deleted file mode 100644 index 0f4c298a9..000000000 --- a/repos/ports-foc/src/drivers/genode_net.c +++ /dev/null @@ -1,194 +0,0 @@ -/* - * \brief NIC driver to access Genode's nic service - * \author Stefan Kalkowski - * \date 2010-09-09 - */ - -/* - * Copyright (C) 2006-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Linux includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -static struct net_device *net_dev; - - -static void FASTCALL -genode_net_receive_packet(void* dev_addr, void *addr, - unsigned long size) -{ - struct net_device *dev = (struct net_device *) dev_addr; - struct net_device_stats *stats = (struct net_device_stats*) netdev_priv(dev); - - /* allocate skb */ - struct sk_buff *skb = dev_alloc_skb(size + 4); - if (!skb) { - if (printk_ratelimit()) - printk(KERN_NOTICE "genode_net_rx: low on mem - packet dropped!\n"); - stats->rx_dropped++; - return; - } - - /* copy packet */ - genode_net_memcpy(skb_put(skb, size), addr, size); - - skb->dev = dev; - skb->protocol = eth_type_trans(skb, dev); - skb->ip_summed = CHECKSUM_NONE; - - netif_rx(skb); - - stats->rx_packets++; - stats->rx_bytes += size; -} - - -/******************************** - ** Network driver functions ** - ********************************/ - -int genode_net_open(struct net_device *dev) -{ - genode_net_start(dev, genode_net_receive_packet); - netif_start_queue(dev); - return 0; -} - - -int genode_net_close(struct net_device *dev) -{ - netif_stop_queue(dev); - genode_net_stop(); - return 0; -} - - -int genode_net_xmit_frame(struct sk_buff *skb, struct net_device *dev) -{ - struct net_device_stats *stats = (struct net_device_stats*) netdev_priv(dev); - int len = skb->len; - void* addr = skb->data; - - /* collect acknowledgements of old packets */ - while (genode_net_tx_ack_avail()) - genode_net_tx_ack(); - - /* transmit to nic-session */ - while (genode_net_tx(addr, len)) { - /* tx queue is full, could not enqueue packet */ - genode_net_tx_ack(); - } - dev_kfree_skb(skb); - - /* save timestamp */ - dev->trans_start = jiffies; - - stats->tx_packets++; - stats->tx_bytes += len; - - return 0; -} - - -struct net_device_stats* genode_net_get_stats(struct net_device *dev) -{ - return (struct net_device_stats*) netdev_priv(dev); -} - - -void genode_net_tx_timeout(struct net_device *dev) -{ -} - - -static irqreturn_t event_interrupt(int irq, void *data) -{ - genode_net_rx_receive(); - return IRQ_HANDLED; -} - - -/************************** - ** De-/Initialization ** - **************************/ - -static const struct net_device_ops genode_net_dev_ops = -{ - .ndo_open = genode_net_open, - .ndo_stop = genode_net_close, - .ndo_start_xmit = genode_net_xmit_frame, - .ndo_get_stats = genode_net_get_stats, - .ndo_tx_timeout = genode_net_tx_timeout -}; - -/* Setup and register the device. */ -static int __init genode_net_init(void) -{ - int err = 0; - unsigned irq; - l4_cap_idx_t irq_cap; - - if (!genode_net_ready()) - return 0; - - /* allocate network device */ - if (!(net_dev = alloc_etherdev(sizeof(struct net_device_stats)))) - goto out; - - net_dev->netdev_ops = &genode_net_dev_ops; - net_dev->watchdog_timeo = 20 * HZ; - - /* set MAC address */ - genode_net_mac(net_dev->dev_addr, ETH_ALEN); - - /** - * Obtain an IRQ for the device. - */ - irq_cap = genode_net_irq_cap(); - if ((irq = l4x_register_irq(irq_cap)) < 0) - return -ENOMEM; - if ((err = request_irq(irq, event_interrupt, 0, "Genode net", net_dev))) { - printk(KERN_WARNING "%s: request_irq failed: %d\n", __func__, err); - return err; - } - - /* register network device */ - if ((err = register_netdev(net_dev))) { - panic("loopback: Failed to register netdevice: %d\n", err); - goto out_free; - } - - return 0; - -out_free: - free_netdev(net_dev); -out: - return err; -}; - - -static void __exit genode_net_exit(void) -{ - unregister_netdev(net_dev); - free_netdev(net_dev); -} - - -module_init(genode_net_init); -module_exit(genode_net_exit); diff --git a/repos/ports-foc/src/drivers/genode_rtc.c b/repos/ports-foc/src/drivers/genode_rtc.c deleted file mode 100644 index ef85f3c5a..000000000 --- a/repos/ports-foc/src/drivers/genode_rtc.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * \brief Genode RTC driver - * \author Stefan Kalkowski - * \date 2011-10-25 - * - * Dummy driver taken from drivers/rtc/rtc-test.c. - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Linux includes */ -#include -#include -#include -#include -#include - -#include - -struct genode_rtc { - struct rtc_device *rtc; -}; - - -static int genode_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm) -{ - return 0; -} - - -static int genode_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm) -{ - return 0; -} - - -static int genode_rtc_read_time(struct device *dev, struct rtc_time *tm) -{ - rtc_time_to_tm(get_seconds(), tm); - return 0; -} - - -static int genode_rtc_set_mmss(struct device *dev, unsigned long secs) -{ - dev_info(dev, "%s, secs = %lu\n", __func__, secs); - return 0; -} - - -static int genode_rtc_proc(struct device *dev, struct seq_file *seq) -{ - struct platform_device *plat_dev = to_platform_device(dev); - - seq_printf(seq, "genode_rtc\t\t: yes\n"); - seq_printf(seq, "id\t\t: %d\n", plat_dev->id); - return 0; -} - - -static int genode_rtc_alarm_irq_enable(struct device *dev, unsigned int enable) -{ - return 0; -} - - -static const struct rtc_class_ops genode_rtc_ops = { - .proc = genode_rtc_proc, - .read_time = genode_rtc_read_time, - .read_alarm = genode_rtc_read_alarm, - .set_alarm = genode_rtc_set_alarm, - .set_mmss = genode_rtc_set_mmss, - .alarm_irq_enable = genode_rtc_alarm_irq_enable, -}; - - -static int genode_rtc_remove(struct platform_device *pdev) -{ - struct genode_rtc *priv = platform_get_drvdata(pdev); - rtc_device_unregister(priv->rtc); - platform_set_drvdata(pdev, NULL); - kfree(priv); - return 0; -} - - -static int genode_rtc_probe(struct platform_device *pdev) -{ - int err; - struct genode_rtc *priv = kzalloc(sizeof(*priv), GFP_KERNEL); - if (!priv) - return -ENOMEM; - platform_set_drvdata(pdev, priv); - - priv->rtc = rtc_device_register(pdev->name, - &pdev->dev, &genode_rtc_ops, THIS_MODULE); - if (IS_ERR(priv->rtc)) { - err = PTR_ERR(priv->rtc); - return err; - } - return 0; -} - - -static struct platform_driver __refdata genode_rtc_driver = { - .remove = genode_rtc_remove, - .probe = genode_rtc_probe, - .driver = { - .name = "rtc-genode", - .owner = THIS_MODULE, - }, -}; - -static struct platform_device genode_rtc_device = { - .name = "rtc-genode", -}; - - -static int __init genode_rtc_init(void) -{ - int ret = platform_driver_register(&genode_rtc_driver); - if (!ret) { - ret = platform_device_register(&genode_rtc_device); - if (ret) - platform_driver_unregister(&genode_rtc_driver); - } - return ret; -} -module_init(genode_rtc_init); - - -static void __exit genode_rtc_exit(void) -{ - platform_device_register(&genode_rtc_device); - platform_driver_unregister(&genode_rtc_driver); -} -module_exit(genode_rtc_exit); - - -MODULE_AUTHOR("Stefan Kalkowski "); -MODULE_DESCRIPTION("RTC driver for Genode"); -MODULE_LICENSE("GPL"); diff --git a/repos/ports-foc/src/drivers/genode_serial.c b/repos/ports-foc/src/drivers/genode_serial.c deleted file mode 100644 index bc7981f6f..000000000 --- a/repos/ports-foc/src/drivers/genode_serial.c +++ /dev/null @@ -1,344 +0,0 @@ -/* - * \brief Serial and console driver to access Genode's terminal service - * \author Stefan Kalkowski - * \date 2011-09-16 - * - * Based on l4ser.c from TU-Dresden's L4Linux. - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#if defined(CONFIG_MAGIC_SYSRQ) -#define SUPPORT_SYSRQ -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -enum { MAX_PORTS = 10 }; - -static struct genode_uart_port { - struct uart_port port; - l4_cap_idx_t irq_cap; - int initialized; - unsigned idx; -} genode_serial_port[MAX_PORTS]; - - -static void genode_serial_stop_tx(struct uart_port *port) { } - - -static void genode_serial_stop_rx(struct uart_port *port) { } - - -static void genode_serial_enable_ms(struct uart_port *port) { } - - -static void genode_serial_rx_chars(struct uart_port *port) { - struct genode_uart_port *l4port = (struct genode_uart_port *)port; - struct tty_port *tty_port = &port->state->port; - unsigned long flags; - unsigned int flg; - char buf[64]; - unsigned cnt, i; - - while (1) { - local_irq_save(flags); - cnt = genode_terminal_readchar(l4port->idx, buf, sizeof(buf)); - local_irq_restore(flags); - - if (!cnt) - break; - - for (i = 0; i < cnt; i++) { - port->icount.rx++; - flg = TTY_NORMAL; - if (uart_handle_sysrq_char(port, buf[i])) - continue; - - tty_insert_flip_char(tty_port, buf[i], flg); - } - - if (cnt < sizeof(buf)) - break; - } - tty_flip_buffer_push(tty_port); - return; -} - -static void genode_serial_tx_chars(struct uart_port *port) { - struct genode_uart_port *l4port = (struct genode_uart_port *)port; - struct circ_buf *xmit = &port->state->xmit; - unsigned long flags; - unsigned c; - - if (port->x_char) { - local_irq_save(flags); - genode_terminal_writechar(l4port->idx, &port->x_char, sizeof(char)); - local_irq_restore(flags); - port->icount.tx++; - port->x_char = 0; - return; - } - - while (!uart_circ_empty(xmit)) { - c = CIRC_CNT_TO_END(xmit->head, xmit->tail, UART_XMIT_SIZE); - local_irq_save(flags); - genode_terminal_writechar(l4port->idx, &xmit->buf[xmit->tail], c); - local_irq_restore(flags); - xmit->tail = (xmit->tail + c) & (UART_XMIT_SIZE - 1); - port->icount.tx += c; - } -} - - -static void genode_serial_start_tx(struct uart_port *port) { - genode_serial_tx_chars(port); } - - -static irqreturn_t genode_serial_int(int irq, void *dev_id) { - struct uart_port *sport = dev_id; - genode_serial_rx_chars(sport); - return IRQ_HANDLED; -} - - -static unsigned int genode_serial_tx_empty(struct uart_port *port) { - return TIOCSER_TEMT; } - - -static unsigned int genode_serial_get_mctrl(struct uart_port *port) { - return 0; } - - -static void genode_serial_set_mctrl(struct uart_port *port, unsigned int mctrl) { } - - -static void genode_serial_break_ctl(struct uart_port *port, int break_state) { } - - -static int genode_serial_startup(struct uart_port *port) { - if (port->irq) { - int retval = request_irq(port->irq, genode_serial_int, 0, "Genode uart", port); - if (retval) - return retval; - genode_serial_rx_chars(port); - } - return 0; -} - - -static void genode_serial_shutdown(struct uart_port *port) { - if (port->irq) - free_irq(port->irq, port); -} - - -static void genode_serial_set_termios(struct uart_port *port, struct ktermios *termios, - struct ktermios *old) { } - - -static const char *genode_serial_type(struct uart_port *port) { - return port->type == PORT_SA1100 ? "L4" : NULL; } - - -static int genode_serial_request_port(struct uart_port *port) { - return 0; } - - -static void genode_serial_release_port(struct uart_port *port) { } - - -static void genode_serial_config_port(struct uart_port *port, int flags) { - if (flags & UART_CONFIG_TYPE) - port->type = PORT_SA1100; -} - - -static int genode_serial_verify_port(struct uart_port *port, struct serial_struct *ser) { - return 0; } - - -static struct uart_ops genode_serial_pops = { - .tx_empty = genode_serial_tx_empty, - .set_mctrl = genode_serial_set_mctrl, - .get_mctrl = genode_serial_get_mctrl, - .stop_tx = genode_serial_stop_tx, - .start_tx = genode_serial_start_tx, - .stop_rx = genode_serial_stop_rx, - .enable_ms = genode_serial_enable_ms, - .break_ctl = genode_serial_break_ctl, - .startup = genode_serial_startup, - .shutdown = genode_serial_shutdown, - .set_termios = genode_serial_set_termios, - .type = genode_serial_type, - .release_port = genode_serial_release_port, - .request_port = genode_serial_request_port, - .config_port = genode_serial_config_port, - .verify_port = genode_serial_verify_port, -}; - - -static int __init genode_serial_init_port(int num) { - int irq; - unsigned long flags; - - if (genode_serial_port[num].initialized) - return 0; - genode_serial_port[num].initialized = 1; - - local_irq_save(flags); - genode_serial_port[num].irq_cap = genode_terminal_irq(num); - local_irq_restore(flags); - - if((irq = l4x_register_irq(genode_serial_port[num].irq_cap)) < 0) { - return -EIO; - } - - genode_serial_port[num].port.uartclk = 3686400; - genode_serial_port[num].port.ops = &genode_serial_pops; - genode_serial_port[num].port.fifosize = 8; - genode_serial_port[num].port.line = num; - genode_serial_port[num].port.iotype = UPIO_MEM; - genode_serial_port[num].port.membase = (void *)1; - genode_serial_port[num].port.mapbase = 1; - genode_serial_port[num].port.flags = UPF_BOOT_AUTOCONF; - genode_serial_port[num].port.irq = irq; - genode_serial_port[num].idx = num; - return 0; -} - - -static int __init -genode_console_setup(struct console *co, char *options) { - struct uart_port *up; - - if (co->index >= 1 + MAX_PORTS) - co->index = 0; - up = &genode_serial_port[co->index].port; - if (!up) - return -ENODEV; - - return uart_set_options(up, co, 115200, 'n', 8, 'n'); -} - - -/* - * Interrupts are disabled on entering - */ -static void -genode_console_write(struct console *co, const char *s, unsigned int count) { - unsigned long flags; - local_irq_save(flags); - genode_terminal_writechar(genode_serial_port[co->index].idx, s, count); - local_irq_restore(flags); -} - - -static struct uart_driver genode_reg; -static struct console genode_console = { - .name = "ttyS", - .write = genode_console_write, - .device = uart_console_device, - .setup = genode_console_setup, - .flags = CON_PRINTBUFFER, - .index = -1, - .data = &genode_reg, -}; - - -static int __init genode_rs_console_init(void) -{ - unsigned long flags; - local_irq_save(flags); - if (!genode_terminal_count()) { - local_irq_restore(flags); - return -ENODEV; - } - local_irq_restore(flags); - - if (genode_serial_init_port(0)) - return -ENODEV; - - register_console(&genode_console); - return 0; -} -console_initcall(genode_rs_console_init); - - -static struct uart_driver genode_reg = { - .owner = THIS_MODULE, - .driver_name = "ttyS", - .dev_name = "ttyS", - .major = 204, - .minor = 5, - .nr = 0, - .cons = &genode_console, - .state = 0, - .tty_driver = 0, -}; - - -static int __init genode_serial_init(void) -{ - unsigned i; - unsigned long flags; - local_irq_save(flags); - genode_reg.nr = (genode_terminal_count() > MAX_PORTS) - ? MAX_PORTS : genode_terminal_count(); - local_irq_restore(flags); - - if (genode_reg.nr == 0) - return 0; - - if (uart_register_driver(&genode_reg)) - return -ENODEV; - - for (i = 0; i < genode_reg.nr; i++) { - if (genode_serial_init_port(i)) - return -ENODEV; - uart_add_one_port(&genode_reg, &genode_serial_port[i].port); - } - return 0; -} - - -static void __exit genode_serial_exit(void) -{ - unsigned i; - unsigned long flags; - - for (i = 0; i < genode_reg.nr; i++) { - uart_remove_one_port(&genode_reg, &genode_serial_port[i].port); - local_irq_save(flags); - genode_terminal_stop(i); - local_irq_restore(flags); - } - if (genode_reg.nr) - uart_unregister_driver(&genode_reg); - -} - - -module_init(genode_serial_init); -module_exit(genode_serial_exit); - -MODULE_AUTHOR("Stefan Kalkowski - -/* L4lx includes */ -#include - - -L4lx::Dataspace* L4lx::Dataspace_tree::insert(const char* name, - Genode::Dataspace_capability cap) -{ - using namespace L4lx; - - Genode::Dataspace_client dsc(cap); - Dataspace *ds = - new (Genode::env()->heap()) Single_dataspace(name, dsc.size(), cap); - insert(ds); - return ds; -} diff --git a/repos/ports-foc/src/lib/l4lx/env.cc b/repos/ports-foc/src/lib/l4lx/env.cc deleted file mode 100644 index 2a45b0164..000000000 --- a/repos/ports-foc/src/lib/l4lx/env.cc +++ /dev/null @@ -1,51 +0,0 @@ -/* - * \brief Global environment for L4Linux support library - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -/* L4lx library includes */ -#include - -namespace Fiasco { -#include -} - -using namespace Genode; - - -L4lx::Env* L4lx::Env::env() -{ - try { - static L4lx::Env _env; - return &_env; - } catch(Ram_session::Quota_exceeded) { - PWRN("heap size exceeds available ram!"); - return 0; - } -} - - -L4lx::Env::Env() : _rm(Genode::env()->heap()) { - - /* Create an empty L4Linux specific region-map */ - _rm.add_range(0, ~0UL); - - /* - * The first page never gets used under Genode/Fiasco.OC - * to notice null-pointer dereference, so reserve it. - */ - _rm.alloc_addr(L4_PAGESIZE, 0); -} diff --git a/repos/ports-foc/src/lib/l4lx/genode_block.cc b/repos/ports-foc/src/lib/l4lx/genode_block.cc deleted file mode 100644 index 5de76bf8b..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_block.cc +++ /dev/null @@ -1,362 +0,0 @@ -/* - * \brief Genode C API block API needed by L4Linux - * \author Stefan Kalkowski - * \date 2009-05-19 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include -#include -#include -#include -#include -#include - -#include -#include - -namespace Fiasco { -#include -#include -#include -} - -namespace { - - class Req_cache - { - private: - - class Req_entry - { - public: - - void *pkt; - void *req; - - Req_entry() : pkt(0), req(0) {} - Req_entry(void *packet, void *request) - : pkt(packet), req(request) {} - }; - - - enum { MAX = Block::Session::TX_QUEUE_SIZE }; - - Req_entry _cache[MAX]; - - int _find(void *packet) - { - for (int i=0; i < MAX; i++) - if (_cache[i].pkt == packet) - return i; - return -1; - } - - public: - - void insert(void *packet, void *request) - { - int idx = _find(0); - if (idx == 0) { - Genode::error("Req cache full!"); - enter_kdebug("Req_cache"); - } - - _cache[idx] = Req_entry(packet, request); - } - - void remove(void *packet, void **request) - { - int idx = _find(packet); - if (idx == 0) { - Genode::error("Req cache entry not found!"); - enter_kdebug("Req_cache"); - } - - *request = _cache[idx].req; - _cache[idx].pkt = 0; - _cache[idx].req = 0; - } - }; - - - class Block_device - { - private: - - enum Dimensions { - TX_BUF_SIZE = 5 * 1024 * 1024 - }; - - Req_cache _cache; - Genode::Allocator_avl _alloc; - Block::Connection _session; - Genode::size_t _blk_size; - Block::sector_t _blk_cnt; - Block::Session::Operations _blk_ops; - Genode::Native_capability _irq_cap; - Genode::Signal_context _tx; - char _name[32]; - - Genode::Native_capability _alloc_irq() - { - Genode::Foc_native_cpu_client - native_cpu(L4lx::cpu_connection()->native_cpu()); - - return native_cpu.alloc_irq(); - } - - public: - - Block_device(const char *label) - : _alloc(Genode::env()->heap()), - _session(&_alloc, TX_BUF_SIZE, label), - _irq_cap(_alloc_irq()) - { - _session.info(&_blk_cnt, &_blk_size, &_blk_ops); - Genode::strncpy(_name, label, sizeof(_name)); - } - - Fiasco::l4_cap_idx_t irq_cap() - { - return Genode::Capability_space::kcap(_irq_cap); - } - - Req_cache *cache() { return &_cache; } - Block::Connection *session() { return &_session; } - Genode::Signal_context *context() { return &_tx; } - Genode::size_t block_size() { return _blk_size; } - Genode::size_t block_count() { return _blk_cnt; } - bool writeable() { - return _blk_ops.supported(Block::Packet_descriptor::WRITE); } - const char *name() { return _name; } - }; - - - class Signal_thread : public Genode::Thread_deprecated<8192> - { - private: - - unsigned _count; - Block_device **_devs; - Genode::Lock _ready_lock; - - protected: - - void entry() - { - using namespace Fiasco; - using namespace Genode; - - Signal_receiver receiver; - for (unsigned i = 0; i < _count; i++) { - Signal_context_capability cap(receiver.manage(_devs[i]->context())); - _devs[i]->session()->tx_channel()->sigh_ready_to_submit(cap); - _devs[i]->session()->tx_channel()->sigh_ack_avail(cap); - } - - _ready_lock.unlock(); - - while (true) { - Signal s = receiver.wait_for_signal(); - for (unsigned i = 0; i < _count; i++) { - if (_devs[i]->context() == s.context()) { - if (l4_error(l4_irq_trigger(_devs[i]->irq_cap())) != -1) - Genode::warning("IRQ block trigger failed"); - break; - } - } - } - } - - public: - - Signal_thread(Block_device **devs) - : Genode::Thread_deprecated<8192>("blk-signal-thread"), - _count(Fiasco::genode_block_count()), _devs(devs), - _ready_lock(Genode::Lock::LOCKED) {} - - void start() - { - Genode::Thread::start(); - - /* - * Do not return until the new thread has initialized the - * signal handlers. - */ - _ready_lock.lock(); - } - }; - -} - - -static FASTCALL void (*end_request)(void*, short, void*, unsigned long) = 0; -static Block_device **devices = 0; - -using namespace Fiasco; - -extern "C" { - - unsigned genode_block_count() - { - using namespace Genode; - - Linux::Irq_guard guard; - - static unsigned count = 0; - if (count == 0) { - try { - Xml_node config = Genode::config()->xml_node(); - size_t sn_cnt = config.num_sub_nodes(); - for (unsigned i = 0; i < sn_cnt; i++) - if (config.sub_node(i).has_type("block")) - count++; - - if (count == 0) - return count; - - devices = (Block_device**) - env()->heap()->alloc(count * sizeof(Block_device*)); - - char label[64]; - for (unsigned i = 0, j = 0; i < sn_cnt; i++) { - if (config.sub_node(i).has_type("block")) { - config.sub_node(i).attribute("label").value(label, - sizeof(label)); - devices[j] = new (env()->heap()) Block_device(label); - j++; - } - } - } catch(...) { Genode::warning("config parsing error!"); } - } - return count; - } - - - const char* genode_block_name(unsigned idx) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return 0; - } - return devices[idx]->name(); - } - - - l4_cap_idx_t genode_block_irq_cap(unsigned idx) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return 0; - } - return devices[idx]->irq_cap(); - } - - - void genode_block_register_callback(FASTCALL void (*func)(void*, short, - void*, unsigned long)) - { - Linux::Irq_guard guard; - - static Signal_thread thread(devices); - if (!end_request) { - end_request = func; - thread.start(); - } - } - - - void - genode_block_geometry(unsigned idx, unsigned long *cnt, unsigned long *sz, - int *write, unsigned long *queue_sz) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return; - } - - Linux::Irq_guard guard; - - *cnt = devices[idx]->block_count(); - *sz = devices[idx]->block_size(); - *queue_sz = devices[idx]->session()->tx()->bulk_buffer_size(); - *write = devices[idx]->writeable() ? 1 : 0; - } - - - void* genode_block_request(unsigned idx, unsigned long sz, - void *req, unsigned long *offset) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return 0; - } - - Linux::Irq_guard guard; - - try { - Block::Connection *session = devices[idx]->session(); - Block::Packet_descriptor p = session->tx()->alloc_packet(sz); - void *addr = session->tx()->packet_content(p); - devices[idx]->cache()->insert(addr, req); - *offset = p.offset(); - return addr; - } catch (Block::Session::Tx::Source::Packet_alloc_failed) { } - return 0; - } - - - void genode_block_submit(unsigned idx, unsigned long queue_offset, - unsigned long size, unsigned long long disc_offset, int write) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return; - } - - Linux::Irq_guard guard; - - Genode::size_t sector = disc_offset / devices[idx]->block_size(); - Genode::size_t sector_cnt = size / devices[idx]->block_size(); - Block::Packet_descriptor p(Block::Packet_descriptor(queue_offset, size), - write ? Block::Packet_descriptor::WRITE - : Block::Packet_descriptor::READ, - sector, sector_cnt); - devices[idx]->session()->tx()->submit_packet(p); - } - - - void genode_block_collect_responses(unsigned idx) - { - if (idx >= genode_block_count()) { - Genode::warning(__func__, ": invalid index!"); - return; - } - - unsigned long flags; - l4x_irq_save(&flags); - - Block::Connection *session = devices[idx]->session(); - void *req; - while (session->tx()->ack_avail()) { - Block::Packet_descriptor packet = session->tx()->get_acked_packet(); - void *addr = session->tx()->packet_content(packet); - bool write = packet.operation() == Block::Packet_descriptor::WRITE; - devices[idx]->cache()->remove(session->tx()->packet_content(packet), &req); - if (req && end_request) { - l4x_irq_restore(flags); - end_request(req, write, addr, packet.size()); - l4x_irq_save(&flags); - } - session->tx()->release_packet(packet); - } - l4x_irq_restore(flags); - } -} // extern "C" diff --git a/repos/ports-foc/src/lib/l4lx/genode_framebuffer.cc b/repos/ports-foc/src/lib/l4lx/genode_framebuffer.cc deleted file mode 100644 index bca235c3a..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_framebuffer.cc +++ /dev/null @@ -1,95 +0,0 @@ -/* - * \brief Genode C API framebuffer functions of the Linux support library - * \author Stefan Kalkowski - * \date 2009-06-08 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -/* L4lx includes */ -#include -#include -#include - - -static Framebuffer::Connection *framebuffer() { - static bool initialized = false; - static Framebuffer::Connection *f = 0; - - if (!initialized) { - try { - static Framebuffer::Connection fb; - f = &fb; - } catch(...) {} - initialized = true; - } - return f; -} - - -static Genode::Dataspace_capability fb_ds() { - static Genode::Dataspace_capability ds = framebuffer()->dataspace(); - return ds; -} - - -extern "C" { - - int genode_screen_count() - { - Linux::Irq_guard guard; - - return framebuffer() ? 1 : 0; - } - - - unsigned long genode_fb_size(unsigned screen) - { - Linux::Irq_guard guard; - - return Genode::Dataspace_client(fb_ds()).size(); - } - - - void *genode_fb_attach(unsigned screen) - { - Linux::Irq_guard guard; - - return L4lx::Env::env()->rm()->attach(fb_ds(), "framebuffer"); - } - - - void genode_fb_info(unsigned screen, int *out_w, int *out_h) - { - Linux::Irq_guard guard; - - Framebuffer::Mode const mode = framebuffer()->mode(); - *out_w = mode.width(); - *out_h = mode.height(); - } - - - void genode_fb_refresh(unsigned screen, int x, int y, int w, int h) - { - Linux::Irq_guard guard; - - framebuffer()->refresh(x,y,w,h); - } - - - void genode_fb_close(unsigned screen) - { - NOT_IMPLEMENTED; - } - -} // extern "C" diff --git a/repos/ports-foc/src/lib/l4lx/genode_input.cc b/repos/ports-foc/src/lib/l4lx/genode_input.cc deleted file mode 100644 index 985e3f82d..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_input.cc +++ /dev/null @@ -1,158 +0,0 @@ -/* - * \brief Genode C API input functions for the Linux support libary - * \author Stefan Kalkowski - * \date 2010-04-21 - */ - -/* - * Copyright (C) 2010-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include - -#include -#include - -enum Event_types {EV_SYN=0x00, EV_KEY=0x01, EV_REL=0x02, EV_ABS=0x03 }; -enum Relative_axes {REL_X=0x00, REL_Y=0x01, REL_WHEEL=0x08 }; -enum Absolute_axes {ABS_X=0x00, ABS_Y=0x01, ABS_WHEEL=0x08 }; - - -static Input::Connection *input() { - static Input::Connection _inp; - return &_inp; -} - - -static Input::Event *buffer() { - static Input::Event *_ev_buf = 0; - if (!_ev_buf) { - Linux::Irq_guard guard; - - _ev_buf = (Input::Event*) L4lx::Env::env()->rm()->attach(input()->dataspace(), - "input buffer"); - } - return _ev_buf; -} - - -extern "C" { - -#include - - FASTCALL static void (*genode_input_event) (void*,unsigned int, unsigned int, int) = 0; - static void *keyboard = 0; - static void *mouse = 0; - - void genode_input_register_callback(FASTCALL void (*func) - (void*,unsigned int, unsigned int, int)) - { - genode_input_event = func; - } - - - void genode_input_unregister_callback(void) - { - genode_input_event = 0; - } - - - void genode_input_register_keyb(unsigned int idx, void* dev) - { - keyboard = dev; - } - - - void genode_input_unregister_keyb(unsigned int idx) - { - keyboard = 0; - } - - - void genode_input_register_mouse(unsigned int idx, void* dev) - { - mouse = dev; - } - - - void genode_input_unregister_mouse(unsigned int idx) - { - mouse = 0; - } - - - static void handle_event(void *mouse, void *keyb, Input::Event *ev) - { - using namespace Input; - - switch(ev->type()) { - case Event::MOTION: - { - if(ev->rx()) - genode_input_event(mouse, EV_REL, REL_X, ev->rx()); - if(ev->ry()) - genode_input_event(mouse, EV_REL, REL_Y, ev->ry()); - if(ev->ax()) - genode_input_event(mouse, EV_ABS, ABS_X, ev->ax()); - if(ev->ay()) - genode_input_event(mouse, EV_ABS, ABS_Y, ev->ay()); - return; - } - case Event::PRESS: - { - if (ev->code() < BTN_MISC) - genode_input_event(keyb, EV_KEY, ev->code(), 1); - else - genode_input_event(mouse, EV_KEY, ev->code(), 1); - return; - } - case Event::RELEASE: - { - if (ev->code() < BTN_MISC) - genode_input_event(keyb, EV_KEY, ev->code(), 0); - else - genode_input_event(mouse, EV_KEY, ev->code(), 0); - return; - } - case Event::WHEEL: - { - if(ev->rx()) - genode_input_event(mouse, EV_REL, REL_WHEEL, ev->rx()); - else - genode_input_event(mouse, EV_ABS, ABS_WHEEL, ev->ax()); - return; - } - case Event::INVALID: - default: - ; - } - } - - - void genode_input_handle_events(void) - { - if (!genode_input_event) - return; - - unsigned long flags; - l4x_irq_save(&flags); - - if ( mouse && keyboard && input()) { - int num = input()->flush(); - l4x_irq_restore(flags); - for (int i = 0; i < num; i++) { - Input::Event ev = buffer()[i]; - handle_event(mouse, keyboard, &ev); - } - } else - l4x_irq_restore(flags); - } - -} //extern "C" diff --git a/repos/ports-foc/src/lib/l4lx/genode_net.cc b/repos/ports-foc/src/lib/l4lx/genode_net.cc deleted file mode 100644 index af134b075..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_net.cc +++ /dev/null @@ -1,244 +0,0 @@ -/* - * \brief Genode C API framebuffer functions of the L4Linux support library - * \author Stefan Kalkowski - * \date 2009-06-08 - */ - -/* - * Copyright (C) 2009-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -namespace Fiasco { -#include -#include -#include -#include -} - -#define TX_BENCH 0 -#define RX_BENCH 0 - - -/** - * Debugging/Tracing - */ -#if TX_BENCH | RX_BENCH -struct Counter : public Genode::Thread_deprecated<8192> -{ - int cnt; - Genode::size_t size; - - void entry() - { - Timer::Connection _timer; - int interval = 5; - while(1) { - _timer.msleep(interval * 1000); - Genode::log("LX Packets ", cnt/interval, "/s " - "bytes/s: ", size / interval); - cnt = 0; - size = 0; - } - } - - void inc(Genode::size_t s) { cnt++; size += s; } - - Counter() : Thread_deprecated("net-counter"), cnt(0), size(0) { start(); } -}; -#else -struct Counter { inline void inc(Genode::size_t s) { } }; -#endif - - -static Nic::Connection *nic() { - - enum { - PACKET_SIZE = Nic::Packet_allocator::DEFAULT_PACKET_SIZE, - BUF_SIZE = Nic::Session::QUEUE_SIZE * PACKET_SIZE, - }; - - static Nic::Connection *n = 0; - static bool initialized = false; - - if (initialized) - return n; - - try { - Linux::Irq_guard guard; - static Nic::Packet_allocator tx_block_alloc(Genode::env()->heap()); - static Nic::Connection nic(&tx_block_alloc, BUF_SIZE, BUF_SIZE); - n = &nic; - } catch(...) { } - initialized = true; - - return n; -} - - -namespace { - - class Signal_thread : public Genode::Thread_deprecated<8192> - { - private: - - Fiasco::l4_cap_idx_t _cap; - Genode::Lock *_sync; - - protected: - - void entry() - { - using namespace Fiasco; - using namespace Genode; - - Signal_receiver receiver; - Signal_context rx; - Signal_context_capability cap(receiver.manage(&rx)); - nic()->rx_channel()->sigh_ready_to_ack(cap); - nic()->rx_channel()->sigh_packet_avail(cap); - - _sync->unlock(); - - while (true) { - receiver.wait_for_signal(); - - if (l4_error(l4_irq_trigger(_cap)) != -1) - warning("IRQ net trigger failed"); - } - } - - public: - - Signal_thread(Fiasco::l4_cap_idx_t cap, Genode::Lock *sync) - : Genode::Thread_deprecated<8192>("net-signal-thread"), _cap(cap), _sync(sync) { - start(); } - }; -} - -using namespace Fiasco; - -extern "C" { - - static FASTCALL void (*receive_packet)(void*, void*, unsigned long) = 0; - static void *net_device = 0; - - - void genode_net_start(void *dev, FASTCALL void (*func)(void*, void*, unsigned long)) - { - receive_packet = func; - net_device = dev; - } - - - l4_cap_idx_t genode_net_irq_cap() - { - Linux::Irq_guard guard; - Genode::Foc_native_cpu_client - native_cpu(L4lx::cpu_connection()->native_cpu()); - static Genode::Native_capability cap = native_cpu.alloc_irq(); - static Genode::Lock lock(Genode::Lock::LOCKED); - static Fiasco::l4_cap_idx_t const kcap = Genode::Capability_space::kcap(cap); - static Signal_thread th(kcap, &lock); - lock.lock(); - return kcap; - } - - - void genode_net_stop() - { - net_device = 0; - receive_packet = 0; - } - - - void genode_net_mac(void* mac, unsigned long size) - { - Linux::Irq_guard guard; - using namespace Genode; - - Nic::Mac_address m = nic()->mac_address(); - memcpy(mac, &m.addr, min(sizeof(m.addr), (size_t)size)); - } - - - int genode_net_tx(void* addr, unsigned long len) - { - Linux::Irq_guard guard; - static Counter counter; - - try { - Nic::Packet_descriptor packet = nic()->tx()->alloc_packet(len); - void* content = nic()->tx()->packet_content(packet); - - Genode::memcpy((char *)content, addr, len); - nic()->tx()->submit_packet(packet); - - counter.inc(len); - - return 0; - /* 'Packet_alloc_failed' */ - } catch(...) { - return 1; - } - } - - - int genode_net_tx_ack_avail() { - return nic()->tx()->ack_avail(); } - - - void genode_net_tx_ack() - { - Linux::Irq_guard guard; - - Nic::Packet_descriptor packet = nic()->tx()->get_acked_packet(); - nic()->tx()->release_packet(packet); - } - - - void genode_net_rx_receive() - { - Linux::Irq_guard guard; - static Counter counter; - - if (nic()) { - while(nic()->rx()->packet_avail()) { - Nic::Packet_descriptor p = nic()->rx()->get_packet(); - - if (receive_packet && net_device) - receive_packet(net_device, nic()->rx()->packet_content(p), p.size()); - - counter.inc(p.size()); - nic()->rx()->acknowledge_packet(p); - } - } - } - - - int genode_net_ready() - { - return nic() ? 1 : 0; - } - - - void *genode_net_memcpy(void *dst, void const *src, unsigned long size) { - return Genode::memcpy(dst, src, size); } -} diff --git a/repos/ports-foc/src/lib/l4lx/genode_string.cc b/repos/ports-foc/src/lib/l4lx/genode_string.cc deleted file mode 100644 index a4bc098d1..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_string.cc +++ /dev/null @@ -1,25 +0,0 @@ -/* - * \brief Genode C API string API - * \author Stefan Kalkowski - * \date 2013-06-26 - */ - -/* - * Copyright (C) 2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include - -namespace Fiasco { -#include -} -using namespace Fiasco; - - -extern "C" void genode_memcpy(void *dst, void *src, unsigned long size) -{ - Genode::memcpy(dst, src, size); -} diff --git a/repos/ports-foc/src/lib/l4lx/genode_terminal.cc b/repos/ports-foc/src/lib/l4lx/genode_terminal.cc deleted file mode 100644 index 24f1e1e97..000000000 --- a/repos/ports-foc/src/lib/l4lx/genode_terminal.cc +++ /dev/null @@ -1,118 +0,0 @@ -/* - * \brief Genode C API terminal functions of the L4Linux support library - * \author Stefan Kalkowski - * \date 2011-09-16 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include - -#include -#include - -namespace Fiasco { -#include -#include -#include -} - -static Terminal::Connection *terminal() { - static bool initialized = false; - static Terminal::Connection *t = 0; - - if (!initialized) { - try { - static Terminal::Connection terminal; - t = &terminal; - } catch(...) { } - initialized = true; - } - return t; -} - - -namespace { - class Signal_thread : public Genode::Thread_deprecated<8192> - { - private: - - Fiasco::l4_cap_idx_t _cap; - - protected: - - void entry() - { - using namespace Fiasco; - using namespace Genode; - - Signal_receiver receiver; - Signal_context rx; - Signal_context_capability cap(receiver.manage(&rx)); - terminal()->connected_sigh(cap); - terminal()->read_avail_sigh(cap); - - while (true) { - receiver.wait_for_signal(); - if (l4_error(l4_irq_trigger(_cap)) != -1) - PWRN("IRQ terminal trigger failed\n"); - } - } - - public: - - Signal_thread(Fiasco::l4_cap_idx_t cap) - : Genode::Thread_deprecated<8192>("terminal-signal-thread"), _cap(cap) { start(); } - }; -} - - -static Signal_thread *signal_thread = 0; - - -using namespace Fiasco; - -extern "C" { - - unsigned genode_terminal_readchar(unsigned idx, char *buf, unsigned long sz) { - if (!terminal()->avail()) - return 0; - return terminal()->read(buf, sz); - } - - - void genode_terminal_writechar(unsigned idx, const char *buf, unsigned long sz) { - terminal()->write(buf, sz); - } - - - l4_cap_idx_t genode_terminal_irq(unsigned idx) { - - Genode::Foc_native_cpu_client - native_cpu(L4lx::cpu_connection()->native_cpu()); - - static Genode::Native_capability cap = native_cpu.alloc_irq(); - l4_cap_idx_t const kcap = Genode::Capability_space::kcap(cap); - if (!signal_thread) - signal_thread = new (Genode::env()->heap()) Signal_thread(kcap); - return kcap; - } - - - unsigned genode_terminal_count(void) { - return terminal() ? 1 : 0; } - - - void genode_terminal_stop(unsigned idx) { - destroy(Genode::env()->heap(), signal_thread); - } -} diff --git a/repos/ports-foc/src/lib/l4lx/include/dataspace.h b/repos/ports-foc/src/lib/l4lx/include/dataspace.h deleted file mode 100644 index bc178b65c..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/dataspace.h +++ /dev/null @@ -1,192 +0,0 @@ -/* - * \brief Dataspace abstraction between Genode and L4Linux - * \author Stefan Kalkowski - * \date 2011-03-20 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__DATASPACE_H_ -#define _L4LX__DATASPACE_H_ - -/* Genode includes */ -#include -#include -#include -#include -#include -#include -#include - -namespace L4lx { - - class Dataspace : public Genode::Avl_node - { - private: - - const char* _name; - Genode::size_t _size; - Fiasco::l4_cap_idx_t _ref; - - public: - - /****************** - ** Constructors ** - ******************/ - - Dataspace(const char* name, - Genode::size_t size, - Fiasco::l4_cap_idx_t ref) - : _name(name), _size(size), _ref(ref) {} - - - /*************** - ** Accessors ** - ***************/ - - const char* name() const { return _name; } - Genode::size_t size() { return _size; } - Fiasco::l4_cap_idx_t ref() { return _ref; } - - virtual Genode::Dataspace_capability cap() = 0; - virtual void map(Genode::size_t offset, bool greedy = false) = 0; - virtual bool free(Genode::size_t offset) = 0; - - /************************ - ** Avl_node interface ** - ************************/ - - bool higher(Dataspace *n) { return n->_ref > _ref; } - - Dataspace *find_by_ref(Fiasco::l4_cap_idx_t ref) - { - if (_ref == ref) return this; - - Dataspace *n = Genode::Avl_node::child(ref > _ref); - return n ? n->find_by_ref(ref) : 0; - } - }; - - - class Single_dataspace : public Dataspace - { - private: - - Genode::Dataspace_capability _cap; - - public: - - Single_dataspace(const char* name, - Genode::size_t size, - Genode::Dataspace_capability ds, - Fiasco::l4_cap_idx_t ref = - Genode::Capability_space::alloc_kcap()) - : Dataspace(name, size, ref), _cap(ds) {} - - Genode::Dataspace_capability cap() { return _cap; } - void map(Genode::size_t offset, bool greedy) { } - bool free(Genode::size_t offset) { return false; } - }; - - - struct Expanding_region_map : private Genode::Rm_connection, - public Genode::Region_map_client - { - typedef Genode::size_t size_t; - typedef Genode::off_t off_t; - - Expanding_region_map(size_t size) - : - Genode::Region_map_client(Genode::Rm_connection::create(size)) - { } - - Local_addr attach(Genode::Dataspace_capability ds, size_t size, off_t offset, - bool use_local_addr, Local_addr local_addr, - bool executable) override - { - return retry( - [&] () { - return Genode::Region_map_client::attach(ds, size, offset, - use_local_addr, - local_addr, - executable); }, - [&] () { Rm_connection::upgrade_ram(8*1024); }); - } - }; - - - class Chunked_dataspace : public Dataspace - { - private: - - Expanding_region_map _rm; - - Genode::Ram_dataspace_capability *_chunks; - - public: - - enum { - CHUNK_SIZE_LOG2 = 20, - CHUNK_SIZE = 1 << CHUNK_SIZE_LOG2, - }; - - Chunked_dataspace(const char* name, - Genode::size_t size, - Fiasco::l4_cap_idx_t ref) - : Dataspace(name, size, ref), _rm(size) - { - _chunks = (Genode::Ram_dataspace_capability*) - Genode::env()->heap()->alloc(sizeof(Genode::Ram_dataspace_capability) * (size/CHUNK_SIZE)); - } - - Genode::Dataspace_capability cap() { return _rm.dataspace(); } - - void map(Genode::size_t off, bool greedy) - { - off = Genode::align_addr((off-(CHUNK_SIZE-1)), CHUNK_SIZE_LOG2); - int i = off / CHUNK_SIZE; - if (_chunks[i].valid()) return; - - Genode::size_t ram_avail = Genode::env()->ram_session()->avail(); - if (greedy && ram_avail < 4*CHUNK_SIZE) { - char buf[128]; - Genode::snprintf(buf, sizeof(buf), "ram_quota=%ld", - 4*CHUNK_SIZE - ram_avail); - Genode::env()->parent()->resource_request(buf); - } - - _chunks[i] = Genode::env()->ram_session()->alloc(CHUNK_SIZE); - _rm.attach(_chunks[i], 0, 0, true, off, false); - } - - bool free(Genode::size_t off) - { - off = Genode::align_addr((off-(CHUNK_SIZE-1)), CHUNK_SIZE_LOG2); - int i = off / CHUNK_SIZE; - if (!_chunks[i].valid()) return false; - Genode::env()->ram_session()->free(_chunks[i]); - _chunks[i] = Genode::Ram_dataspace_capability(); - return true; - } - }; - - - class Dataspace_tree : public Genode::Avl_tree - { - public: - - Dataspace* find_by_ref(Fiasco::l4_cap_idx_t ref) { - return this->first() ? this->first()->find_by_ref(ref) : 0; } - - Dataspace* insert(const char* name, Genode::Dataspace_capability cap); - - void insert(Dataspace *ds) { Genode::Avl_tree::insert(ds); } - }; -} - -#endif /* _L4LX__DATASPACE_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/env.h b/repos/ports-foc/src/lib/l4lx/include/env.h deleted file mode 100644 index 402cb46dd..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/env.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * \brief Global environment for L4Linux support library - * \author Stefan Kalkowski - * \date 2011-03-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__ENV_H_ -#define _L4LX__ENV_H_ - -/* L4lx includes */ -#include -#include -#include - -namespace L4lx { - - enum { - THREAD_MAX = (1 << 7), - }; - - - class Env - { - private: - - Region_manager _rm; - Dataspace_tree _dataspaces; - Task_tree _tasks; - - Env(); - - public: - - static Env *env(); - - Region_manager *rm() { return &_rm; } - Dataspace_tree *dataspaces() { return &_dataspaces; }; - Task_tree *tasks() { return &_tasks; }; - }; -} - -#endif /* _L4LX__ENV_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/l4lx_irq.h b/repos/ports-foc/src/lib/l4lx/include/l4lx_irq.h deleted file mode 100644 index ff52303a7..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/l4lx_irq.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * \brief L4lxapi library IRQ functions - * \author Stefan Kalkowski - * \date 2011-04-29 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__L4LX_IRQ_H_ -#define _L4LX__L4LX_IRQ_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct l4x_irq_desc_private { - Fiasco::l4_cap_idx_t irq_cap; - Fiasco::l4_cap_idx_t irq_thread; - unsigned enabled; - unsigned cpu; - unsigned char trigger; -}; - -struct irq_data { - unsigned int irq; - unsigned long hwirq; - unsigned int node; - unsigned int state_use_accessors; - struct irq_chip *chip; - struct irq_domain *domain; - void *handler_data; - void *chip_data; -}; - -/* Linux functions */ -FASTCALL int irq_set_chip_data(unsigned int irq, void *data); -FASTCALL struct irq_data *irq_get_irq_data(unsigned int irq); - -static inline void *irq_get_chip_data(unsigned int irq) -{ - struct irq_data *d = irq_get_irq_data(irq); - return d ? d->chip_data : 0; -} - -/* l4lxapi functions */ -FASTCALL void l4lx_irq_init(void); -FASTCALL int l4lx_irq_prio_get(unsigned int irq); -FASTCALL unsigned int l4lx_irq_dev_startup(struct irq_data *data); -FASTCALL void l4lx_irq_dev_shutdown(struct irq_data *data); -FASTCALL int l4lx_irq_set_type(struct irq_data *data, unsigned int type); -FASTCALL void l4lx_irq_dev_enable(struct irq_data *data); -FASTCALL void l4lx_irq_dev_disable(struct irq_data *data); -FASTCALL void l4lx_irq_dev_ack(struct irq_data *data); -FASTCALL void l4lx_irq_dev_mask(struct irq_data *data); -FASTCALL void l4lx_irq_dev_unmask(struct irq_data *data); -FASTCALL int l4lx_irq_dev_set_affinity(struct irq_data *data, - const struct cpumask *dest, bool force); -FASTCALL void l4lx_irq_dev_eoi(struct irq_data *data); -FASTCALL unsigned int l4lx_irq_timer_startup(struct irq_data *data); -FASTCALL void l4lx_irq_timer_shutdown(struct irq_data *data); -FASTCALL void l4lx_irq_timer_enable(struct irq_data *data); -FASTCALL void l4lx_irq_timer_disable(struct irq_data *data); -FASTCALL void l4lx_irq_timer_ack(struct irq_data *data); -FASTCALL void l4lx_irq_timer_mask(struct irq_data *data); -FASTCALL void l4lx_irq_timer_unmask(struct irq_data *data); -FASTCALL int l4lx_irq_timer_set_affinity(struct irq_data *data, - const struct cpumask *dest); -FASTCALL void l4lx_irq_dev_enable(struct irq_data *data); -FASTCALL void l4lx_irq_dev_mask_ack(struct irq_data *data); -FASTCALL int l4x_alloc_irq_desc_data(int irq); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4LX__L4LX_IRQ_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/l4lx_memory.h b/repos/ports-foc/src/lib/l4lx/include/l4lx_memory.h deleted file mode 100644 index 53ee0cdcd..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/l4lx_memory.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * \brief L4lxapi library memory functions - * \author Stefan Kalkowski - * \date 2011-04-29 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__L4LX_MEMORY_H_ -#define _L4LX__L4LX_MEMORY_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -FASTCALL int l4lx_memory_map_virtual_page(unsigned long address, unsigned long page, - int map_rw); -FASTCALL int l4lx_memory_unmap_virtual_page(unsigned long address); -FASTCALL int l4lx_memory_page_mapped(unsigned long address); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4LX__L4LX_MEMORY_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/l4lx_task.h b/repos/ports-foc/src/lib/l4lx/include/l4lx_task.h deleted file mode 100644 index 7fcee948e..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/l4lx_task.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * \brief L4lxapi library task functions - * \author Stefan Kalkowski - * \date 2011-04-29 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__L4LX_TASK_H_ -#define _L4LX__L4LX_TASK_H_ - -#include - -namespace Fiasco { -#include -} - -#ifdef __cplusplus -extern "C" { -#endif - -FASTCALL void l4lx_task_init(void); -FASTCALL Fiasco::l4_cap_idx_t l4lx_task_number_allocate(void); -FASTCALL int l4lx_task_number_free(Fiasco::l4_cap_idx_t task); -FASTCALL int l4lx_task_get_new_task(Fiasco::l4_cap_idx_t parent_id, - Fiasco::l4_cap_idx_t *id); -FASTCALL int l4lx_task_create(Fiasco::l4_cap_idx_t task_no); -FASTCALL int l4lx_task_create_thread_in_task(Fiasco::l4_cap_idx_t thread, - Fiasco::l4_cap_idx_t task, - Fiasco::l4_cap_idx_t pager, - unsigned cpu); -FASTCALL int l4lx_task_create_pager(Fiasco::l4_cap_idx_t task_no, - Fiasco::l4_cap_idx_t pager); -FASTCALL int l4lx_task_delete_thread(Fiasco::l4_cap_idx_t thread); -FASTCALL int l4lx_task_delete_task(Fiasco::l4_cap_idx_t task, unsigned option); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4LX__L4LX_TASK_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/l4lx_thread.h b/repos/ports-foc/src/lib/l4lx/include/l4lx_thread.h deleted file mode 100644 index 0328480ef..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/l4lx_thread.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - * \brief L4lxapi library thread functions - * \author Stefan Kalkowski - * \date 2011-04-29 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__L4LX_THREAD_H_ -#define _L4LX__L4LX_THREAD_H_ - -#include - -namespace Fiasco { -#include -#include -#include -} - -typedef Fiasco::l4_utcb_t *l4lx_thread_t; - -struct l4lx_thread_start_info_t { - Fiasco::l4_cap_idx_t l4cap; - Fiasco::l4_umword_t ip, sp; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -FASTCALL Fiasco::l4_cap_idx_t l4x_cpu_thread_get_cap(int cpu); - -FASTCALL void l4lx_thread_init(void); -FASTCALL void l4lx_thread_alloc_irq(Fiasco::l4_cap_idx_t c); -FASTCALL l4lx_thread_t l4lx_thread_create(L4_CV void (*thread_func)(void *data), - unsigned cpu_nr, - void *stack_pointer, - void *stack_data, unsigned stack_data_size, - Fiasco::l4_cap_idx_t l4cap, int prio, - Fiasco::l4_vcpu_state_t **vcpu_state, - const char *name, - struct l4lx_thread_start_info_t *deferstart); -FASTCALL int l4lx_thread_start(struct l4lx_thread_start_info_t *startinfo); -FASTCALL int l4lx_thread_is_valid(l4lx_thread_t t); -FASTCALL void l4lx_thread_name_set(Fiasco::l4_cap_idx_t thread, const char *name); - -FASTCALL Fiasco::l4_cap_idx_t l4lx_thread_get_cap(l4lx_thread_t t); -FASTCALL void l4lx_thread_pager_change(Fiasco::l4_cap_idx_t thread, - Fiasco::l4_cap_idx_t pager); -FASTCALL void l4lx_thread_set_kernel_pager(Fiasco::l4_cap_idx_t thread); -FASTCALL void l4lx_thread_shutdown(l4lx_thread_t u, void *v); -FASTCALL int l4lx_thread_equal(Fiasco::l4_cap_idx_t t1, Fiasco::l4_cap_idx_t t2); -FASTCALL void l4lx_thread_utcb_alloc_init(void); - -#ifdef __cplusplus -} -#endif - -#endif /* _L4LX__L4LX_THREAD_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/linux.h b/repos/ports-foc/src/lib/l4lx/include/linux.h deleted file mode 100644 index a0fd5d518..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/linux.h +++ /dev/null @@ -1,78 +0,0 @@ -/* - * \brief Linux kernel functions - * \author Stefan Kalkowski - * \date 2011-04-29 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__LINUX_H_ -#define _L4LX__LINUX_H_ - -#include -#include - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -FASTCALL void l4x_irq_save(unsigned long *flags); -FASTCALL void l4x_irq_restore(unsigned long flags); -FASTCALL void l4x_migrate_lock(unsigned long *flags); -FASTCALL void l4x_migrate_unlock(unsigned long flags); -FASTCALL unsigned long l4x_hz(); -FASTCALL int l4x_nr_irqs(void); - -FASTCALL unsigned l4x_smp_processor_id(); -FASTCALL unsigned l4x_cpu_physmap_get_id(unsigned); -FASTCALL unsigned l4x_target_cpu(const struct cpumask*); -FASTCALL void l4x_cpumask_copy(struct irq_data*, const struct cpumask*); - -#define IRQ_SAFE(x) do { \ - unsigned long flags = 0; \ - l4x_irq_save(&flags); \ - x; \ - l4x_irq_restore(flags); \ -} while(0) - -#define NOT_IMPLEMENTED IRQ_SAFE(PWRN("%s: not implemented yet!", __func__);); - -#ifdef __cplusplus -} -#endif - -namespace Linux { - - class Irq_guard - { - private: - - unsigned long _flags; - bool _vcpu; - - public: - - Irq_guard() - : _flags(0), - _vcpu(dynamic_cast(Genode::Thread::myself())) - { - if (_vcpu) - l4x_irq_save(&_flags); - } - - ~Irq_guard() - { - if (_vcpu) - l4x_irq_restore(_flags); - } - }; -} -#endif /* _L4LX__LINUX_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/platform_env.h b/repos/ports-foc/src/lib/l4lx/include/platform_env.h deleted file mode 100644 index b6cd49d30..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/platform_env.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * \brief Platform environment of Genode process - * \author Norman Feske - * \author Christian Helmuth - * \date 2006-07-28 - * - * This file is a generic variant of the platform environment, which is - * suitable for platforms such as L4ka::Pistachio and L4/Fiasco. On other - * platforms, it may be replaced by a platform-specific version residing - * in the corresponding 'base-' repository. - */ - -/* - * Copyright (C) 2006-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _PLATFORM_ENV_H_ -#define _PLATFORM_ENV_H_ - -/* Genode includes */ -#include -#include -#include -#include -#include - -namespace Genode { - struct Expanding_rm_session_client; -} - - -/** - * Repeatedly try to execute a function 'func' - * - * If the function 'func' throws an exception of type 'EXC', the 'handler' - * is called and the function call is retried. - * - * \param EXC exception type to handle - * \param func functor to execute - * \param handler exception handler executed if 'func' raised an exception - * of type 'EXC' - * \param attempts number of attempts to execute 'func' before giving up - * and reflecting the exception 'EXC' to the caller. If not - * specified, attempt infinitely. - */ -template -auto retry(FUNC func, HANDLER handler, unsigned attempts = ~0U) -> decltype(func()) -{ - for (unsigned i = 0; attempts == ~0U || i < attempts; i++) - try { return func(); } - catch (EXC) { handler(); } - - throw EXC(); -} - -#endif /* _PLATFORM_ENV_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/rm.h b/repos/ports-foc/src/lib/l4lx/include/rm.h deleted file mode 100644 index 4599b8bd6..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/rm.h +++ /dev/null @@ -1,165 +0,0 @@ -/* - * \brief Region map for l4lx support library. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__RM_H_ -#define _L4LX__RM_H_ - -/* Genode includes */ -#include -#include -#include - -/* L4lx includes */ -#include - -namespace L4lx { - - class Region - { - private: - - Genode::addr_t _addr; - Genode::size_t _size; - Dataspace *_ds; - - public: - - - /****************** - ** Constructors ** - ******************/ - - Region(Genode::addr_t addr, Genode::size_t size) - : _addr(addr), _size(size), _ds(0) {} - - Region(Genode::addr_t addr, Genode::size_t size, Dataspace *ds) - : _addr(addr), _size(size), _ds(ds) {} - - - /*************** - ** Accessors ** - ***************/ - - Genode::addr_t addr() { return _addr; } - Genode::size_t size() { return _size; } - Dataspace *ds() { return _ds; } - }; - - - class Mapping : public Genode::Avl_node, - public Genode::List::Element - { - private: - - void *_virt; - void *_phys; - bool _rw; - - public: - - Mapping(void *virt, void *v, bool rw) - : _virt(virt), _phys(v), _rw(rw) { } - - /************************ - ** Avl node interface ** - ************************/ - - void *phys() { return _phys; } - void *virt() { return _virt; } - bool writeable() { return _rw; } - - bool higher(Mapping *m) { return m->_virt > _virt; } - - Mapping *find_by_virt(void *virt) - { - if (virt == _virt) return this; - - Mapping *m = Genode::Avl_node::child(virt > _virt); - return m ? m->find_by_virt(virt) : 0; - } - }; - - - class Phys_mapping : public Genode::Avl_node - { - private: - - void *_phys; - Genode::List _list; - - public: - - Phys_mapping(void *phys) : _phys(phys) { } - - Genode::List *mappings() { return &_list; } - - bool higher(Phys_mapping *m) { return m->_phys > _phys; } - - Phys_mapping *find_by_phys(void *phys) - { - if (phys == _phys) return this; - - Phys_mapping *m = Genode::Avl_node::child(phys > _phys); - return m ? m->find_by_phys(phys) : 0; - } - }; - - - class Region_manager : public Genode::Allocator_avl_tpl - { - private: - - Genode::Avl_tree _virt_tree; - Genode::Avl_tree _phys_tree; - - Mapping* _virt_to_phys(void *virt); - Phys_mapping* _phys_to_virt(void *phys); - - public: - - /***************** - ** Constructor ** - *****************/ - - Region_manager(Allocator *md_alloc) - : Genode::Allocator_avl_tpl(md_alloc) { } - - - /*************************** - ** Convenience functions ** - ***************************/ - - Region *find_region(Genode::addr_t *addr, Genode::size_t *size); - void *attach(Genode::Dataspace_capability cap, const char* name); - void *attach(Dataspace *ds); - bool attach_at(Dataspace *ds, Genode::size_t size, - Genode::size_t offset, void* addr); - Region *reserve_range(Genode::size_t size, int align, - Genode::addr_t start=0); - void reserve_range(Genode::addr_t addr, Genode::size_t size, - const char *name); - - void add_mapping(void *phys, void *virt, bool rw); - void remove_mapping(void *virt); - void map(void *phys); - void* phys(void *virt); - - /*********** - ** Debug ** - ***********/ - - void dump(); - }; -} - -#endif /* _L4LX__RM_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/task.h b/repos/ports-foc/src/lib/l4lx/include/task.h deleted file mode 100644 index 6eb46199a..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/task.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * \brief Tasks for l4lx support library. - * \author Stefan Kalkowski - * \date 2011-04-27 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__TASK_H_ -#define _L4LX__TASK_H_ - -/* Genode includes */ -#include -#include -#include - -namespace Fiasco { -#include -#include -#include -} - -namespace L4lx { - - - class Task : public Genode::Avl_node - { - private: - - Fiasco::l4_cap_idx_t _ref; - Genode::Pd_connection _pd; - Genode::Foc_native_pd_client _native_pd { _pd.native_pd() }; - Genode::Native_capability _cap; - - public: - - /***************** - ** Constructor ** - *****************/ - - Task(Fiasco::l4_cap_idx_t ref) - : - _ref(ref), _cap(_native_pd.task_cap()) - { - using namespace Fiasco; - - /* remap task cap to given cap slot */ - l4_task_map(L4_BASE_TASK_CAP, L4_BASE_TASK_CAP, - l4_obj_fpage(Genode::Capability_space::kcap(_cap), - 0, L4_FPAGE_RWX), - _ref | L4_ITEM_MAP); - } - - - /*************** - ** Accessors ** - ***************/ - - Fiasco::l4_cap_idx_t ref() { return _ref; } - - - /************************ - ** Avl_node interface ** - ************************/ - - bool higher(Task *n) { return n->_ref > _ref; } - - Task *find_by_ref(Fiasco::l4_cap_idx_t ref) - { - if (_ref == ref) return this; - - Task *n = Genode::Avl_node::child(ref > _ref); - return n ? n->find_by_ref(ref) : 0; - } - }; - - - class Task_tree : public Genode::Avl_tree - { - public: - - Task* find_by_ref(Fiasco::l4_cap_idx_t ref) { - return this->first() ? this->first()->find_by_ref(ref) : 0; } - }; -} - -#endif /* _L4LX__TASK_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/include/vcpu.h b/repos/ports-foc/src/lib/l4lx/include/vcpu.h deleted file mode 100644 index 75649f1ac..000000000 --- a/repos/ports-foc/src/lib/l4lx/include/vcpu.h +++ /dev/null @@ -1,111 +0,0 @@ -/* - * \brief Vcpus for l4lx support library. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#ifndef _L4LX__VCPU_H_ -#define _L4LX__VCPU_H_ - -/* Genode includes */ -#include -#include -#include -#include -#include -#include -#include -#include - -namespace Fiasco { -#include -} - -namespace L4lx { - - extern Genode::Cpu_session *cpu_connection(); - - - class Vcpu : public Genode::Thread - { - private: - - enum { WEIGHT = Genode::Cpu_session::Weight::DEFAULT_WEIGHT }; - - Genode::Lock _lock; - L4_CV void (*_func)(void *data); - unsigned long _data; - Genode::addr_t _vcpu_state; - Timer::Connection _timer; - unsigned _cpu_nr; - Fiasco::l4_utcb_t * const _utcb; - - Fiasco::l4_utcb_t *_init_utcb() - { - using namespace Genode; - Foc_native_cpu_client native_cpu(env()->cpu_session()->native_cpu()); - return (Fiasco::l4_utcb_t *)native_cpu.thread_state(cap()).utcb; - } - - public: - - Vcpu(const char *str, - L4_CV void (*func)(void *data), - unsigned long *data, - Genode::size_t stack_size, - Genode::addr_t vcpu_state, - unsigned cpu_nr) - : Genode::Thread(WEIGHT, str, stack_size, - Genode::Affinity::Location(cpu_nr, 0)), - _lock(Genode::Cancelable_lock::LOCKED), - _func(func), - _data(data ? *data : 0), - _vcpu_state(vcpu_state), - _cpu_nr(cpu_nr), - _utcb(_init_utcb()) - { - start(); - - /* set l4linux specific utcb entry: L4X_UTCB_TCR_ID */ - l4_utcb_tcr_u(_utcb)->user[0] = native_thread().kcap; - - /* enable vcpu functionality respectively */ - if (_vcpu_state) { - Genode::Foc_native_cpu_client native_cpu(cpu_connection()->native_cpu()); - native_cpu.enable_vcpu(_thread_cap, _vcpu_state); - } - } - - void entry() - { - _lock.lock(); - _func(&_data); - Genode::sleep_forever(); - } - - void unblock() { _lock.unlock(); } - - Genode::addr_t sp() { return (Genode::addr_t)stack_top(); } - - Genode::addr_t ip() { return (Genode::addr_t)_func; } - - Fiasco::l4_utcb_t *utcb() { return _utcb; }; - - Timer::Connection* timer() { return &_timer; } - - void set_affinity(unsigned i) - { - Genode::Cpu_thread_client(_thread_cap).affinity(Genode::Affinity::Location(i, 0)); - } - }; - -} - -#endif /* _L4LX__VCPU_H_ */ diff --git a/repos/ports-foc/src/lib/l4lx/l4_io.cc b/repos/ports-foc/src/lib/l4lx/l4_io.cc deleted file mode 100644 index ad49a67a4..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_io.cc +++ /dev/null @@ -1,123 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - l4io_device_handle_t l4io_get_root_device(void) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - int l4io_iterate_devices(l4io_device_handle_t *devhandle, - l4io_device_t *dev, l4io_resource_handle_t *reshandle) - { - Genode::warning(__func__, " not implemented"); - return 1; - } - - - int l4io_lookup_resource(l4io_device_handle_t devhandle, - enum l4io_resource_types_t type, - l4io_resource_handle_t *reshandle, - l4io_resource_t *res) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_request_ioport(unsigned portnum, unsigned len) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_request_iomem_region(l4_addr_t phys, l4_addr_t virt, - unsigned long size, int flags) - { - using namespace Genode; - - Io_mem_connection *iomem = new (env()->heap()) Io_mem_connection(phys, size); - L4lx::Dataspace *ds = - L4lx::Env::env()->dataspaces()->insert("iomem", iomem->dataspace()); - if (!L4lx::Env::env()->rm()->attach_at(ds, size, 0, (void*)virt)) { - error("could not reserve IO mem region at ", Hex(virt)); - L4lx::Env::env()->dataspaces()->remove(ds); - destroy(env()->heap(), iomem); - return 1; - } - return 0; - } - - - long l4io_search_iomem_region(l4_addr_t phys, l4_addr_t size, - l4_addr_t *rstart, l4_addr_t *rsize) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_request_iomem(l4_addr_t phys, unsigned long size, int flags, - l4_addr_t *virt) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_release_iomem(l4_addr_t virt, unsigned long size) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_request_irq(int irqnum, l4_cap_idx_t irqcap) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - long l4io_release_irq(int irqnum, l4_cap_idx_t irq_cap) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - - - int l4io_has_resource(enum l4io_resource_types_t type, - l4vbus_paddr_t start, l4vbus_paddr_t end) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_log.cc b/repos/ports-foc/src/lib/l4lx/l4_log.cc deleted file mode 100644 index 146bedc9f..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_log.cc +++ /dev/null @@ -1,48 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include - -#include - -namespace Fiasco { -#include -#include -} - -using namespace Fiasco; - -extern "C" { - - void LOG_printf(const char *format, ...) - { - Linux::Irq_guard guard; - - va_list list; - va_start(list, format); - Genode::vprintf(format, list); - } - - - void LOG_vprintf(const char *format, va_list list) - { - Linux::Irq_guard guard; - - Genode::vprintf(format, list); - } - - - void LOG_flush(void) {} - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_dataspace.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_dataspace.cc deleted file mode 100644 index 8a15bcc63..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_dataspace.cc +++ /dev/null @@ -1,117 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -/* L4lx includes */ -#include - -namespace Fiasco { -#include -#include -#include -} - -using namespace Fiasco; - -extern "C" { - - int l4re_ds_map_region(const l4re_ds_t ds, l4_addr_t offset, unsigned long flags, - l4_addr_t min_addr, l4_addr_t max_addr) - { - using namespace L4lx; - - Dataspace *ref = Env::env()->dataspaces()->find_by_ref(ds); - if (!ref) { - Genode::warning(__func__, ": ds=", Genode::Hex(ds), " doesn't exist"); - enter_kdebug("ENOTF"); - return L4_ERANGE; - } - - try { - Genode::env()->rm_session()->attach_at(ref->cap(), min_addr); - } catch(...) { - Genode::warning(__func__, ": could not attach " - "dataspace ", ref->name(), " at ", (void*)min_addr); - enter_kdebug("EXC"); - return -1; - } - return 0; - } - - - long l4re_ds_size(const l4re_ds_t ds) - { - using namespace L4lx; - - Dataspace *ref = Env::env()->dataspaces()->find_by_ref(ds); - if (!ref) { - Genode::warning(__func__, ": ds=", Genode::Hex(ds), " doesn't exist"); - return -1; - } - - return ref->size(); - } - - - int l4re_ds_phys(const l4re_ds_t ds, l4_addr_t offset, - l4_addr_t *phys_addr, l4_size_t *phys_size) - { - using namespace L4lx; - - Dataspace *ref = Env::env()->dataspaces()->find_by_ref(ds); - if (!ref) { - Genode::warning(__func__, ": ds=", Genode::Hex(ds), " doesn't exist"); - enter_kdebug("ERR"); - return -1; - } - - if (!ref->cap().valid()) { - Genode::warning(__func__, ": cannot determine physical address for " - "dataspace ", ref->name()); - return -1; - } - - Genode::Dataspace_client dsc(ref->cap()); - *phys_addr = dsc.phys_addr() + offset; - *phys_size = dsc.size() - offset; - return 0; - } - - - int l4re_ds_copy_in(const l4re_ds_t ds, l4_addr_t dst_offs, const l4re_ds_t src, - l4_addr_t src_offs, unsigned long size) - { - Genode::warning(__func__, ": not implemented"); - return 0; - } - - - int l4re_ds_info(const l4re_ds_t ds, l4re_ds_stats_t *stats) - { - using namespace L4lx; - - Dataspace *ref = Env::env()->dataspaces()->find_by_ref(ds); - if (!ref) { - Genode::warning(__func__, ": ds=", Genode::Hex(ds), " doesn't exist"); - return -1; - } - - stats->size = ref->size(); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_debug.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_debug.cc deleted file mode 100644 index 851000690..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_debug.cc +++ /dev/null @@ -1,30 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - void l4re_debug_obj_debug(l4_cap_idx_t srv, unsigned long function) - { - PWRN("%s: Not implemented yet!",__func__); - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_mem_alloc.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_mem_alloc.cc deleted file mode 100644 index 15efd2126..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_mem_alloc.cc +++ /dev/null @@ -1,62 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -/* L4lx includes */ -#include -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - long l4re_ma_alloc(unsigned long size, l4re_ds_t const mem, - unsigned long flags) - { - using namespace L4lx; - - Dataspace *ds; - if (Genode::log2(size) >= Chunked_dataspace::CHUNK_SIZE_LOG2) { - ds = new (Genode::env()->heap()) - Chunked_dataspace("lx_memory", size, mem); - } else { - Genode::Dataspace_capability cap = - Genode::env()->ram_session()->alloc(size); - ds = new (Genode::env()->heap()) - Single_dataspace("lx_memory", size, cap, mem); - } - Env::env()->dataspaces()->insert(ds); - return 0; - } - - - long l4re_ma_alloc_align(unsigned long size, l4re_ds_t const mem, - unsigned long flags, unsigned long align) { - return l4re_ma_alloc(size, mem, flags); } - - - long l4re_ma_free(l4re_ds_t const mem) - { - Genode::warning(__func__, " not implemented"); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_namespace.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_namespace.cc deleted file mode 100644 index 3120b68b2..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_namespace.cc +++ /dev/null @@ -1,35 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - long l4re_ns_query_srv(l4re_namespace_t srv, char const *name, - l4_cap_idx_t const cap) - { - Genode::log(__func__, ": srv=", Genode::Hex(srv), " name=", name, " " - "cap=", Genode::Hex(cap)); - - Genode::warning(__func__, " not implemented"); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_rm.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_rm.cc deleted file mode 100644 index 2a9e3814d..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_rm.cc +++ /dev/null @@ -1,150 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include - -#include - -namespace Fiasco { -#include -#include -#include -} - -using namespace Fiasco; - -enum { - L4RE_SEARCH_FOR_REGION = 0x20, - L4RE_REGION_RESERVED = 0x08 -}; - -extern "C" { - - int l4re_rm_find(l4_addr_t *addr, unsigned long *size, l4_addr_t *offset, - unsigned *flags, l4re_ds_t *m) - { - using namespace L4lx; - - *m = L4_INVALID_CAP; - Region *r = Env::env()->rm()->find_region(addr, (Genode::size_t*)size); - if (r) { - if (r->ds()) - *m = r->ds()->ref(); - *flags = L4RE_REGION_RESERVED; - } else - *flags = 0; - - return 0; - } - - - int l4re_rm_attach(void **start, unsigned long size, unsigned long flags, - l4re_ds_t const mem, l4_addr_t offs, - unsigned char align) - { - using namespace Genode; - - void *original_start = *start; - - L4lx::Dataspace *ds = L4lx::Env::env()->dataspaces()->find_by_ref(mem); - if (!ds) { - error(__func__, "mem=", Hex(mem), " doesn't exist"); - return -L4_ERANGE; - } - - while (!L4lx::Env::env()->rm()->attach_at(ds, size, offs, *start)) { - if (flags & L4RE_SEARCH_FOR_REGION) /* search flag */ { - /* the original start address might have a different alignment */ - l4_addr_t start_addr = (l4_addr_t)*start; - l4_addr_t aligned_start_addr = align_addr(start_addr, align); - if (aligned_start_addr != start_addr) { - *start = (void*)aligned_start_addr; - } else { - if (start_addr <= ((addr_t)~0 - 2*(1 << align) + 1)) { - start_addr += (1 << align); - *start = (void*)start_addr; - } else { - warning(__func__, ": couldn't attach ds of " - "size ", Hex(size), " at ", original_start); - return -L4_ERANGE; - } - } - } else { - warning(__func__, ": couldn't attach ds of " - "size ", Hex(size), " at ", original_start); - return -L4_ERANGE; - } - } - - return 0; - } - - - int l4re_rm_detach(void *addr) - { - Genode::addr_t start = (Genode::addr_t) addr; - Genode::size_t size = 0; - - L4lx::Region *r = L4lx::Env::env()->rm()->find_region(&start, &size); - if (!r) { - Genode::warning(__func__, ": nothing found at ", addr); - return -1; - } - - Genode::env()->rm_session()->detach(addr); - L4lx::Env::env()->rm()->free((void*)start); - return 0; - } - - - int l4re_rm_reserve_area(l4_addr_t *start, unsigned long size, - unsigned flags, unsigned char align) - { - L4lx::Region *r = L4lx::Env::env()->rm()->reserve_range(size, align, *start); - if (r) { - *start = (l4_addr_t) r->addr(); - - return 0; - } - Genode::warning(__func__, ": could not reserve area!"); - return -1; - } - - - int l4re_rm_free_area(l4_addr_t addr) - { - L4lx::Region* md = L4lx::Env::env()->rm()->metadata((void*)addr); - - if (!md) { - Genode::warning(__func__, ": no region found at ", Genode::Hex(addr)); - return -1; - } - - /* gets freed only if there is no dataspace attached */ - if (!md->ds()->cap().valid()) - L4lx::Env::env()->rm()->free((void*)addr); - - return 0; - } - - - void l4re_rm_show_lists(void) - { - L4lx::Env::env()->rm()->dump(); - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_c_util_cap.cc b/repos/ports-foc/src/lib/l4lx/l4_re_c_util_cap.cc deleted file mode 100644 index 60ed451a3..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_c_util_cap.cc +++ /dev/null @@ -1,48 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include - -namespace Fiasco { -#include -#include -} - -using namespace Fiasco; - -extern "C" { - - l4_cap_idx_t l4re_util_cap_alloc(void) - { - l4_cap_idx_t ret = Genode::Capability_space::alloc_kcap(); - - return ret; - } - - - void l4re_util_cap_free(l4_cap_idx_t cap) - { - Genode::warning(__func__, " not implemented"); - } - - - l4_msgtag_t l4re_util_cap_release(l4_cap_idx_t cap) - { - l4_msgtag_t ret = l4_msgtag(0, 0, 0, 0); - Genode::warning(__func__, " not implemented"); - return ret; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_re_env.cc b/repos/ports-foc/src/lib/l4lx/l4_re_env.cc deleted file mode 100644 index 3eb304407..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_re_env.cc +++ /dev/null @@ -1,78 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -#include - -namespace Fiasco { -#include -#include -} - -using namespace Fiasco; - -static l4re_env_t __l4re_env; - -extern void* l4lx_kinfo; - - -extern "C" { - - l4re_env_cap_entry_t const * l4re_env_get_cap_l(char const *name, - unsigned l, - l4re_env_t const *e) - { - using namespace L4lx; - - try { - Genode::Rom_connection rom(name); - Genode::size_t size = Genode::Dataspace_client(rom.dataspace()).size(); - Genode::Dataspace_capability cap = Genode::env()->ram_session()->alloc(size); - - void *dst = Genode::env()->rm_session()->attach(cap); - void *src = Genode::env()->rm_session()->attach(rom.dataspace()); - - Genode::memcpy(dst, src, size); - Genode::env()->rm_session()->detach(src); - Genode::env()->rm_session()->detach(dst); - - l4re_env_cap_entry_t *entry = new (Genode::env()->heap()) - l4re_env_cap_entry_t(); - Dataspace *ds = new (Genode::env()->heap()) - Single_dataspace("initrd", size, cap); - Env::env()->dataspaces()->insert(ds); - entry->cap = ds->ref(); - return entry; - } catch(Genode::Rom_connection::Rom_connection_failed) { - Genode::warning(__func__, ": file ", name, " is missing"); - } - return 0; - } - - - l4_kernel_info_t *l4re_kip(void) - { - return (l4_kernel_info_t*) l4lx_kinfo; - } - - - l4re_env_t *l4re_env(void) - { - return &__l4re_env; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_util_atomic.cc b/repos/ports-foc/src/lib/l4lx/l4_util_atomic.cc deleted file mode 100644 index fad7eeaff..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_util_atomic.cc +++ /dev/null @@ -1,30 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2012-08-31 - */ - -/* - * Copyright (C) 2012-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - int l4util_cmpxchg(volatile l4_umword_t * dest, - l4_umword_t cmp_val, l4_umword_t new_val) - { - return Genode::cmpxchg((volatile int*)dest, cmp_val, new_val); - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_util_cpu.cc b/repos/ports-foc/src/lib/l4lx/l4_util_cpu.cc deleted file mode 100644 index 5fd020ccc..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_util_cpu.cc +++ /dev/null @@ -1,30 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - unsigned int l4util_cpu_capabilities(void) - { - PWRN("%s: Not implemented yet!",__func__); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_util_kip.cc b/repos/ports-foc/src/lib/l4lx/l4_util_kip.cc deleted file mode 100644 index c203352ed..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_util_kip.cc +++ /dev/null @@ -1,59 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include -#include - -namespace Fiasco { -#include -} - -#include - -using namespace Fiasco; - - -extern "C" { - - FASTCALL unsigned long int simple_strtoul(const char *nptr, char **endptr, - int base); - - - int l4util_kip_kernel_has_feature(l4_kernel_info_t *k, const char *str) - { - const char *s = l4_kip_version_string(k); - if (!s) { - PWRN("Kip parsing failed!"); - return 0; - } - - for (s += Genode::strlen(s) + 1; *s; s += Genode::strlen(s) + 1) - if (Genode::strcmp(s, str) == 0) - return 1; - return 0; - } - - - unsigned long l4util_kip_kernel_abi_version(l4_kernel_info_t *k) - { - const char *s = l4_kip_version_string(k); - if (!s) - return 0; - - for (s += Genode::strlen(s) + 1; *s; s += Genode::strlen(s) + 1) - if (Genode::strcmp(s, "abiver:", 7) == 0) - return simple_strtoul(s + 7, NULL, 0); - return 0; - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4_util_util.cc b/repos/ports-foc/src/lib/l4lx/l4_util_util.cc deleted file mode 100644 index 101d82f75..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4_util_util.cc +++ /dev/null @@ -1,43 +0,0 @@ -/* - * \brief L4Re functions needed by L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-17 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -#include -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -extern "C" { - - void l4_sleep(int ms) - { - L4lx::Vcpu *vcpu = static_cast(Genode::Thread::myself()); - if (vcpu) - vcpu->timer()->msleep(ms); - else { - static Timer::Connection timer; - timer.msleep(ms); - } - } - - - void l4_sleep_forever(void) - { - for (;;) - l4_ipc_sleep(L4_IPC_NEVER); - } - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4lx_irq.cc b/repos/ports-foc/src/lib/l4lx/l4lx_irq.cc deleted file mode 100644 index 6e5106f69..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4lx_irq.cc +++ /dev/null @@ -1,256 +0,0 @@ -/* - * \brief L4lxapi library IRQ functions. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include - -#include -#include -#include -#include - -namespace Fiasco { -#include -#include -#include -#include -#include -} - -using namespace Fiasco; - -enum { TIMER_IRQ = 0 }; - -unsigned int l4lx_irq_max = l4x_nr_irqs(); - -extern l4_kernel_info_t *l4lx_kinfo; - -extern "C" { - -FASTCALL l4_cap_idx_t l4x_have_irqcap(int irqnum); - - -void l4lx_irq_init(void) { } - - -int l4lx_irq_prio_get(unsigned int irq) -{ - NOT_IMPLEMENTED; - return 0; -} - - -unsigned int l4lx_irq_dev_startup(struct irq_data *data) -{ - unsigned irq = data->irq; - struct l4x_irq_desc_private *p = - (struct l4x_irq_desc_private*) irq_get_chip_data(irq); - - /* First test whether a capability has been registered with - * this IRQ number */ - p->irq_cap = l4x_have_irqcap(irq); - p->cpu = l4x_smp_processor_id(); - if (l4_is_invalid_cap(p->irq_cap)) { - Genode::error("invalid irq cap!"); - return 0; - } - - l4lx_irq_dev_enable(data); - return 1; -} - - -void l4lx_irq_dev_shutdown(struct irq_data *data) -{ - - if (data->irq == TIMER_IRQ) { - Genode::warning("timer shutdown not implemented yet"); - return; - } - - l4lx_irq_dev_disable(data); -} - - -int l4lx_irq_set_type(struct irq_data *data, unsigned int type) -{ - NOT_IMPLEMENTED; - return 0; -} - - -void l4lx_irq_dev_enable(struct irq_data *data) -{ - struct l4x_irq_desc_private *p = - (struct l4x_irq_desc_private*) irq_get_chip_data(data->irq);; - unsigned long flags = 0; - p->enabled = 1; - - l4x_irq_save(&flags); - l4_msgtag_t ret = l4_irq_attach(p->irq_cap, data->irq << 2, - l4x_cpu_thread_get_cap(p->cpu)); - if (l4_error(ret)) - Genode::warning("attach to irq ", Genode::Hex(p->irq_cap), " " - "failed, error=", l4_error(ret)); - l4x_irq_restore(flags); - - l4lx_irq_dev_eoi(data); -} - - -void l4lx_irq_dev_disable(struct irq_data *data) -{ - struct l4x_irq_desc_private *p = - (struct l4x_irq_desc_private*) irq_get_chip_data(data->irq);; - p->enabled = 0; - - Linux::Irq_guard guard; - if (l4_error(l4_irq_detach(p->irq_cap))) - Genode::warning("unable to detach from IRQ ", data->irq); -} - - -void l4lx_irq_dev_ack(struct irq_data *data) { } - - -void l4lx_irq_dev_mask(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_dev_mask_ack(struct irq_data *data) -{ -// NOT_IMPLEMENTED; -} - - -void l4lx_irq_dev_unmask(struct irq_data *data) -{ -// NOT_IMPLEMENTED; -} - - -int l4lx_irq_dev_set_affinity(struct irq_data *data, - const struct cpumask *dest, bool force) -{ - struct l4x_irq_desc_private *p = - (struct l4x_irq_desc_private*) irq_get_chip_data(data->irq);; - - if (!p->irq_cap) - return 0; - - unsigned target_cpu = l4x_target_cpu(dest); - - if ((int)target_cpu == -1) - return 1; - if (target_cpu == p->cpu) - return 0; - - unsigned long flags = 0; - l4x_migrate_lock(&flags); - if (l4_error(l4_irq_detach(p->irq_cap))) - Genode::warning("unable to detach from IRQ ", data->irq); - - l4x_cpumask_copy(data, dest); - p->cpu = target_cpu; - - Genode::log("switched irq ", data->irq, " to cpu ", target_cpu); - - l4_msgtag_t ret = l4_irq_attach(p->irq_cap, data->irq << 2, - l4x_cpu_thread_get_cap(p->cpu)); - if (l4_error(ret)) - Genode::warning("attach to irq ", p->irq_cap, " failed, error=", l4_error(ret)); - - if (p->enabled) - l4_irq_unmask(p->irq_cap); - - l4x_migrate_unlock(flags); - return 0; -} - - -void l4lx_irq_dev_eoi(struct irq_data *data) -{ - struct l4x_irq_desc_private *p = - (struct l4x_irq_desc_private*) irq_get_chip_data(data->irq);; - - Linux::Irq_guard guard; - l4_irq_unmask(p->irq_cap); -} - - -unsigned int l4lx_irq_timer_startup(struct irq_data *data) -{ - NOT_IMPLEMENTED; - return 0; -} - - -void l4lx_irq_timer_shutdown(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_timer_enable(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_timer_disable(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_timer_ack(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_timer_mask(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -void l4lx_irq_timer_unmask(struct irq_data *data) -{ - NOT_IMPLEMENTED; -} - - -int l4lx_irq_timer_set_affinity(struct irq_data *data, const struct cpumask *dest) -{ - NOT_IMPLEMENTED; - return 0; -} - - -int l4x_alloc_irq_desc_data(int irq) -{ - struct l4x_irq_desc_private *p; - Genode::env()->heap()->alloc(sizeof(struct l4x_irq_desc_private), (void**)&p); - if (!p) { - Genode::warning("could not allocate irq descriptor memory!"); - return -12; //ENOMEM; - } - - return irq_set_chip_data(irq, p); -} - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4lx_memory.cc b/repos/ports-foc/src/lib/l4lx/l4lx_memory.cc deleted file mode 100644 index ccabaceb3..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4lx_memory.cc +++ /dev/null @@ -1,86 +0,0 @@ -/* - * \brief L4lxapi library memory functions. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include - -#include -#include - -namespace Fiasco { -#include -} - -extern "C" { - -void l4lx_memory_map_physical_page(unsigned long page) -{ - void* phys = (void*)Fiasco::l4_trunc_page(page); - L4lx::Env::env()->rm()->map(phys); -} - - -/** - * \brief Map a page into the virtual address space. - * \ingroup memory - * - * \param address Virtual address. - * \param page Physical address. - * \param map_rw True if map should be mapped rw. - * - * \return 0 on success, != 0 on error - */ -int l4lx_memory_map_virtual_page(unsigned long address, unsigned long page, - int map_rw) -{ - Linux::Irq_guard guard; - - void* phys = (void*)Fiasco::l4_trunc_page(page); - void* virt = (void*)Fiasco::l4_trunc_page(address); - L4lx::Env::env()->rm()->add_mapping(phys, virt, map_rw); - L4lx::Env::env()->rm()->map(phys); - return 0; -} - -/** - * \brief Unmap a page from the virtual address space. - * \ingroup memory - * - * \param address Virtual adress. - * - * \return 0 on success, != 0 on error - */ -int l4lx_memory_unmap_virtual_page(unsigned long address) -{ - Linux::Irq_guard guard; - - L4lx::Env::env()->rm()->remove_mapping((void*)Fiasco::l4_trunc_page(address)); - return 0; -} - -/** - * \brief Return if something is mapped at given address - * \ingroup memory - * - * \param address Address to query - * - * \return 1 if a page is mapped, 0 if not - */ -int l4lx_memory_page_mapped(unsigned long address) -{ - Linux::Irq_guard guard; - - return (L4lx::Env::env()->rm()->phys((void*)Fiasco::l4_trunc_page(address))) ? 1 : 0; -} - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4lx_task.cc b/repos/ports-foc/src/lib/l4lx/l4lx_task.cc deleted file mode 100644 index d1326dba7..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4lx_task.cc +++ /dev/null @@ -1,173 +0,0 @@ -/* - * \brief L4lxapi library task functions. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include - -#include -#include - -using namespace Fiasco; - -enum { - L4LX_TASK_DELETE_SPACE = 1, - L4LX_TASK_DELETE_THREAD = 2, -}; - -extern "C" { - -/** - * \brief Initialize task management. - * \ingroup task. - * - * - * General information about tasks: - * - The entity called task is meant for user space tasks in L4Linux, - * i.e. threads running in another address space then the L4Linux - * server - * - The term "task" has no connection with L4 tasks. - * - The task in L4Linux is represented by an (unsigned) integer - * which is non-ambiguous in the L4Linux server (the same number can - * exist in several L4Linux servers running in parallel though) - */ -void l4lx_task_init(void) { } - -/** - * \brief Allocate a task from the task management system for later use. - * \ingroup task - * - * \return A valid task, or L4_NIL_ID if no task could be allocated. - */ -l4_cap_idx_t l4lx_task_number_allocate(void) -{ - NOT_IMPLEMENTED; - return 0; -} - -/** - * \brief Free task number after the task has been deleted. - * \ingroup task - * - * \param task The task to delete. - * - * \return 0 on succes, -1 if task number invalid or already free - */ -int l4lx_task_number_free(l4_cap_idx_t task) -{ - Linux::Irq_guard guard; - - Genode::Capability_space::free_kcap(task); - return 0; -} - -/** - * \brief Allocate a new task number and return threadid for user task. - * \ingroup task - * - * \param parent_id If not NIL_ID, a new thread within - * parent_id's address space will be - * allocated, for CLONE_VM tasks. - * - * \retval id Thread ID of the user thread. - * - * \return 0 on success, != 0 on error - */ -int l4lx_task_get_new_task(l4_cap_idx_t parent_id, - l4_cap_idx_t *id) -{ - Linux::Irq_guard guard; - - *id = Genode::Capability_space::alloc_kcap(); - return 0; -} - -/** - * \brief Create a (user) task. The pager is the Linux server. - * \ingroup task - * - * \param task_no Task number of the task to be created - * (task number is from l4lx_task_allocate()). - * \return 0 on success, error code otherwise - * - * This function additionally sets the priority of the thread 0 to - * CONFIG_L4_PRIO_USER_PROCESS. - * - */ -int l4lx_task_create(l4_cap_idx_t task_no) -{ - using namespace L4lx; - - Linux::Irq_guard guard; - - Env::env()->tasks()->insert(new (Genode::env()->heap()) Task(task_no)); - return 0; -} - -int l4lx_task_create_thread_in_task(l4_cap_idx_t thread, l4_cap_idx_t task, - l4_cap_idx_t pager, unsigned cpu) -{ - NOT_IMPLEMENTED; - return 0; -} - - -/** - * \brief Create a (user) task. - * \ingroup task - * - * \param task_no See l4lx_task_create - * \param pager The pager for this task. - * - * \return See l4lx_task_create - */ -int l4lx_task_create_pager(l4_cap_idx_t task_no, l4_cap_idx_t pager) -{ - NOT_IMPLEMENTED; - return 0; -} - -/** - * \brief Terminate a task (and all its threads). - * \ingroup task - * - * \param task Id of the task to delete. - * \param option Delete options (currently only supported is - * option=1: send exit signal to the events - * server, option=0: send no exit signal to - * events server) - * - * \return 0 on error (task delete failed, threads are not deleted) - * != 0 on sucess: - * 1 if the whole address space was deleted - * 2 if just a thread was "deleted" - */ -int l4lx_task_delete_thread(l4_cap_idx_t thread) -{ - NOT_IMPLEMENTED; - return 0; -} - -int l4lx_task_delete_task(l4_cap_idx_t task, unsigned option) -{ - using namespace L4lx; - - Linux::Irq_guard guard; - - Task *entry = Env::env()->tasks()->find_by_ref(task); - Env::env()->tasks()->remove(entry); - destroy(Genode::env()->heap(), entry); - return 0; -} - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4lx_thread.cc b/repos/ports-foc/src/lib/l4lx/l4lx_thread.cc deleted file mode 100644 index 81e572405..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4lx_thread.cc +++ /dev/null @@ -1,216 +0,0 @@ -/* - * \brief L4lxapi library thread functions. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include - -#include -#include -#include - -namespace Fiasco { -#include -} - -using namespace Fiasco; - -enum { - L4LX_THREAD_NO_THREADS = 48, - L4LX_THREAD_NAME_LEN = 32 -}; - -struct l4lx_thread_name_struct { - l4_cap_idx_t id; - char name[L4LX_THREAD_NAME_LEN]; -}; - -typedef l4_utcb_t *l4lx_thread_t; - -static L4lx::Vcpu* vcpus[L4LX_THREAD_NO_THREADS]; -struct l4lx_thread_name_struct l4lx_thread_names[L4LX_THREAD_NO_THREADS]; - - -static l4_addr_t utcb_base_addr() -{ - l4_addr_t _addr = (l4_addr_t) l4_utcb(); - return _addr; -} - -Genode::Cpu_session* L4lx::cpu_connection() -{ - return Genode::env()->cpu_session(); -} - - -static unsigned thread_id(l4lx_thread_t tid) -{ - l4_size_t offset = (l4_addr_t)tid - utcb_base_addr(); - return offset / L4_UTCB_OFFSET; -} - - -static void* alloc_vcpu_state() -{ - using namespace Fiasco; - - L4lx::Region_manager *rm = L4lx::Env::env()->rm(); - L4lx::Region* r = rm->reserve_range(L4_PAGESIZE, 12); - if (!r) { - Genode::warning("couldn't allocate vcpu area"); - return 0; - } - l4_addr_t addr = r->addr(); - - // TODO: use different sizes for 32 vs. 64-bit - l4_fpage_t fpage = l4_fpage(addr, L4_LOG2_PAGESIZE, L4_CAP_FPAGE_RW); - l4_msgtag_t tag = l4_task_add_ku_mem(Fiasco::TASK_CAP, fpage); - if (l4_error(tag)) - Genode::error("l4_task_add_ku_mem for ", Genode::Hex(addr), " " - "failed, error=", l4_error(tag)); - return (void*)addr; -} - - -extern "C" { - -void l4lx_thread_name_set(l4_cap_idx_t thread, const char *name) -{ - Linux::Irq_guard guard; - - Fiasco::l4_debugger_set_object_name(thread, name); -} - - -void l4lx_thread_init(void) { } - -void l4lx_thread_alloc_irq(l4_cap_idx_t c) -{ - Linux::Irq_guard guard; - - Genode::Foc_native_cpu_client - native_cpu(L4lx::cpu_connection()->native_cpu()); - - Genode::Native_capability cap = native_cpu.alloc_irq(); - - l4_task_map(L4_BASE_TASK_CAP, L4_BASE_TASK_CAP, - l4_obj_fpage(Genode::Capability_space::kcap(cap), 0, L4_FPAGE_RWX), - c | L4_ITEM_MAP); -} - -l4lx_thread_t l4lx_thread_create(L4_CV void (*thread_func)(void *data), - unsigned cpu_nr, - void *stack_pointer, - void *stack_data, unsigned stack_data_size, - l4_cap_idx_t l4cap, int prio, - l4_vcpu_state_t **vcpu_state, - const char *name, - struct l4lx_thread_start_info_t *deferstart) -{ - using namespace L4lx; - - Linux::Irq_guard guard; - - void *addr = 0; - if (vcpu_state) { - addr = alloc_vcpu_state(); - if (!addr) { - Genode::warning(__func__, ": no kernel-user memory left!"); - return 0; - } - *vcpu_state = (l4_vcpu_state_t *) addr; - } - - Vcpu *vc = new (Genode::env()->heap()) Vcpu(name, thread_func, - (unsigned long*)stack_data, 1024 * 64, - (Genode::addr_t)addr, - l4x_cpu_physmap_get_id(cpu_nr)); - - vcpus[thread_id(vc->utcb())] = vc; - - if (!deferstart) - vc->unblock(); - else { - deferstart->l4cap = (l4_cap_idx_t) vc; - deferstart->sp = (l4_umword_t)vc->sp(); - deferstart->ip = (l4_umword_t)vc->ip(); - } - - return vc->utcb(); -} - - -int l4lx_thread_start(struct l4lx_thread_start_info_t *startinfo) -{ - Linux::Irq_guard guard; - - L4lx::Vcpu *vc = (L4lx::Vcpu*) startinfo->l4cap; - vc->unblock(); - return 0; -} - - -void l4lx_thread_pager_change(l4_cap_idx_t thread, l4_cap_idx_t pager) -{ - Linux::Irq_guard guard; - - l4_cap_idx_t p_id = thread - Fiasco::THREAD_GATE_CAP - + Fiasco::THREAD_PAGER_CAP; - - l4_task_map(L4_BASE_TASK_CAP, L4_BASE_TASK_CAP, - l4_obj_fpage(pager, 0, L4_FPAGE_RWX), p_id | L4_ITEM_MAP); -} - - -void l4lx_thread_set_kernel_pager(l4_cap_idx_t thread) -{ - Linux::Irq_guard guard; - - Genode::warning(__func__, " not implemented"); -} - - -void l4lx_thread_shutdown(l4lx_thread_t u, void *v) -{ - Linux::Irq_guard guard; - - Genode::warning(__func__, " not implemented"); -} - - -int l4lx_thread_equal(l4_cap_idx_t t1, l4_cap_idx_t t2) -{ - Linux::Irq_guard guard; - - Genode::warning(__func__, " not implemented"); - return 0; -} - - -l4_cap_idx_t l4lx_thread_get_cap(l4lx_thread_t t) -{ - if (!vcpus[thread_id(t)]) { - Genode::warning("invalid utcb ", t); - return L4_INVALID_CAP; - } - return vcpus[thread_id(t)]->native_thread().kcap; -} - - -int l4lx_thread_is_valid(l4lx_thread_t t) -{ - return vcpus[thread_id(t)] ? 1 : 0; -} - -} diff --git a/repos/ports-foc/src/lib/l4lx/l4x_pagefault.cc b/repos/ports-foc/src/lib/l4lx/l4x_pagefault.cc deleted file mode 100644 index 504fd36f1..000000000 --- a/repos/ports-foc/src/lib/l4lx/l4x_pagefault.cc +++ /dev/null @@ -1,124 +0,0 @@ -#include -#include - -#include -#include - -namespace Fiasco { -#include -#include -#include -#include -} - -static bool ballooning = false; -static Genode::Lock balloon_lock; - -namespace { - - class Signal_thread : public Genode::Thread_deprecated<8192> - { - private: - - Fiasco::l4_cap_idx_t _cap; - Genode::Lock *_sync; - - protected: - - void entry() - { - using namespace Fiasco; - using namespace Genode; - - Signal_receiver receiver; - Signal_context rx; - Signal_context_capability cap(receiver.manage(&rx)); - Genode::env()->parent()->yield_sigh(cap); - _sync->unlock(); - - while (true) { - receiver.wait_for_signal(); - Genode::env()->parent()->yield_request(); - { - Genode::Lock::Guard guard(balloon_lock); - ballooning = true; - if (l4_error(l4_irq_trigger(_cap)) != -1) - PWRN("IRQ net trigger failed\n"); - } - } - } - - public: - - Signal_thread(Fiasco::l4_cap_idx_t cap, Genode::Lock *sync) - : Genode::Thread_deprecated<8192>("net-signal-thread"), _cap(cap), _sync(sync) { - start(); } - }; -} - - -extern "C" { - -L4_CV int l4x_forward_pf(Fiasco::l4_umword_t addr, - Fiasco::l4_umword_t pc, int extra_write) -{ - using namespace Fiasco; - - Genode::size_t size = L4_PAGESIZE; - Genode::addr_t ds_start_addr = addr; - L4lx::Region *r = L4lx::Env::env()->rm()->find_region(&ds_start_addr, &size); - L4lx::Dataspace *ds = r ? r->ds() : 0; - - while (ds) { - try { - ds->map(addr - r->addr(), !ballooning); - break; - } catch(Genode::Rm_session::Attach_failed) { - PWRN("Attach of chunk dataspace of failed"); - return 0; - } - } - - if (!extra_write) - l4_touch_ro((void*)l4_trunc_page(addr), L4_LOG2_PAGESIZE); - else - l4_touch_rw((void*)l4_trunc_page(addr), L4_LOG2_PAGESIZE); - return 1; -} - - -Fiasco::l4_cap_idx_t genode_balloon_irq_cap() -{ - Linux::Irq_guard guard; - - static Genode::Foc_native_cpu_client native_cpu(L4lx::cpu_connection()->native_cpu()); - static Genode::Native_capability cap = native_cpu.alloc_irq(); - static Genode::Lock lock(Genode::Lock::LOCKED); - static Fiasco::l4_cap_idx_t kcap = Genode::Capability_space::kcap(cap); - static Signal_thread th(kcap, &lock); - lock.lock(); - return kcap; -} - - -bool genode_balloon_free_chunk(unsigned long addr) -{ - Linux::Irq_guard guard; - - Genode::addr_t ds_start_addr = addr; - Genode::size_t size = L4_PAGESIZE; - L4lx::Region *r = L4lx::Env::env()->rm()->find_region(&ds_start_addr, &size); - L4lx::Dataspace *ds = r ? r->ds() : 0; - return ds ? ds->free(addr - r->addr()) : false; -} - - -void genode_balloon_free_done() -{ - Linux::Irq_guard ig; - Genode::Lock::Guard guard(balloon_lock); - ballooning = false; - Genode::env()->parent()->yield_response(); -} - -} diff --git a/repos/ports-foc/src/lib/l4lx/rm.cc b/repos/ports-foc/src/lib/l4lx/rm.cc deleted file mode 100644 index f07d674e0..000000000 --- a/repos/ports-foc/src/lib/l4lx/rm.cc +++ /dev/null @@ -1,272 +0,0 @@ -/* - * \brief Region map for l4lx support library. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include - -/* L4lx includes */ -#include - -namespace Fiasco { -#include -#include -#include -} - -using namespace L4lx; - -Region* Region_manager::find_region(Genode::addr_t *addr, Genode::size_t *size) -{ - Genode::Allocator_avl_base::Block *b = _find_by_address(*addr); - if (!b) - return 0; - - *addr = b->addr(); - *size = b->size(); - return b->used() ? metadata((void*)*addr) : 0; -} - - -void* Region_manager::attach(Genode::Dataspace_capability cap, const char* name) -{ - /* Put it in the dataspace tree */ - L4lx::Dataspace *ds = - L4lx::Env::env()->dataspaces()->insert(name, cap); - - return attach(ds); -} - - -void* Region_manager::attach(Dataspace *ds) -{ - void* addr = Genode::env()->rm_session()->attach(ds->cap()); - alloc_addr(ds->size(), (Genode::addr_t)addr); - metadata(addr, Region((Genode::addr_t)addr, ds->size(), ds)); - return addr; -} - - -bool Region_manager::attach_at(Dataspace *ds, Genode::size_t size, - Genode::size_t offset, void* addr) -{ - Genode::Allocator_avl_base::Block *b = _find_by_address((Genode::addr_t)addr); - - /* If the region is already known, it should have been reserved before */ - if (b && b->used()) { - Region *r = metadata(addr); - - /* Sanity check */ - if (!r || r->addr() != (Genode::addr_t)addr || - r->size() != ds->size() || r->ds()) { - return false; - } - - /* We have to detach the dataspace placeholder */ - Genode::env()->rm_session()->detach(addr); - } else - /* We have to reserve the area in our region map */ - alloc_addr(ds->size(), (Genode::addr_t)addr); - - /* Now call Genode's region map to really attach the dataspace */ - try { - Genode::env()->rm_session()->attach(ds->cap(), size, offset, - true, (Genode::addr_t) addr); - } catch(...) { - return false; - } - metadata(addr, Region((Genode::addr_t)addr, ds->size(), ds)); - return true; -} - - -Region* Region_manager::reserve_range(Genode::size_t size, int align, - Genode::addr_t start) -{ - using namespace Genode; - void* addr = nullptr; - addr_t original_start = start; - - while (true) { - - Rm_connection *rmc = nullptr; - Region_map *rm = nullptr; - - try { - /* - * We attach a managed-dataspace as a placeholder to - * Genode's region-map - */ - rmc = new (env()->heap()) Rm_connection; - rm = new (env()->heap()) Region_map_client(rmc->create(size)); - - addr = start ? env()->rm_session()->attach_at(rm->dataspace(), start) - : env()->rm_session()->attach(rm->dataspace()); - break; - } catch(Rm_session::Attach_failed e) { - destroy(env()->heap(), rm); - /* attach with pre-defined address failed, so search one */ - if (start) { - /* the original start address might have a different alignment */ - addr_t aligned_start = align_addr(start, align); - if (aligned_start != start) { - start = aligned_start; - } else { - if (start <= ((addr_t)~0 - 2*(1 << align) + 1)) { - start += (1 << align); - } else { - warning(__func__, ": attach failed: " - "start=", Hex(original_start), " " - "size=", Hex(size), " " - "align=", align); - return 0; - } - } - } else { - warning(__func__, ": attach failed: " - "start=", Hex(original_start), " " - "size=", Hex(size), " " - "align=", align); - return 0; - } - } - } - - /* - * Mark the region reserved, in our region-map by setting the - * dataspace reference to zero. - */ - alloc_addr(size, (addr_t)addr); - Region reg((addr_t)addr, size, 0); - metadata(addr, reg); - return metadata(addr); -} - - -void Region_manager::reserve_range(Genode::addr_t addr, Genode::size_t size, - const char *name) -{ - Genode::Dataspace_capability cap; - L4lx::Dataspace *ds = new (Genode::env()->heap()) - L4lx::Single_dataspace(name, size, cap); - L4lx::Env::env()->dataspaces()->insert(ds); - alloc_addr(size, (Genode::addr_t)addr); - metadata((void*)addr, Region(addr, size, ds)); -} - - -void Region_manager::dump() -{ - Genode::addr_t addr = 0; - Genode::log("Region map:"); - while (true) { - Allocator_avl_base::Block *b = _find_by_address(addr); - Region *r = metadata((void*)addr); - if (!b) - return; - - Genode::log(" ", Genode::Hex_range(b->addr(), b->size()), - " [", b->used() ? ((r && r->ds()) ? r->ds()->name() : "reserved") - : "unused", - "]"); - - addr = b->addr() + b->size(); - } -}; - - -Mapping* Region_manager::_virt_to_phys(void *virt) { - return _virt_tree.first() ? _virt_tree.first()->find_by_virt(virt) : 0; } - - -Phys_mapping* Region_manager::_phys_to_virt(void *phys) { - return _phys_tree.first() ? _phys_tree.first()->find_by_phys(phys) : 0; } - - -void Region_manager::add_mapping(void *phys, void *virt, bool rw) -{ - Mapping *m = _virt_to_phys(virt); - if (!m) { - m = new (Genode::env()->heap()) Mapping(virt, phys, rw); - _virt_tree.insert(m); - Phys_mapping *p = _phys_to_virt(phys); - if (!p) { - p = new (Genode::env()->heap()) Phys_mapping(phys); - _phys_tree.insert(p); - } - p->mappings()->insert(m); - } -} - - -void Region_manager::remove_mapping(void *virt) -{ - using namespace Fiasco; - - l4_fpage_t fpage = l4_fpage((l4_addr_t)virt, L4_LOG2_PAGESIZE, L4_FPAGE_RW); - l4_msgtag_t tag = l4_task_unmap(L4_BASE_TASK_CAP, fpage, L4_FP_ALL_SPACES); - if (l4_error(tag)) - Genode::warning("unmapping ", virt, " failed, error=", l4_error(tag)); - - Mapping *m = _virt_to_phys(virt); - if (m) { - _virt_tree.remove(m); - Phys_mapping *p = _phys_to_virt(m->phys()); - if (p) { - p->mappings()->remove(m); - if (!p->mappings()->first()) { - _phys_tree.remove(p); - Genode::destroy(Genode::env()->heap(), p); - } - } - Genode::destroy(Genode::env()->heap(), m); - } -} - - -void Region_manager::map(void *phys) -{ - using namespace Fiasco; - - Phys_mapping *p = _phys_to_virt(phys); - if (p) { - Mapping *m = p->mappings()->first(); - while (m) { - if (!m->writeable()) - l4_touch_ro(phys, L4_PAGESIZE); - else - l4_touch_rw(phys, L4_PAGESIZE); - - l4_fpage_t snd_fpage = m->writeable() - ? l4_fpage((l4_addr_t)phys, L4_LOG2_PAGESIZE, L4_FPAGE_RW) - : l4_fpage((l4_addr_t)phys, L4_LOG2_PAGESIZE, L4_FPAGE_RO); - l4_msgtag_t tag = l4_task_map(L4_BASE_TASK_CAP, L4_BASE_TASK_CAP, - snd_fpage, (l4_addr_t)m->virt()); - if (l4_error(tag)) { - Genode::error("mapping from ", phys, " to ", m->virt(), " " - "failed, error=", l4_error(tag)); - } - m = m->next(); - } - } -} - - -void* Region_manager::phys(void *virt) -{ - Mapping *m = _virt_to_phys(virt); - return m ? m->phys() : 0; -} - diff --git a/repos/ports-foc/src/lib/l4lx/startup.cc b/repos/ports-foc/src/lib/l4lx/startup.cc deleted file mode 100644 index 167515ac9..000000000 --- a/repos/ports-foc/src/lib/l4lx/startup.cc +++ /dev/null @@ -1,147 +0,0 @@ -/* - * \brief Startup code for L4Linux. - * \author Stefan Kalkowski - * \date 2011-04-11 - */ - -/* - * Copyright (C) 2011-2013 Genode Labs GmbH - * - * This file is part of the Genode OS framework, which is distributed - * under the terms of the GNU General Public License version 2. - */ - -/* Genode includes */ -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* L4lx includes */ -#include - -namespace Fiasco { -#include -#include -#include -#include -#include -} - -extern void* _prog_img_end; /* binary end in virtual memory */ -extern void* _prog_img_beg; /* binary start in virtual memory */ -extern void* l4lx_kinfo; /* pointer to the KIP */ - -extern "C" int linux_main(int argc, char **argv); /* l4linux entry function */ - -static void parse_cmdline(char*** cmd, int *num) -{ - using namespace Genode; - - enum { MAX_CMDLINE_LEN = 256, MAX_ARGS = 128 }; - - static char arg_str[MAX_CMDLINE_LEN]; - static char* words[MAX_ARGS]; - - try { - config()->xml_node().attribute("args").value(arg_str, sizeof(arg_str)); - } catch(...) { - warning("couldn't parse commandline from config!"); - arg_str[0] = 0; - } - - unsigned i = 1; - words[0] = (char*) "vmlinux"; - for (char* start = &arg_str[0], *ptr = start; i < MAX_ARGS; ptr++) { - - if (*ptr != 0 && *ptr != ' ') - continue; - - words[i] = start; - *ptr++ = 0; - start = ptr; - words[++i] = 0; - - if (*ptr == 0) - break; - - for (; *ptr == ' '; ptr++) ; - } - - *cmd = words; - *num = i; -} - - -static void map_kip() -{ - using namespace Genode; - - /* Open the KIP special file and keep it open */ - static Genode::Rom_connection kip_rom("l4v2_kip"); - - /* Attach and register dataspace */ - l4lx_kinfo = L4lx::Env::env()->rm()->attach(kip_rom.dataspace(), "KIP"); - - /* map it right now */ - Fiasco::l4_touch_ro(l4lx_kinfo, L4_PAGESIZE); -} - - -static void prepare_l4re_env() -{ - using namespace Fiasco; - - Genode::Cpu_session &cpu = *Genode::env()->cpu_session(); - - Genode::Foc_native_cpu_client native_cpu(cpu.native_cpu()); - - Genode::Thread_capability main_thread = Genode::Thread::myself()->cap(); - - static Genode::Native_capability main_thread_cap = native_cpu.native_cap(main_thread); - - l4re_env_t *env = l4re_env(); - env->first_free_utcb = (l4_addr_t)l4_utcb() + L4_UTCB_OFFSET; - env->utcb_area = l4_fpage((l4_addr_t)l4_utcb(), - Genode::log2(L4_UTCB_OFFSET * L4lx::THREAD_MAX), - L4_CAP_FPAGE_RW); - env->factory = L4_INVALID_CAP; - env->scheduler = L4_BASE_SCHEDULER_CAP; - env->mem_alloc = L4_INVALID_CAP; - env->log = L4_INVALID_CAP; - env->main_thread = Genode::Capability_space::kcap(main_thread_cap); - env->rm = Fiasco::THREAD_AREA_BASE + Fiasco::THREAD_PAGER_CAP; -} - - -static void register_reserved_areas() -{ - using namespace Genode; - - size_t bin_sz = (addr_t)&_prog_img_end - (addr_t)&_prog_img_beg; - L4lx::Env::env()->rm()->reserve_range((addr_t)&_prog_img_beg, bin_sz, "Binary"); - L4lx::Env::env()->rm()->reserve_range(Thread::stack_area_virtual_base(), - Thread::stack_area_virtual_size(), - "Stack Area"); -} - - -int main(int, char**) -{ - int cmd_num = 0; - char** cmdline = 0; - - Genode::log("Booting L4Linux ..."); - - register_reserved_areas(); - map_kip(); - prepare_l4re_env(); - parse_cmdline(&cmdline, &cmd_num); - - return linux_main(cmd_num, cmdline); -} diff --git a/tool/autopilot.list b/tool/autopilot.list index 7d6237ad1..8a5247a4a 100644 --- a/tool/autopilot.list +++ b/tool/autopilot.list @@ -16,7 +16,6 @@ timed_semaphore signal sub_rm python -l4linux lx_hybrid_ctors lx_hybrid_exception lx_hybrid_pthread_ipc @@ -31,9 +30,6 @@ netperf_lxip netperf_lxip_usb30 netperf_lxip_bridge netperf_lxip_wifi -l4linux_netperf -l4linux_netperf_usb30 -l4linux_netperf_bridge noux_tool_chain_auto affinity mp_server