-
Manually installing wsman(1)
For convenience and to some degree also necessity most of our x86-based test machines feature AMT to power-cycle the system and also gain serial console access via SOL. On recent systems the controlling part is done via WS-MAN, for which a package is not always readily available on Linux distributions. The following post gives short instructions on how to build it manually and illustrates one or the other pitfall. Continue...
-
Getting Fujitsu U7411 up and running: Network Boot
Earlier this year, the Genode team met the challenge to bring our OS to recent Intel Gen11 hardware, more precisely we faced the task to fully enable the Fujitsu LIFEBOOK U7411. But first things first: How to prepare the notebook for remote booting without sufficient legacy BIOS support? Continue...
-
Pine fun - Display
Having switched the development workflow from the Pine-A64-LTS board to the real deal - the PinePhone - in the previous article, it is time to turn our attention to the arguably most challenging parts of the hardware, namely the display subsystem. Continue...
-
Pine fun - Networking
This article walks through the challenge of porting a network driver from the Linux kernel to Genode. It thereby exemplifies Genode's device-driver environment approach for the reuse of unmodified Linux kernel code, touches crucial technicalities of the Linux kernel, and provides practical clues. Continue...
-
Linux device driver ports - Choose compilation units
In my first blog post of this series, I've described the motivation to break new grounds in porting Linux drivers to Genode. Moreover, you've seen how to re-use the headers and configuration of a pre-built Linux kernel. In the last blog post, we continued our journey with a new helper tool to generate missing Linux kernel function definitions automatically. This time I'll continue with how to choose the absolutely necessary compilation units for a given driver resp. subsystem. Continue...
-
Pine fun - Pruning device trees
We briefly touched the treasure trove called device trees in the previous article. To leverage the wealth of information for the development and porting of Genode device drivers, this article introduces a handy new tool set. Continue...
-
Pine fun - Taking Linux out for a Walk
In preparation of the porting of drivers from Linux to Genode, we have to gather knowledge about the drivers' natural habitat. This article goes through the steps of building a custom Linux system that is tailored to a driver of our choice. Continue...
-
Troublesome guest additions
On my journey towards transitioning to Sculpt as a day-to-day OS, I already desribed how to access an existing Linux installation in my previous article. Since I recently struggled with installing the VirtualBox Guest Additions, I want to share my findings with a short follow up article. Continue...
-
Starting an existing Linux installation from Sculpt
In the last years, I've had an on-and-off relationship with Genode mostly because other commitments kept me from spending time with the framework. Although I was keen on using Sculpt as a day-to-day OS, I didn't manage to make a smooth transition. Initially, my idea was to use my existing Linux system and install Sculpt in parallel. Ideally, I would be able to start my existing Linux system in Virtualbox on Sculpt. My first efforts were stalled by some EFI boot issues and due to a lack of time this idea slumbered for about two years...until recently. Continue...
-
Linux device driver ports - Generate dummy function definitions
In my last blog post I've described the motivation to break new grounds in porting Linux drivers to Genode. Moreover, you've seen how to re-use the headers and configuration of a pre-built Linux kernel. This time we'll continue by invoking the very first initialization routines. Therefore, a new little helper tool gets introduced to generate missing Linux kernel function definitions automatically. Continue...
-
Linux device driver ports - Breaking new ground
In my following blog post(s) I want to elaborate on recent attemtps to renew and enhance the way Linux device drivers are ported to Genode. This is highly experimental work. So be warned if you try to follow the same approach: it hasn't proved its worth yet. But first let me explain why to break new grounds at all. Continue...
-
Warming up for some Pine fun
I recently got my hands on a PinePhone along with a Pine64 board and have the aspiration to bring Sculpt OS to this platform. This is a very welcome opportunity to document the process of such a porting effort. Continue...
-
Streaming Android to Genode using Scrcpy
In this post I report about the work of bringing Scrcpy to Genode. Additionally, a short video demonstrates the outcome of the undertaking. Continue...
-
An Android VM for ARMv8 (update)
This is a follow up on the current state of the An Android VM for ARMv8 line of work. The article explained how to build Android from source and how to execute Android as a virtual machine on Genode. We were able to boot Android successfully but still had issues with the camera and the audio devices. Continue...
-
An Android VM for ARMv8
In my last article I described how to build a Linux image that can be executed by Genode's VMM on i.MX8 platforms. With this article we take things to the next level by creating and executing an unmodified Android 10 VM on the i.MX 8M EVK SoC. Continue...
-
Building a Linux VM image for ARMv8
This brief article summarizes the steps necessary to build a runnable Linux kernel and initrd disk image that can be executed on top of Genode's custom VMM for i.MX8 platforms. Continue...
-
Sculpt OS on HP EliteBook 840 G5
A few weeks ago, I got hold of a brand-new HP EliteBook and was eager to find out how Sculpt OS may do on it. The specs promised a smooth ride but as always I had to face some hidden obstacles. Continue...
-
Debugging complex software stacks on Genode Linux
When dealing with large and especially ported software stacks on Genode, sophisticated debugging facilities become a must have. One way to achieve this is to develop or port your software stacks on Genode Linux and take advantage of the GNU Debugger (GDB). Of course this is not possible for low level software, like device driver or kernel, but in general useful for anything that does not access hardware directly. In this article I will describe a hands on experience example on how to debug Java using GDB. Continue...
-
Getting started with Genode network developments
Yesterday afternoon I had to take care of duties that kept me away from the office, so motivated by a question on the mailing list last week, I decided to write down some handy tips related to Genode developments and networking. Continue...
-
How to prepare an x86 notebook for debugging
For my first article on Genodians, I recorded my preparation steps to enable a recent notebook model for developments including the preservation of the OEM Windows installation, remote power control, and serial-over-lan logging. Continue...