Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Jul 2010 18:59:05 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r209635 - head/sys/x86/isa
Message-ID:  <201007011859.o61Ix558056163@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Thu Jul  1 18:59:05 2010
New Revision: 209635
URL: http://svn.freebsd.org/changeset/base/209635

Log:
  Allow attimer to be hinted at ISA if not reported by ISA PNP or ACPI.
  Rephrase respective atrtc code same way to be more readable.

Modified:
  head/sys/x86/isa/atrtc.c
  head/sys/x86/isa/clock.c

Modified: head/sys/x86/isa/atrtc.c
==============================================================================
--- head/sys/x86/isa/atrtc.c	Thu Jul  1 18:51:18 2010	(r209634)
+++ head/sys/x86/isa/atrtc.c	Thu Jul  1 18:59:05 2010	(r209635)
@@ -231,13 +231,13 @@ atrtc_probe(device_t dev)
 {
 	int result;
 	
-	device_set_desc(dev, "AT Real Time Clock");
 	result = ISA_PNP_PROBE(device_get_parent(dev), dev, atrtc_ids);
-	/* ENXIO if wrong PnP-ID, ENOENT ifno PnP-ID, zero if good PnP-iD */
-	if (result != ENOENT)
-		return(result);
-	/* All PC's have an RTC, and we're hosed without it, so... */
-	return (BUS_PROBE_LOW_PRIORITY);
+	/* ENOENT means no PnP-ID, device is hinted. */
+	if (result == ENOENT) {
+		device_set_desc(dev, "AT realtime clock");
+		return (BUS_PROBE_LOW_PRIORITY);
+	}
+	return (result);
 }
 
 static int

Modified: head/sys/x86/isa/clock.c
==============================================================================
--- head/sys/x86/isa/clock.c	Thu Jul  1 18:51:18 2010	(r209634)
+++ head/sys/x86/isa/clock.c	Thu Jul  1 18:59:05 2010	(r209635)
@@ -511,7 +511,12 @@ attimer_probe(device_t dev)
 	int result;
 	
 	result = ISA_PNP_PROBE(device_get_parent(dev), dev, attimer_ids);
-	return(result);
+	/* ENOENT means no PnP-ID, device is hinted. */
+	if (result == ENOENT) {
+		device_set_desc(dev, "AT timer");
+		return (BUS_PROBE_LOW_PRIORITY);
+	}
+	return (result);
 }
 
 static int



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007011859.o61Ix558056163>