Re: [Qemu-devel] PXA27x processor support (XScale)

2007-02-06 Thread Hetz Ben Hamo

Hi,

Great work!

Only a small question, if you don't mind: After patching QEMU with
your patch, is it possible to run Windows Mobile (2003,2005)? I heard
from quite few people (outside of QEMU mailing list) that would love
to test their WinCE based apps on such an emulator without the need
for MS Visual Studio stuff..

Thanks,
Hetz

On 2/7/07, andrzej zaborowski <[EMAIL PROTECTED]> wrote:

Hi,
  for anybody interested I uploaded a patch containing support for
Intel's PXA270 processor emulation for qemu. The patch is against
current CVS (or 0.9.0) and you can find it at

http://www.zabor.org/balrog/qemu-pxa270-and-more.patch

(450 kB). PXA is a series of embedded processors used in PDAs, mobile
phones and other devices. PXA is an ARM based system-on-chip. 27x is
the newest out of the ones produced by Intel. PXA 25x and 260 devices
can be emulated using the same code. Main additions are:

 - On-chip peripherals: DMA, interrupt controller, GPIOs, sysem
timers, memory manager, clocks manager, power manager, LCD controller,
PCMCIA cards controller, MMC/SD host controller, I2C device, USB host
(OHCI), I2S controller, SSP controller, UARTs, an RTC.

 - NAND memory emulation - should work for all chips supported by
Linux given the ID of the chip to emulate (small or large page).
 - PCMCIA bus with hotplugging (added "info pcmcia" command for
listing sockets and inserted cards).
 - an IBM/hitachi microdrive, reuses existing IDE code adding the
CF-ATA command set.
 - ADS7846 touchscreen controller from Texas Instruments (used in maaany PDAs).
 - Wolfson WM8750 audio codec chip (I2C slave).
 - Maxim MAX ADC chip.
 - Maxim MAX7310 gpio expander chip (I2C slave).
 - SD card emulator (unchanged from the omap support patch)
 - iwMMXt coprocessor support (untested).
 - some bugfixes.

I'm posting this as is because I won't have time to make a final
clean-up and I was asked for it by some persons who want to emulate
pxa270 based devices. I also want to avoid duplicating code. One case
of duplication is the I2C bus, there was a different I2C bus recently
merged in qemu. Our implementation is slightly more detailed (as need
by some I2C hosts) and does some buffering, but is 8-bit only.
(hw/i2c.h should probably be made into a template that implements 8
and 16 bit i2c included two time from vl.h).

Regards,
Andrew


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel




--
Skepticism is the lazy person's default position.
Visit my blog (hebrew) for things that (sometimes) matter:
http://wp.dad-answers.com


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Do you know where can I get the QEMU running on IA64 host

2007-02-06 Thread Long, Kaiwen
All guys, 

 Do you know where can I get the QEMU running on IA64 host~ It
seems that David has opened a branch to run QEMU on IA64 host, but I
cannot find that patch now~

Could you do me a favor? 

 

Thanks

kaiwen

___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] PXA27x processor support (XScale)

2007-02-06 Thread andrzej zaborowski

Hi,
 for anybody interested I uploaded a patch containing support for
Intel's PXA270 processor emulation for qemu. The patch is against
current CVS (or 0.9.0) and you can find it at

http://www.zabor.org/balrog/qemu-pxa270-and-more.patch

(450 kB). PXA is a series of embedded processors used in PDAs, mobile
phones and other devices. PXA is an ARM based system-on-chip. 27x is
the newest out of the ones produced by Intel. PXA 25x and 260 devices
can be emulated using the same code. Main additions are:

- On-chip peripherals: DMA, interrupt controller, GPIOs, sysem
timers, memory manager, clocks manager, power manager, LCD controller,
PCMCIA cards controller, MMC/SD host controller, I2C device, USB host
(OHCI), I2S controller, SSP controller, UARTs, an RTC.

- NAND memory emulation - should work for all chips supported by
Linux given the ID of the chip to emulate (small or large page).
- PCMCIA bus with hotplugging (added "info pcmcia" command for
listing sockets and inserted cards).
- an IBM/hitachi microdrive, reuses existing IDE code adding the
CF-ATA command set.
- ADS7846 touchscreen controller from Texas Instruments (used in maaany PDAs).
- Wolfson WM8750 audio codec chip (I2C slave).
- Maxim MAX ADC chip.
- Maxim MAX7310 gpio expander chip (I2C slave).
- SD card emulator (unchanged from the omap support patch)
- iwMMXt coprocessor support (untested).
- some bugfixes.

I'm posting this as is because I won't have time to make a final
clean-up and I was asked for it by some persons who want to emulate
pxa270 based devices. I also want to avoid duplicating code. One case
of duplication is the I2C bus, there was a different I2C bus recently
merged in qemu. Our implementation is slightly more detailed (as need
by some I2C hosts) and does some buffering, but is 8-bit only.
(hw/i2c.h should probably be made into a template that implements 8
and 16 bit i2c included two time from vl.h).

Regards,
Andrew


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [PATCH] qemu support for S32 and U32 alsa output

2007-02-06 Thread Lonnie Mendez
Forwarding this for a user who is not subscribed.
---

Hi,

My M-Audio soundcard (ice1712) did not play nice with qemu's alsa output
since it only accepted S32_LE. I asked some weirdo who has nothing
better to do at 6:50 AM in the #qemu channel on freenode for help, and
he wrote the attached patch.

I've patched this against CVS and also against 0.8.2 with some manual
code hacking (different line offsets), and hereby kindly request that
someone knowledgeable takes a look at it so it can be committed.

Thanks in advance; the patch is attached.

Regards,

infernix
? .gdb_history
Index: Makefile.target
===
RCS file: /cvsroot/qemu/qemu/Makefile.target,v
retrieving revision 1.144
diff -u -r1.144 Makefile.target
--- Makefile.target	2 Feb 2007 03:13:18 -	1.144
+++ Makefile.target	6 Feb 2007 03:29:32 -
@@ -583,8 +583,8 @@
 include .depend
 endif
 
-ifeq (1, 0)
+ifeq (1, 1)
 audio.o sdlaudio.o dsoundaudio.o ossaudio.o wavaudio.o noaudio.o \
 fmodaudio.o alsaaudio.o mixeng.o sb16.o es1370.o gus.o adlib.o: \
-CFLAGS := $(CFLAGS) -Wall -Werror -W -Wsign-compare
+CFLAGS := $(CFLAGS) -O0 -g # -Wall -Werror -W -Wsign-compare -O0 -g
 endif
Index: audio/alsaaudio.c
===
RCS file: /cvsroot/qemu/qemu/audio/alsaaudio.c,v
retrieving revision 1.7
diff -u -r1.7 alsaaudio.c
--- audio/alsaaudio.c	4 Jul 2006 21:47:22 -	1.7
+++ audio/alsaaudio.c	6 Feb 2007 03:29:32 -
@@ -157,6 +157,12 @@
 case AUD_FMT_U16:
 return SND_PCM_FORMAT_U16_LE;
 
+case AUD_FMT_S32:
+return SND_PCM_FORMAT_S32_LE;
+
+case AUD_FMT_U32:
+return SND_PCM_FORMAT_U32_LE;
+
 default:
 dolog ("Internal logic error: Bad audio format %d\n", fmt);
 #ifdef DEBUG_AUDIO
@@ -199,6 +205,26 @@
 *fmt = AUD_FMT_U16;
 break;
 
+case SND_PCM_FORMAT_S32_LE:
+*endianness = 0;
+*fmt = AUD_FMT_S32;
+break;
+
+case SND_PCM_FORMAT_U32_LE:
+*endianness = 0;
+*fmt = AUD_FMT_U32;
+break;
+
+case SND_PCM_FORMAT_S32_BE:
+*endianness = 1;
+*fmt = AUD_FMT_S32;
+break;
+
+case SND_PCM_FORMAT_U32_BE:
+*endianness = 1;
+*fmt = AUD_FMT_U32;
+break;
+
 default:
 dolog ("Unrecognized audio format %d\n", alsafmt);
 return -1;
Index: audio/audio.c
===
RCS file: /cvsroot/qemu/qemu/audio/audio.c,v
retrieving revision 1.15
diff -u -r1.15 audio.c
--- audio/audio.c	3 Aug 2006 20:39:40 -	1.15
+++ audio/audio.c	6 Feb 2007 03:29:33 -
@@ -166,6 +166,25 @@
 }
 #endif
 
+static inline int audio_bits_to_index (int bits)
+{
+switch (bits) {
+case 8:
+return 0;
+
+case 16:
+return 1;
+
+case 32:
+return 2;
+
+default:
+audio_bug ("bits_to_index", 1);
+AUD_log (NULL, "invalid bits %d\n", bits);
+return 0;
+}
+}
+
 void *audio_calloc (const char *funcname, int nmemb, size_t size)
 {
 int cond;
@@ -227,6 +246,12 @@
 
 case AUD_FMT_S16:
 return "S16";
+
+case AUD_FMT_U32:
+return "U32";
+
+case AUD_FMT_S32:
+return "S32";
 }
 
 dolog ("Bogus audfmt %d returning S16\n", fmt);
@@ -243,6 +268,10 @@
 *defaultp = 0;
 return AUD_FMT_U16;
 }
+else if (!strcasecmp (s, "u32")) {
+*defaultp = 0;
+return AUD_FMT_U32;
+}
 else if (!strcasecmp (s, "s8")) {
 *defaultp = 0;
 return AUD_FMT_S8;
@@ -251,6 +280,10 @@
 *defaultp = 0;
 return AUD_FMT_S16;
 }
+else if (!strcasecmp (s, "s32")) {
+*defaultp = 0;
+return AUD_FMT_S32;
+}
 else {
 dolog ("Bogus audio format `%s' using %s\n",
s, audio_audfmt_to_string (defval));
@@ -538,6 +571,8 @@
 case AUD_FMT_U8:
 case AUD_FMT_S16:
 case AUD_FMT_U16:
+case AUD_FMT_S32:
+case AUD_FMT_U32:
 break;
 default:
 invalid = 1;
@@ -563,6 +598,12 @@
 case AUD_FMT_U16:
 bits = 16;
 break;
+
+case AUD_FMT_S32:
+sign = 1;
+case AUD_FMT_U32:
+bits = 32;
+break;
 }
 return info->freq == as->freq
 && info->nchannels == as->nchannels
@@ -573,7 +614,7 @@
 
 void audio_pcm_init_info (struct audio_pcm_info *info, audsettings_t *as)
 {
-int bits = 8, sign = 0;
+int bits = 8, sign = 0, shift = 0;
 
 switch (as->fmt) {
 case AUD_FMT_S8:
@@ -585,6 +626,14 @@
 sign = 1;
 case AUD_FMT_U16:
 bits = 16;
+shift = 1;
+break;
+
+case AUD_FMT_S32:
+sign = 1;
+case AUD_FMT_U32:
+bits = 32;
+shift = 2;
 break;
 }
 
@@ -592,7 +641,7 @@
 info->bits = bits;
 info->sign = sign;
 info->nchannels = as->nchannels;
-info->shift = (as->nchannels == 2) + (bits == 1

Re: [Qemu-devel][Patch] qemu console.c

2007-02-06 Thread Stefan Weil
Thiemo Seufer schrieb:
> Stefan Weil wrote:
>>> CVSROOT: /sources/qemu
>>> Module name: qemu
>>> Changes by: Thiemo Seufer  07/01/16 23:02:36
>>>
>>> Modified files:
>>> . : console.c
>>>
>>> Log message:
>>> Improved console handling, thanks Stefan Weil.
>> Here are two additional smaller changes for console.c.
>> They fix cursor display at end of line and line wrapping.
>>
>> Please add them to CVS HEAD.
> Something isn't ok with it. Try running e.g. mutt in a emulated
> Linux system, it appears garbled.
>
> Thiemo
I tried. These are my results:

Mutt does not work with ANSI escape sequences.
It needs VT100 emulation or better. Try
TERM=ansi mutt
in any terminal (xterm, Linux VGA text console, ...) - you
will get the same garbled output, so QEMU is compatible :-)

My patch improves QEMU's ANSI emulation
(so please add it to CVS HEAD), but it does not
add VT100 capabilities.

Stefan



___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] Re: [PATCH] Updated bochs bios.bin fixes SYSLINUX hanging

2007-02-06 Thread Ed Swierk

On 2/6/07, Ed Swierk <[EMAIL PROTECTED]> wrote:

The latest bochs bios (bochs-20070105 snapshot) seems to fix the
SYSLINUX hanging issue. The bios.bin is attached.


Oops--this is BIOS-bochs-legacy. BIOS-bochs-latest still breaks SYSLINUX.

--Ed


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [PATCH] Updated bochs bios.bin fixes SYSLINUX hanging

2007-02-06 Thread Ed Swierk

The latest bochs bios (bochs-20070105 snapshot) seems to fix the
SYSLINUX hanging issue. The bios.bin is attached.

--Ed


bios.bin.bz2
Description: BZip2 compressed data
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [Patch] documentation: Change qemu-darwin-* to qemu-* and fix a typo about supported target

2007-02-06 Thread Pierre d'Herbemont


On 6 févr. 07, at 09:51, Phil Krylov wrote:


Hi Pierre,

[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]
[EMAIL PROTECTED]
+target PowerPC on x86: Not working as the ppc commpage can't be  
mapped (yet!)

[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]

Did you mean "PowerPC on PowerPC" in the last line?


Yes I do. Thanks Phil :)

BTW, last patch was the wrong diff.

ChangeLog:
Change qemu-darwin-* to qemu-*
Fix a typo about supported target (reported by Phil Krylov).

Index: qemu-doc.texi
===
RCS file: /sources/qemu/qemu/qemu-doc.texi,v
retrieving revision 1.128
diff -u -r1.128 qemu-doc.texi
--- qemu-doc.texi   5 Feb 2007 19:42:07 -   1.128
+++ qemu-doc.texi   6 Feb 2007 10:34:01 -
@@ -1747,7 +1747,7 @@
 libraries:
 
 @example 
-qemu-i386 -L / /bin/ls
+qemu-linux-i386 -L / /bin/ls
 @end example
 
 @code{-L /} tells that the x86 dynamic linker must be searched with a
@@ -1870,7 +1870,7 @@
 @item
 target PowerPC on x86: Not working as the ppc commpage can't be mapped (yet!)
 @item
-target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]
+target PowerPC on PowerPC: Most apps (Cocoa and Carbon too) works. [1]
 @item
 target x86 on PowerPC: most utilities work. Cocoa and Carbon apps are not yet 
supported.
 @end itemize
@@ -1891,20 +1891,20 @@
 libraries:
 
 @example 
-qemu-darwin-i386 /bin/ls
+qemu-i386 /bin/ls
 @end example
 
 or to run the ppc version of the executable:
 
 @example 
-qemu-darwin-ppc /bin/ls
+qemu-ppc /bin/ls
 @end example
 
 @item On ppc, you'll have to tell qemu where your x86 libraries (and dynamic 
linker)
 are installed:
 
 @example 
-qemu-darwin-i386 -L /opt/x86_root/ /bin/ls
+qemu-i386 -L /opt/x86_root/ /bin/ls
 @end example
 
 @code{-L /opt/x86_root/} tells that the dynamic linker (dyld) path is in
___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


Re: [Qemu-devel] [Patch] documentation: Change qemu-darwin-* to qemu-*

2007-02-06 Thread Phil Krylov

Hi Pierre,

[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]
[EMAIL PROTECTED]
+target PowerPC on x86: Not working as the ppc commpage can't be mapped (yet!)
[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]

Did you mean "PowerPC on PowerPC" in the last line?

-- Ph.


___
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel


[Qemu-devel] [Patch] documentation: Change qemu-darwin-* to qemu-*

2007-02-06 Thread Pierre d'Herbemont

Hi,

This patch fixes a typo in the doc.

Pierre.
ChangeLog:
Change qemu-darwin-* to qemu-*
Index: qemu-doc.texi
===
RCS file: /sources/qemu/qemu/qemu-doc.texi,v
retrieving revision 1.126
diff -u -r1.126 qemu-doc.texi
--- qemu-doc.texi   2 Feb 2007 00:37:56 -   1.126
+++ qemu-doc.texi   3 Feb 2007 17:11:57 -
@@ -25,7 +25,7 @@
 * Installation::
 * QEMU PC System emulator::
 * QEMU System emulator for non PC targets::
-* QEMU Linux User space emulator::
+* QEMU User space emulator::
 * compilation:: Compilation from the sources
 * Index::
 @end menu
@@ -57,8 +57,8 @@
 without rebooting the PC or to debug system code.
 
 @item 
-User mode emulation (Linux host only). In this mode, QEMU can launch
-Linux processes compiled for one CPU on another CPU. It can be used to
+User mode emulation. In this mode, QEMU can launch
+processes compiled for one CPU on another CPU. It can be used to
 launch the Wine Windows API emulator (@url{http://www.winehq.org}) or
 to ease cross-compilation and cross-debugging.
 
@@ -1704,8 +1704,29 @@
 A Linux 2.6 test image is available on the QEMU web site. More
 information is available in the QEMU mailing-list archive.
 
[EMAIL PROTECTED] QEMU Linux User space emulator 
[EMAIL PROTECTED] QEMU Linux User space emulator 
[EMAIL PROTECTED] QEMU User space emulator 
[EMAIL PROTECTED] QEMU User space emulator 
+
[EMAIL PROTECTED]
+* Supported Operating Systems ::
+* Linux User space emulator::
+* Mac OS X/Darwin User space emulator ::
[EMAIL PROTECTED] menu
+
[EMAIL PROTECTED] Supported Operating Systems
[EMAIL PROTECTED] Supported Operating Systems
+
+The following OS are supported in user space emulation:
+
[EMAIL PROTECTED] @minus
[EMAIL PROTECTED]
+Linux (refered as qemu-linux-user)
[EMAIL PROTECTED]
+Mac OS X/Darwin (refered as qemu-darwin-user)
[EMAIL PROTECTED] itemize
+
[EMAIL PROTECTED] Linux User space emulator
[EMAIL PROTECTED] Linux User space emulator
 
 @menu
 * Quick Start::
@@ -1715,7 +1736,7 @@
 @end menu
 
 @node Quick Start
[EMAIL PROTECTED] Quick Start
[EMAIL PROTECTED] Quick Start
 
 In order to launch a Linux process, QEMU needs the process executable
 itself and all the target (x86) dynamic libraries used by it. 
@@ -1726,7 +1747,7 @@
 libraries:
 
 @example 
-qemu-i386 -L / /bin/ls
+qemu-linux-i386 -L / /bin/ls
 @end example
 
 @code{-L /} tells that the x86 dynamic linker must be searched with a
@@ -1765,7 +1786,7 @@
 @end itemize
 
 @node Wine launch
[EMAIL PROTECTED] Wine launch
[EMAIL PROTECTED] Wine launch
 
 @itemize
 
@@ -1794,7 +1815,7 @@
 @end itemize
 
 @node Command line options
[EMAIL PROTECTED] Command line options
[EMAIL PROTECTED] Command line options
 
 @example
 usage: qemu-i386 [-h] [-d] [-L path] [-s size] program [arguments...]
@@ -1819,7 +1840,7 @@
 @end table
 
 @node Other binaries
[EMAIL PROTECTED] Other binaries
[EMAIL PROTECTED] Other binaries
 
 @command{qemu-arm} is also capable of running ARM "Angel" semihosted ELF
 binaries (as implemented by the arm-elf and arm-eabi Newlib/GDB
@@ -1831,6 +1852,91 @@
 
 The binary format is detected automatically.
 
[EMAIL PROTECTED] Mac OS X/Darwin User space emulator
[EMAIL PROTECTED] Mac OS X/Darwin User space emulator
+
[EMAIL PROTECTED]
+* Mac OS X/Darwin Status::
+* Mac OS X/Darwin Quick Start::
+* Mac OS X/Darwin Command line options::
[EMAIL PROTECTED] menu
+
[EMAIL PROTECTED] Mac OS X/Darwin Status
[EMAIL PROTECTED] Mac OS X/Darwin Status
+
[EMAIL PROTECTED] @minus
[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]
[EMAIL PROTECTED]
+target PowerPC on x86: Not working as the ppc commpage can't be mapped (yet!)
[EMAIL PROTECTED]
+target x86 on x86: Most apps (Cocoa and Carbon too) works. [1]
[EMAIL PROTECTED]
+target x86 on PowerPC: most utilities work. Cocoa and Carbon apps are not yet 
supported.
[EMAIL PROTECTED] itemize
+
+[1] If you're host commpage can be executed by qemu.
+
[EMAIL PROTECTED] Mac OS X/Darwin Quick Start
[EMAIL PROTECTED] Quick Start
+
+In order to launch a Mac OS X/Darwin process, QEMU needs the process executable
+itself and all the target dynamic libraries used by it. If you don't have the 
FAT
+libraries (you're running Mac OS X/ppc) you'll need to obtain it from a Mac OS 
X
+CD or compile them by hand.
+
[EMAIL PROTECTED]
+
[EMAIL PROTECTED] On x86, you can just try to launch any process by using the 
native
+libraries:
+
[EMAIL PROTECTED] 
+qemu-darwin-i386 /bin/ls
[EMAIL PROTECTED] example
+
+or to run the ppc version of the executable:
+
[EMAIL PROTECTED] 
+qemu-darwin-ppc /bin/ls
[EMAIL PROTECTED] example
+
[EMAIL PROTECTED] On ppc, you'll have to tell qemu where your x86 libraries 
(and dynamic linker)
+are installed:
+
[EMAIL PROTECTED] 
+qemu-darwin-i386 -L /opt/x86_root/ /bin/ls
[EMAIL PROTECTED] example
+
[EMAIL PROTECTED] /opt/x86_root/} tells that the dynamic linker (dyld) path is 
in
[EMAIL PROTECTED]/opt/x86_root/usr/bin/dyld}.
+
[EMAIL PRO