Supporting Genode for RaspberryPi on Fiasco.OC

Nobody III hungryninja101 at ...9...
Sun Nov 23 21:06:23 CET 2014


Thanks. I was wondering which kernel was best for RPI. It sounds like
Fiasco.OC is pretty good then.
On Nov 23, 2014 8:24 AM, "Reinier Millo Sánchez" <rmillo at ...210...> wrote:

> Hi Genode community
> Maybe there is anybody interested in use Genode for RaspberryPI with
> Fiasco.OC as microkernel. I have configured Genode to compile for
> RaspberryPI with Fiasco.OC (base-foc). I have tested some simple examples
> from Genode, and its works.
> Examples on RaspberryPI, using hw platform or Fiasco.OC microkernel, does
> not recognize the mouse, i don't know where is the problem yet.
> Now i'm testing some complex examples based on QT with Fiasco.OC on
> RaspberryPI.
>
> ----------------------- repos/base-foc/config/rpi.kernel
> -----------------------
> new file mode 100644
> index 0000000..2350b1c
> @@ -0,0 +1,80 @@
> +#
> +# Automatically generated file; DO NOT EDIT.
> +# Fiasco configuration
> +#
> +
> +#
> +# Target configuration
> +#
> +# CONFIG_IA32 is not set
> +# CONFIG_AMD64 is not set
> +CONFIG_ARM=y
> +# CONFIG_PF_REALVIEW is not set
> +# CONFIG_PF_IMX is not set
> +# CONFIG_PF_S3C2410 is not set
> +# CONFIG_PF_TEGRA is not set
> +# CONFIG_PF_OMAP is not set
> +# CONFIG_PF_XSCALE is not set
> +# CONFIG_PF_SA1100 is not set
> +# CONFIG_PF_EXYNOS is not set
> +# CONFIG_PF_KIRKWOOD is not set
> +# CONFIG_PF_INTEGRATOR is not set
> +CONFIG_PF_BCM2835=y
> +CONFIG_BSP_NAME="bcm2835"
> +CONFIG_ABI_VF=y
> +CONFIG_CAN_ARM_CPU_1176=y
> +CONFIG_ARM_1176=y
> +# CONFIG_ARM_ALIGNMENT_CHECK is not set
> +CONFIG_ARM_EM_STD=y
> +# CONFIG_ARM_EM_NS is not set
> +# CONFIG_ARM_EM_TZ is not set
> +CONFIG_FPU=y
> +# CONFIG_ARM_1176_CACHE_ALIAS_FIX is not set
> +# CONFIG_ARM_CPU_ERRATA is not set
> +
> +#
> +# Kernel options
> +#
> +CONFIG_CONTEXT_4K=y
> +CONFIG_FINE_GRAINED_CPUTIME=y
> +CONFIG_SCHED_FIXED_PRIO=y
> +# CONFIG_SCHED_WFQ is not set
> +# CONFIG_SCHED_FP_WFQ is not set
> +# CONFIG_DISABLE_VIRT_OBJ_SPACE is not set
> +
> +#
> +# Debugging
> +#
> +CONFIG_INLINE=y
> +# CONFIG_NDEBUG is not set
> +CONFIG_NO_FRAME_PTR=y
> +# CONFIG_STACK_DEPTH is not set
> +# CONFIG_LIST_ALLOC_SANITY is not set
> +CONFIG_SERIAL=y
> +CONFIG_JDB=y
> +# CONFIG_JDB_LOGGING is not set
> +# CONFIG_JDB_DISASM is not set
> +# CONFIG_JDB_GZIP is not set
> +# CONFIG_VMEM_ALLOC_TEST is not set
> +CONFIG_DEBUG_KERNEL_PAGE_FAULTS=y
> +# CONFIG_WARN_NONE is not set
> +# CONFIG_WARN_WARNING is not set
> +CONFIG_WARN_ANY=y
> +
> +#
> +# Compiling
> +#
> +CONFIG_CC="gcc"
> +CONFIG_CXX="g++"
> +CONFIG_HOST_CC="gcc"
> +CONFIG_HOST_CXX="g++"
> +# CONFIG_MAINTAINER_MODE is not set
> +CONFIG_LABEL=""
> +CONFIG_EXPERIMENTAL=y
> +CONFIG_PERF_CNT=y
> +CONFIG_BIT32=y
> +CONFIG_ARM_V6=y
> +CONFIG_ARM_V6PLUS=y
> +CONFIG_WARN_LEVEL=2
> +CONFIG_XARCH="arm"
> +CONFIG_ABI="vf"
> ------------------------ repos/base-foc/config/rpi.user
> ------------------------
> new file mode 100644
> index 0000000..db26095
> @@ -0,0 +1,70 @@
> +#
> +# Automatically generated file; DO NOT EDIT.
> +# L4Re Configuration
> +#
> +# CONFIG_BUILD_ARCH_x86 is not set
> +# CONFIG_BUILD_ARCH_amd64 is not set
> +CONFIG_BUILD_ARCH_arm=y
> +# CONFIG_BUILD_ARCH_ppc32 is not set
> +# CONFIG_BUILD_ARCH_sparc is not set
> +CONFIG_BUILD_ARCH="arm"
> +CONFIG_BUILD_ABI_l4f=y
> +CONFIG_BUILD_ABI="l4f"
> +CONFIG_CPU="armv6"
> +# CONFIG_CPU_ARM_ARMV4 is not set
> +# CONFIG_CPU_ARM_ARMV4T is not set
> +# CONFIG_CPU_ARM_ARMV5 is not set
> +# CONFIG_CPU_ARM_ARMV5T is not set
> +# CONFIG_CPU_ARM_ARMV5TE is not set
> +CONFIG_CPU_ARM_ARMV6=y
> +# CONFIG_CPU_ARM_ARMV6T2 is not set
> +# CONFIG_CPU_ARM_ARMV6ZK is not set
> +# CONFIG_CPU_ARM_ARMV7A is not set
> +# CONFIG_CPU_ARM_ARMV7R is not set
> +# CONFIG_CPU_ARMV6KPLUS is not set
> +CONFIG_CPU_ARMV6PLUS=y
> +# CONFIG_PLATFORM_TYPE_imx53 is not set
> +# CONFIG_PLATFORM_TYPE_imx35 is not set
> +# CONFIG_PLATFORM_TYPE_rv_pbx is not set
> +# CONFIG_PLATFORM_TYPE_exynos5 is not set
> +# CONFIG_PLATFORM_TYPE_rv is not set
> +# CONFIG_PLATFORM_TYPE_kirkwood is not set
> +# CONFIG_PLATFORM_TYPE_pandaboard is not set
> +# CONFIG_PLATFORM_TYPE_tegra3 is not set
> +# CONFIG_PLATFORM_TYPE_tegra2 is not set
> +# CONFIG_PLATFORM_TYPE_imx6 is not set
> +# CONFIG_PLATFORM_TYPE_exynos4 is not set
> +# CONFIG_PLATFORM_TYPE_omap3_am33xx is not set
> +# CONFIG_PLATFORM_TYPE_rpi_b is not set
> +# CONFIG_PLATFORM_TYPE_rv_vexpress_a15 is not set
> +# CONFIG_PLATFORM_TYPE_imx51 is not set
> +# CONFIG_PLATFORM_TYPE_omap3evm is not set
> +# CONFIG_PLATFORM_TYPE_beagleboard is not set
> +# CONFIG_PLATFORM_TYPE_imx21 is not set
> +# CONFIG_PLATFORM_TYPE_rv_vexpress is not set
> +CONFIG_PLATFORM_TYPE_rpi_a=y
> +# CONFIG_PLATFORM_TYPE_integrator is not set
> +# CONFIG_PLATFORM_TYPE_custom is not set
> +# CONFIG_PLATFORM_TYPE is not set
> +# CONFIG_USE_DROPS_STDDIR is not set
> +# CONFIG_USE_DICE is not set
> +CONFIG_DROPS_STDDIR="/path/to/l4re"
> +CONFIG_DROPS_INSTDIR="/path/to/l4re"
> +CONFIG_BID_COLORED_PHASES=y
> +
> +#
> +# Building
> +#
> +CONFIG_YACC="yacc"
> +CONFIG_LEX="flex"
> +CONFIG_CTAGS="ctags"
> +CONFIG_ETAGS="etags"
> +CONFIG_HAVE_LDSO=y
> +CONFIG_INT_CPP_NAME_SWITCH=y
> +CONFIG_INT_LD_NAME_SWITCH=y
> +# CONFIG_BID_STRIP_PROGS is not set
> +# CONFIG_BID_GCC_OMIT_FP is not set
> +# CONFIG_BID_GENERATE_MAPFILE is not set
> +# CONFIG_BID_BUILD_DOC is not set
> +# CONFIG_RELEASE_MODE is not set
> +CONFIG_MAKECONFS_ADD=""
> ---------------- repos/base-foc/lib/mk/platform_rpi/platform.mk
> ----------------
> new file mode 100644
> index 0000000..2417594
> @@ -0,0 +1,6 @@
> +#
> +# Configuration for L4 build system (for kernel-bindings, sigma0,
> bootstrap).
> +#
> +L4_CONFIG = $(call select_from_repositories,config/rpi.user)
> +
> +include $(REP_DIR)/lib/mk/arm/platform.inc
> ------------------------- repos/base-foc/mk/l4_pkg.mk
> -------------------------
> index 7979db7..54e4ca6 100644
> @@ -22,6 +22,10 @@ ifeq ($(filter-out $(SPECS),arm_v7a),)
>      L4_BUILD_ARCH := arm_armv7a
>  endif
>
> +ifeq ($(filter-out $(SPECS),arm_v6),)
> +    L4_BUILD_ARCH := arm_armv6
> +endif
> +
>  ifeq ($(L4_BUILD_ARCH),)
>  all: l4_build_arch_undefined
>      $(VERBOSE)$(ECHO) "Error: L4_BUILD_ARCH undefined, architecture not
> supported"
> ---------------------- repos/base-foc/mk/spec-foc_rpi.mk
> ----------------------
> new file mode 100644
> index 0000000..77a3726
> @@ -0,0 +1,4 @@
> +SPECS += foc_arm platform_rpi
> +
> +include $(call select_from_repositories,mk/spec-platform_rpi.mk)
> +include $(call select_from_repositories,mk/spec-foc_arm.mk)
> ---------------------------- repos/base-foc/run/env
> ----------------------------
> index 3418e2f..2b8b610 100644
> @@ -119,6 +119,7 @@ proc bin_dir { } {
>      if {[have_spec x86_32]}  { return "[l4_dir]/bin/x86_586" }
>      if {[have_spec x86_64]}  { return "[l4_dir]/bin/amd64_K8" }
>      if {[have_spec arm_v7a]} { return "[l4_dir]/bin/arm_armv7a" }
> +    if {[have_spec arm_v6]} { return "[l4_dir]/bin/arm_armv6" }
>
>      puts stderr "Error: Cannot determine bin directory"
>      exit 1
> -------------------- repos/base-foc/src/core/rpi/target.mk
> --------------------
> new file mode 100644
> index 0000000..90dede6
> @@ -0,0 +1,10 @@
> +include $(PRG_DIR)/../target.inc
> +
> +REQUIRES += arm foc_rpi
> +SRC_CC   += arm/platform_arm.cc
> +INC_DIR  += $(REP_DIR)/src/core/include/arm
> +
> +LD_TEXT_ADDR = 0x800000
> +
> +vpath platform_services.cc $(GEN_CORE_DIR)
> +
> ------------------- repos/base-foc/src/kernel/rpi/target.mk
> -------------------
> new file mode 100644
> index 0000000..966df54
> @@ -0,0 +1,4 @@
> +REQUIRES      = platform_rpi
> +KERNEL_CONFIG = $(REP_DIR)/config/rpi.kernel
> +
> +-include $(PRG_DIR)/../target.inc
>
>
> Best regards
>
> --
> Lic. Reinier Millo Sánchez
> Centro de Estudios de Informática
> Universidad Central "Marta Abreu" de Las Villas
>
> "antes de discutir ... respira;
>   antes de hablar ... escucha;
>  antes de escribir ... piensa;
>   antes de herir ... siente;
>  antes de rendirte ... intenta;
>   antes de morir ... vive"
>
>
>
> ------------------------------------------------------------------------------
> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
> with Interactivity, Sharing, Native Excel Exports, App Integration & more
> Get technology previously reserved for billion-dollar corporations, FREE
>
> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20141123/3a64299b/attachment.html>


More information about the users mailing list