From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LpMPN-0005Jz-3c for qemu-devel@nongnu.org; Thu, 02 Apr 2009 08:52:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LpMPI-0005I9-By for qemu-devel@nongnu.org; Thu, 02 Apr 2009 08:52:36 -0400 Received: from [199.232.76.173] (port=45584 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LpMPI-0005I4-8b for qemu-devel@nongnu.org; Thu, 02 Apr 2009 08:52:32 -0400 Received: from hartman.uits.indiana.edu ([129.79.1.194]:46685) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1LpMPH-000445-SO for qemu-devel@nongnu.org; Thu, 02 Apr 2009 08:52:32 -0400 Received: from mail-relay.iu.edu (burns.uits.indiana.edu [129.79.1.202]) by hartman.uits.indiana.edu (8.14.2/8.13.8/IU Messaging Team) with ESMTP id n32CqRvJ014699 for ; Thu, 2 Apr 2009 08:52:27 -0400 Received: from [129.79.35.119] (nibbler.dlib.indiana.edu [129.79.35.119]) (authenticated bits=0) by mail-relay.iu.edu (8.14.2/8.13.8/IU Messaging Team Submission) with ESMTP id n32CqQSZ022002 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 2 Apr 2009 08:52:27 -0400 From: Brian Wheeler Content-Type: text/plain Date: Thu, 02 Apr 2009 08:52:26 -0400 Message-Id: <1238676746.18745.2.camel@nibbler.dlib.indiana.edu> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] PATCH: Longword read/write to eepro100's eeprom 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 It looks like the alpha-softmmu target tries to read/write the eeprom using longword addressing. This patch catches that case and redirects the reads/writes to the eeprom. Signed-off-by: Brian Wheeler --- qemu/hw/eepro100.c 2009-03-25 15:00:23.000000000 -0400 +++ qemu-alpha-20090330/hw/eepro100.c 2009-04-02 08:49:07.000000000 -0400 @@ -1209,6 +1205,10 @@ case SCBCtrlMDI: val = eepro100_read_mdi(s); break; + case SCBflash: + val = eepro100_read_eeprom(s); + logout("reading word from eeprom via longword: %04x\n", val); + break; default: logout("addr=%s val=0x%08x\n", regname(addr), val); missing("unknown longword read"); @@ -1299,6 +1299,11 @@ case SCBCtrlMDI: eepro100_write_mdi(s, val); break; + case SCBflash: + logout("writing word %04x to eeprom via longword.\n", val); + val = val >> 16; + eepro100_write_eeprom(s->eeprom, val); + break; default: logout("addr=%s val=0x%08x\n", regname(addr), val); missing("unknown longword write");