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);
 }
 
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to