From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1G8g4v-0003po-UJ for qemu-devel@nongnu.org; Thu, 03 Aug 2006 12:29:45 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1G8g4t-0003pU-FZ for qemu-devel@nongnu.org; Thu, 03 Aug 2006 12:29:44 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1G8g4t-0003pR-9r for qemu-devel@nongnu.org; Thu, 03 Aug 2006 12:29:43 -0400 Received: from [64.233.184.235] (helo=wr-out-0506.google.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1G8g8G-00038B-Dh for qemu-devel@nongnu.org; Thu, 03 Aug 2006 12:33:12 -0400 Received: by wr-out-0506.google.com with SMTP id 67so529130wri for ; Thu, 03 Aug 2006 09:29:42 -0700 (PDT) Message-ID: Date: Thu, 3 Aug 2006 18:29:41 +0200 From: "Alessandro Corradi" MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_12916_4726353.1154622581993" Subject: [Qemu-devel] Who call I/O cpu_in*/cpu_out*? Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel ------=_Part_12916_4726353.1154622581993 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello, This is what I understand: In vl.c code: -In qemu initialization will be create and initialize a table in which there are I/O read/write function corresponding to I/O address. -When emulated devices are inizialited they register IO function in this table, in this way it can be called when an instruction want to access at this address-device right? -These function are called by cpu_write{b|w|l} in case of byte/word/long. I suppose when there is an instruction op-code regards IO there is a mechanism that calls these function. Can you say me where it does this? Thank you Ale ------=_Part_12916_4726353.1154622581993 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello,
This is what I understand:
In vl.c code:
-In qemu initialization will be create and initialize a table in which there are I/O read/write function corresponding to I/O address.
-When emulated devices are inizialited they register IO function in this table, in this way it can be called when an instruction want to access at this address-device right?
-These function are called by cpu_write{b|w|l} in case of byte/word/long.

I suppose when there is an instruction op-code regards IO there is a mechanism that calls these function. Can you say me where it does this?

Thank you

Ale
------=_Part_12916_4726353.1154622581993--