This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
ixp4xx pci i/o cycle fix
- From: Mark Salter <msalter at redhat dot com>
- To: ecos-patches at ecos dot sourceware dot org
- Date: Mon, 27 Sep 2004 14:48:36 -0400
- Subject: ixp4xx pci i/o cycle fix
- Organization: Red Hat Inc.
Fix PCI I/O cycles on IXP4xx.
--Mark
Index: hal/arm/xscale/ixp425/current/ChangeLog
===================================================================
RCS file:
/cvs/ecos/ecos/packages/hal/arm/xscale/ixp425/current/ChangeLog,v
retrieving revision 1.7
diff -u -p -5 -r1.7 ChangeLog
--- hal/arm/xscale/ixp425/current/ChangeLog 2 Sep 2004 20:17:46
-0000 1.7
+++ hal/arm/xscale/ixp425/current/ChangeLog 27 Sep 2004 18:34:19
-0000
@@ -1,5 +1,9 @@
+2004-09-27 Mark Salter <msalter@redhat.com>
+
+ * src/ixp425_pci.c (pci_config): Fix offset handling.
+
2004-09-02 Mark Salter <msalter@redhat.com>
* include/var_io.h: Add externs for hal_flash_{read,program}.
* include/hal_ixp425.h: Add more register related defines.
* cdl/hal_arm_xscale_ixp425.cdl: Add little-endian support.
Index: hal/arm/xscale/ixp425/current/src/ixp425_pci.c
===================================================================
RCS file:
/cvs/ecos/ecos/packages/hal/arm/xscale/ixp425/current/src/ixp425_pci.c,v
retrieving revision 1.3
diff -u -p -5 -r1.3 ixp425_pci.c
--- hal/arm/xscale/ixp425/current/src/ixp425_pci.c 2 Sep 2004
20:17:48 -0000 1.3
+++ hal/arm/xscale/ixp425/current/src/ixp425_pci.c 27 Sep 2004
18:34:19 -0000
@@ -6,11 +6,11 @@
//
//==========================================================================
//####ECOSGPLCOPYRIGHTBEGIN####
// -------------------------------------------
// This file is part of eCos, the Embedded Configurable Operating
System.
-// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Red Hat, Inc.
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
//
// eCos is free software; you can redistribute it and/or modify it
under
// the terms of the GNU General Public License as published by the Free
// Software Foundation; either version 2 or (at your option) any later
version.
//
@@ -142,11 +142,11 @@ pci_config(cyg_uint32 bus, cyg_uint32 de
// code will not call this routine for bus 0, devfn 0 as that is
the
// device address used by the IXP425 PCI device. When commands
other
// than config read/write are desired, bus 0, devfn 0 is used to
// indicate that the offset should be used as the address.
if (devfn == 0) {
- *IXP425_PCI_NP_AD = offset & ~3;
+ *IXP425_PCI_NP_AD = offset;
} else {
// type 0
//
// Take care with device number as we use device 0 to
indicate
// the IXP425 itself. This code makes device 1-21 externally