Author: jhibbits
Date: Sat Apr  1 22:35:03 2017
New Revision: 316379
URL: https://svnweb.freebsd.org/changeset/base/316379

Log:
  Use the newly added mpc85xx_get_system_clock()
  
  Simplify the platform clock acquisition by using the new helper function.

Modified:
  head/sys/dev/sdhci/fsl_sdhci.c

Modified: head/sys/dev/sdhci/fsl_sdhci.c
==============================================================================
--- head/sys/dev/sdhci/fsl_sdhci.c      Sat Apr  1 22:29:11 2017        
(r316378)
+++ head/sys/dev/sdhci/fsl_sdhci.c      Sat Apr  1 22:35:03 2017        
(r316379)
@@ -58,6 +58,10 @@ __FBSDID("$FreeBSD$");
 #include <arm/freescale/imx/imx_ccmvar.h>
 #endif
 
+#ifdef __powerpc__
+#include <powerpc/mpc85xx/mpc85xx.h>
+#endif
+
 #include <dev/gpio/gpiobusvar.h>
 
 #include <dev/ofw/ofw_bus.h>
@@ -767,7 +771,6 @@ fsl_sdhci_get_card_present(device_t dev,
 static uint32_t
 fsl_sdhci_get_platform_clock(device_t dev)
 {
-       device_t parent;
        phandle_t node;
        uint32_t clock;
 
@@ -777,23 +780,14 @@ fsl_sdhci_get_platform_clock(device_t de
        if((OF_getprop(node, "clock-frequency", (void *)&clock,
            sizeof(clock)) <= 0) || (clock == 0)) {
 
-               /*
-                * Trying to get clock from parent device (soc) if correct
-                * clock cannot be acquired from sdhci node.
-                */
-               parent = device_get_parent(dev);
-               node = ofw_bus_get_node(parent);
+               clock = mpc85xx_get_system_clock();
 
-               /* Get soc properties */
-               if ((OF_getprop(node, "bus-frequency", (void *)&clock,
-                   sizeof(clock)) <= 0) || (clock == 0)) {
+               if (clock == 0) {
                        device_printf(dev,"Cannot acquire correct sdhci "
                            "frequency from DTS.\n");
 
                        return (0);
                }
-               /* eSDHC clock is 1/2 platform clock. */
-               clock /= 2;
        }
 
        if (bootverbose)
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to