From fc1005c7eed5cfee8eeb4b8026d31155d4e3c80f Mon Sep 17 00:00:00 2001 From: Stefan Kalkowski Date: Mon, 21 Oct 2013 15:52:03 +0200 Subject: [PATCH] foc: re-dimension UTCB area in core (fixes #927) Take the whole UTCB area out of core's region map to circumvent mapping errors. With this fix, the HDMI quirks are getting unnecessary. --- base-foc/src/core/platform.cc | 2 +- os/src/drivers/framebuffer/exynos5/driver.cc | 5 ---- .../framebuffer/exynos5/foc_usb/quirks.cc | 23 ------------------- os/src/drivers/framebuffer/exynos5/quirks.cc | 19 --------------- os/src/drivers/framebuffer/exynos5/target.mk | 12 ---------- 5 files changed, 1 insertion(+), 60 deletions(-) delete mode 100644 os/src/drivers/framebuffer/exynos5/foc_usb/quirks.cc delete mode 100644 os/src/drivers/framebuffer/exynos5/quirks.cc diff --git a/base-foc/src/core/platform.cc b/base-foc/src/core/platform.cc index 2a6acfbd18..3ae6053439 100644 --- a/base-foc/src/core/platform.cc +++ b/base-foc/src/core/platform.cc @@ -388,7 +388,7 @@ void Platform::_setup_basics() Native_config::context_area_virtual_size()); /* preserve utcb- area in core's virtual address space */ - _region_alloc.remove_range((addr_t)l4_utcb(), L4_PAGESIZE); + _region_alloc.remove_range((addr_t)l4_utcb(), L4_PAGESIZE * 16); /* I/O memory could be the whole user address space */ /* FIXME if the kernel helps to find out max address - use info here */ diff --git a/os/src/drivers/framebuffer/exynos5/driver.cc b/os/src/drivers/framebuffer/exynos5/driver.cc index 9c32aa37eb..4e72d508b6 100644 --- a/os/src/drivers/framebuffer/exynos5/driver.cc +++ b/os/src/drivers/framebuffer/exynos5/driver.cc @@ -1107,14 +1107,9 @@ static Hdmi * hdmi() ** Framebuffer::Driver ** *************************/ -void prepare_fb_driver_init(Mmio::Delayer * const d); - int Framebuffer::Driver::init_drv(size_t width, size_t height, Format format, Output output, addr_t fb_phys) { - /* FIXME: hook for scenario/platform dependent quirks */ - prepare_fb_driver_init(delayer()); - _fb_width = width; _fb_height = height; _fb_format = format; diff --git a/os/src/drivers/framebuffer/exynos5/foc_usb/quirks.cc b/os/src/drivers/framebuffer/exynos5/foc_usb/quirks.cc deleted file mode 100644 index 5558936b7f..0000000000 --- a/os/src/drivers/framebuffer/exynos5/foc_usb/quirks.cc +++ /dev/null @@ -1,23 +0,0 @@ -/* - * \brief Framebuffer driver quirks for FOC with USB - * \author Martin Stein - * \date 2013-08-09 - */ - -/* - * 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. - */ - -/* Genode includes */ -#include - -using namespace Genode; - -void prepare_fb_driver_init(Mmio::Delayer * const d) -{ - /* FIXME: on Fiasco.OC USB HID gets stuck if HDMI starts simulatnously */ - d->usleep(1000000); -} diff --git a/os/src/drivers/framebuffer/exynos5/quirks.cc b/os/src/drivers/framebuffer/exynos5/quirks.cc deleted file mode 100644 index 17e143d604..0000000000 --- a/os/src/drivers/framebuffer/exynos5/quirks.cc +++ /dev/null @@ -1,19 +0,0 @@ -/* - * \brief Dummies for framebuffer-driver quirks - * \author Martin Stein - * \date 2013-08-09 - */ - -/* - * 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. - */ - -/* Genode includes */ -#include - -using namespace Genode; - -void prepare_fb_driver_init(Mmio::Delayer * const) { } diff --git a/os/src/drivers/framebuffer/exynos5/target.mk b/os/src/drivers/framebuffer/exynos5/target.mk index 3fd0e1c5e7..f047dcf905 100644 --- a/os/src/drivers/framebuffer/exynos5/target.mk +++ b/os/src/drivers/framebuffer/exynos5/target.mk @@ -1,17 +1,5 @@ TARGET = fb_drv REQUIRES = exynos5 SRC_CC += main.cc driver.cc -SRC_CC += quirks.cc LIBS += base config INC_DIR += $(PRG_DIR) - -ifneq ($(filter foc_arm, $(SPECS)),) -ifneq ($(filter usb, $(SPECS)),) -SPECS += exynos5_fb_foc_usb_quirk -endif -endif -ifneq ($(filter exynos5_fb_foc_usb_quirk, $(SPECS)),) -vpath quirks.cc $(PRG_DIR)/foc_usb -else -vpath quirks.cc $(PRG_DIR) -endif