From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IYjPW-0005N3-Pb for qemu-devel@nongnu.org; Fri, 21 Sep 2007 10:23:14 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IYjPP-0005Mq-92 for qemu-devel@nongnu.org; Fri, 21 Sep 2007 10:23:14 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IYjPP-0005Mn-2F for qemu-devel@nongnu.org; Fri, 21 Sep 2007 10:23:07 -0400 Received: from pop-savannah.atl.sa.earthlink.net ([207.69.195.69]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IYjPM-0000VR-C4 for qemu-devel@nongnu.org; Fri, 21 Sep 2007 10:23:06 -0400 Received: from user-142h2k8.cable.mindspring.com ([72.40.138.136] helo=earthlink.net) by pop-savannah.atl.sa.earthlink.net with esmtp (Exim 3.36 #1) id 1IYjOk-00078G-00 for qemu-devel@nongnu.org; Fri, 21 Sep 2007 10:22:26 -0400 Message-ID: <46F3D3A1.1040300@earthlink.net> Date: Fri, 21 Sep 2007 10:22:25 -0400 From: Robert Reif MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] sparc32 counter/timer issues 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@nongnu.org I'm trying to run a real ss10 openboot prom image rather than the supplied prom image and found some issues with the way counters and timers are implemented. It appears that the processor and system counter/timers are not independent. The system config register actually configures the processor counter/timers and the config register is actually a bit mask of the counter/timer to configure. 1, 2, 4, and 8 are used to as config values for each processor counter/timer and 0xf is used for setting all of them. This isn't apparent in the slaveio documentation because it is for a single cpu only. Because the system config register configures the processor timers, it needs access to all the processor timers (or the processor timers need access to the system timer). This isn't how it's currently implemented.