+2005-09-21 Martin Mares <mj@ucw.cz>
+
+ * Released as 2.2.0.
+
+ * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
+ 64-bit addresses, they are now always supported.
+
+ * lspci.c (show_bases): Corrected printing of 64-bit addresses
+ in bus-centric mode.
+
+ * lib/configure: Enable 64-bit addresses on all Linux systems.
+
+ * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
+ are shorter.
+
2005-09-11 Martin Mares <mj@ucw.cz>
* Released as 2.1.99-test11.
OPT=-O2
CFLAGS=$(OPT) -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -Winline
-VERSION=2.1.99-test11
-DATE=2005-09-11
+VERSION=2.2.0
+DATE=2005-09-21
PREFIX=/usr/local
SBINDIR=$(PREFIX)/sbin
echo >>$c '#define PCI_HAVE_PM_INTEL_CONF'
ok=1
;;
- alpha|ia64|sparc|sparc64|ppc|ppc64|x86_64)
- echo >>$c '#define PCI_HAVE_64BIT_ADDRESS'
- ;;
esac
+ echo >>$c '#define PCI_HAVE_64BIT_ADDRESS'
;;
sunos)
case $cpu in
break;
if (sscanf(buf, "%llx %llx", &start, &end) != 2)
a->error("Syntax error in %s", namebuf);
- if (start != (unsigned long long)(pciaddr_t) start ||
- end != (unsigned long long)(pciaddr_t) end)
- {
- a->warning("Resource %d in %s has a 64-bit address, ignoring", i, namebuf);
- start = end = 0;
- }
if (start)
size = end - start + 1;
else
/*
* The PCI Library -- Types and Format Strings
*
- * Copyright (c) 1997--2004 Martin Mares <mj@ucw.cz>
+ * Copyright (c) 1997--2005 Martin Mares <mj@ucw.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#ifdef PCI_HAVE_64BIT_ADDRESS
typedef u64 pciaddr_t;
-#define PCIADDR_T_FMT "%016" PCI_U64_FMT "x"
+#define PCIADDR_T_FMT "%08" PCI_U64_FMT "x"
#define PCIADDR_PORT_FMT "%04" PCI_U64_FMT "x"
#else
typedef u32 pciaddr_t;
z = get_conf_long(d, PCI_BASE_ADDRESS_0 + 4*i);
if (buscentric_view)
{
+ u32 y = a & 0xffffffff;
if (a || z)
- printf("%08x" PCIADDR_T_FMT, z, a);
+ printf("%08x%08x", z, y);
else
printf("<unassigned>");
done = 1;