svn commit: r360007 - head/sys/dev/mmc

Emmanuel Vadot manu at FreeBSD.org
Thu Apr 16 12:31:12 UTC 2020


Author: manu
Date: Thu Apr 16 12:31:12 2020
New Revision: 360007
URL: https://svnweb.freebsd.org/changeset/base/360007

Log:
  Revert r359965
  
  This cause board without a cd-gpio to not schedule a card detection.

Modified:
  head/sys/dev/mmc/mmc_fdt_helpers.c

Modified: head/sys/dev/mmc/mmc_fdt_helpers.c
==============================================================================
--- head/sys/dev/mmc/mmc_fdt_helpers.c	Thu Apr 16 11:49:13 2020	(r360006)
+++ head/sys/dev/mmc/mmc_fdt_helpers.c	Thu Apr 16 12:31:12 2020	(r360007)
@@ -217,7 +217,7 @@ cd_card_task(void *arg, int pending __unused)
 /*
  * Card detect setup.
  */
-static bool
+static void
 cd_setup(struct mmc_fdt_helper *helper, phandle_t node)
 {
 	int pincaps;
@@ -233,7 +233,7 @@ cd_setup(struct mmc_fdt_helper *helper, phandle_t node
 		helper->cd_disabled = true;
 		if (bootverbose)
 			device_printf(dev, "Non-removable media\n");
-		return (false);
+		return;
 	}
 
 	/*
@@ -246,14 +246,14 @@ cd_setup(struct mmc_fdt_helper *helper, phandle_t node
 	 */
 	if (gpio_pin_get_by_ofw_property(dev, node, "cd-gpios",
 	    &helper->cd_pin))
-		return (false);
+		return;
 
 	if (gpio_pin_getcaps(helper->cd_pin, &pincaps) != 0 ||
 	    !(pincaps & GPIO_PIN_INPUT)) {
 		device_printf(dev, "Cannot read card-detect gpio pin; "
 		    "setting card-always-present flag.\n");
 		helper->cd_disabled = true;
-		return (false);
+		return;
 	}
 
 	/*
@@ -313,8 +313,6 @@ without_interrupts:
 		    device_get_nameunit(helper->cd_pin->dev), helper->cd_pin->pin,
 		    cd_mode_str);
 	}
-
-	return (true);
 }
 
 /*
@@ -356,16 +354,14 @@ mmc_fdt_gpio_setup(device_t dev, phandle_t node, struc
 
 	helper->dev = dev;
 	helper->cd_handler = handler;
+	cd_setup(helper, node);
 	wp_setup(helper, node);
 
-	if (cd_setup(helper, node)) {
-		/* 
-		 * Schedule a card detection
-		 */
-		taskqueue_enqueue_timeout_sbt(taskqueue_swi_giant,
-		    &helper->cd_delayed_task, mstosbt(500), 0, C_PREL(2));
-	}
-
+	/* 
+	 * Schedule a card detection
+	 */
+	taskqueue_enqueue_timeout_sbt(taskqueue_swi_giant,
+	    &helper->cd_delayed_task, mstosbt(500), 0, C_PREL(2));
 	return (0);
 }
 


More information about the svn-src-head mailing list