ds18s20: Add onewire thermal sensor

Support for a dallas/maxim onewire sensor, enought of it to
fool linux's w1-gpio driver

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add main header file

Header file containing most of the base addresses and IO registers
needed for the Freescale mxs/imx23 SoC emumation.
Also contains a generic helper to implement the SET/AND/OR/XOR trick
shared by pretty much all of the IO blocks on this SoC

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs: Add CONFIG_MXS to the arm-softmmu config

Allows selective compilation of the MXS bits

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add uart driver

Prototype driver for the mxs/imx23 uart IO block. This has no
real 'uart' functional code, apart from letting itself be
initialized by linux without generating a timeout error.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add DMA driver

This driver works sufficiently well that linux can use it to access
the SD card using the SD->DMA->SSI->SD. It hasn't been tested for
much else.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add the interrupt collector

Implements the interrupt collector IO block

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add digctl driver

This implements just enough of the digctl IO block to allow
linux to believe it's running on (currently only) an imx23.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Implements the pin mux, GPIOs

Implements the pinctrl and GPIO block for the imx23
It handles GPIO output, and GPIO input from qemu translated
into pin values and interrupts, if appropriate.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add SSP/SPI driver

This implements the SSP port(s) of the mxs. Currently hardcoded for
the SD card interface, but as TODO it could rather easily be made
to be generic and support 'generic' SPI too.
It is geared toward working with DMA, as the linux drivers uses it that
way.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add the RTC block

Support for the RTC IO block on the imx23, enough to return
a valid date and make guest linux happy.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add the timers

Support for the timer IO block of the mxs/imx23. Does not support
any of the fancy function, just the 32khz based timers used by
linux.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Add the USB driver

Add the USB IO block, and the USB PHY IO block. This just wraps
an ehci instance, and support some of the 'extra' mxs registers

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Main core instantiation and minor IO blocks

This adds support for creating an imx23 instance. This also contains
some of the more minor IO blocks, and a 'catchall' driver that helps
debugging access to undocumented IO registers.
Currently the instance can boot a linux kernel, but does not support
booting from the 'special' signed Freescale binary blobs.

Signed-off-by: Michel Pollet <buserror@gmail.com>
mxs/imx23: Adds support for an Olinuxino board

Adds support for creating a basic imx23 dev board from Olimex, with
a few peripherals, a bitbang i2c bus with a RTC attached, a DS18S20
thermal sensor, and a rather crude 'relay' that increases/decreases
the thermal sensor temperature.

Basicaly, it's a complete emulation of the hardware used for my real
life boiler controller system; but it's a nice starting point for
any other imx233 board prototyping.
https://plus.google.com/111387094029238541867/posts/Smwc7yFK3Vk

Signed-off-by: Michel Pollet <buserror@gmail.com>