svn commit: r266382 - in stable/10/sys: boot/fdt/dts/arm dev/sdhci
Ian Lepore
ian at FreeBSD.org
Sun May 18 00:15:49 UTC 2014
Author: ian
Date: Sun May 18 00:15:48 2014
New Revision: 266382
URL: http://svnweb.freebsd.org/changeset/base/266382
Log:
MFC 265208: Honor the max-frequency property if it appears in the fdt data.
Modified:
stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi
stable/10/sys/boot/fdt/dts/arm/zedboard.dts
stable/10/sys/dev/sdhci/sdhci_fdt.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi
==============================================================================
--- stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi Sat May 17 23:29:45 2014 (r266381)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi Sun May 18 00:15:48 2014 (r266382)
@@ -126,7 +126,7 @@
reg = <0x12200000 0x1000>;
interrupts = <107>;
interrupt-parent = <&GIC>;
- clock-frequency = <24000000>; /* TODO: verify freq */
+ max-frequency = <24000000>; /* TODO: verify freq */
};
sdhci at 12210000 {
@@ -134,7 +134,7 @@
reg = <0x12210000 0x1000>;
interrupts = <108>;
interrupt-parent = <&GIC>;
- clock-frequency = <24000000>;
+ max-frequency = <24000000>;
};
sdhci at 12220000 {
@@ -142,7 +142,7 @@
reg = <0x12220000 0x1000>;
interrupts = <109>;
interrupt-parent = <&GIC>;
- clock-frequency = <24000000>;
+ max-frequency = <24000000>;
};
sdhci at 12230000 {
@@ -150,7 +150,7 @@
reg = <0x12230000 0x1000>;
interrupts = <110>;
interrupt-parent = <&GIC>;
- clock-frequency = <24000000>;
+ max-frequency = <24000000>;
};
serial0: serial at 12C00000 {
Modified: stable/10/sys/boot/fdt/dts/arm/zedboard.dts
==============================================================================
--- stable/10/sys/boot/fdt/dts/arm/zedboard.dts Sat May 17 23:29:45 2014 (r266381)
+++ stable/10/sys/boot/fdt/dts/arm/zedboard.dts Sun May 18 00:15:48 2014 (r266382)
@@ -183,7 +183,7 @@
reg = <0x100000 0x1000>;
interrupts = <56>;
interrupt-parent = <&GIC>;
- clock-frequency = <50000000>;
+ max-frequency = <50000000>;
};
// QSPI
Modified: stable/10/sys/dev/sdhci/sdhci_fdt.c
==============================================================================
--- stable/10/sys/dev/sdhci/sdhci_fdt.c Sat May 17 23:29:45 2014 (r266381)
+++ stable/10/sys/dev/sdhci/sdhci_fdt.c Sun May 18 00:15:48 2014 (r266382)
@@ -66,6 +66,7 @@ struct sdhci_fdt_softc {
device_t dev; /* Controller device */
u_int quirks; /* Chip specific quirks */
u_int caps; /* If we override SDHCI_CAPABILITIES */
+ uint32_t max_clk; /* Max possible freq */
struct resource *irq_res; /* IRQ resource */
void *intrhand; /* Interrupt handle */
@@ -156,6 +157,7 @@ sdhci_fdt_probe(device_t dev)
sc->quirks = 0;
sc->num_slots = 1;
+ sc->max_clk = 0;
if (!ofw_bus_status_okay(dev))
return (ENXIO);
@@ -170,11 +172,14 @@ sdhci_fdt_probe(device_t dev)
node = ofw_bus_get_node(dev);
- /* Allow dts to patch quirks and slots. */
- if ((OF_getprop(node, "quirks", &cid, sizeof(cid))) > 0)
- sc->quirks = fdt32_to_cpu(cid);
- if ((OF_getprop(node, "num-slots", &cid, sizeof(cid))) > 0)
- sc->num_slots = fdt32_to_cpu(cid);
+ /* Allow dts to patch quirks, slots, and max-frequency. */
+ if ((OF_getencprop(node, "quirks", &cid, sizeof(cid))) > 0)
+ sc->quirks = cid;
+ if ((OF_getencprop(node, "num-slots", &cid, sizeof(cid))) > 0)
+ sc->num_slots = cid;
+ if ((OF_getencprop(node, "max-frequency", &cid, sizeof(cid))) > 0)
+ sc->max_clk = cid;
+
return (0);
}
@@ -214,6 +219,7 @@ sdhci_fdt_attach(device_t dev)
slot->quirks = sc->quirks;
slot->caps = sc->caps;
+ slot->max_clk = sc->max_clk;
if (sdhci_init_slot(dev, slot, i) != 0)
continue;
More information about the svn-src-stable-10
mailing list