From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: paravirt driver development Date: Mon, 16 Dec 2013 10:38:48 +0000 Message-ID: <1387190328.20076.57.camel@kazak.uk.xensource.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Carl Patenaude Poulin Cc: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Sun, 2013-12-15 at 12:49 -0500, Carl Patenaude Poulin wrote: > I am currently developing an experimental operating system, and I > would like to target Xen paravirtualization as a first "hardware" > target. I googled a bit and I can't seem to find specifications or a > manual for driver authorship targeting paravirt. Is there such a > resource? For now all I need to know is how to handle I/O done with a > keyboard and console (TTY). You could refer to extras/mini-os for a BSD licensed example. Otherwise there is mostly just the xen/include/public/io headers (some of these are better commented than others). For keyboard/console you want xen//include/public/io/console.h and not kbdif.h/pvfb.h (which is for pv framebuffer and the associated keyboard/mouse). Sadly console.h is one of the lesser documented examples -- but on the plus side it's one of the simpler ones since it is just two rings of characters, one in each direction. Depending on your licensing constraints there are also examples in Linux and the BSDs. "The Definitive Guide to the Xen Hypervisor" (by David Chisnall) looks like it might cover this topic as well. If having got it working you were minded to improve the docs in console.h I, and the next guy, would be very grateful! Ian.