Author: gonzo
Date: Thu Oct 13 23:29:24 2016
New Revision: 307239
URL: https://svnweb.freebsd.org/changeset/base/307239

Log:
  Fix BCM283x(Raspberry Pi) SDHCI driver for ARM64 build
  
  - Revert BUS_SPACE_PHYSADDR back to rman_get_start. BUS_SPACE_PHYSADDR was
      introduced in 2013 as temporary wrapper until proper solution appears.
      It's ARM only and since we need this file for ARM64 build and no proper
      API has been introduced - just revert the change and make sure it's
      going to appear when people grep for BUS_SPACE_PHYSADDR in sources.
  
  - Fix printf format for size_t variables

Modified:
  head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c

Modified: head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
==============================================================================
--- head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c       Thu Oct 13 22:43:49 
2016        (r307238)
+++ head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c       Thu Oct 13 23:29:24 
2016        (r307239)
@@ -246,8 +246,9 @@ bcm_sdhci_attach(device_t dev)
                goto fail;
        }
 
-       sc->sc_sdhci_buffer_phys = BUS_SPACE_PHYSADDR(sc->sc_mem_res, 
-           SDHCI_BUFFER);
+       /* FIXME: Fix along with other BUS_SPACE_PHYSADDR instances */
+       sc->sc_sdhci_buffer_phys = rman_get_start(sc->sc_mem_res) +
+           SDHCI_BUFFER;
 
        bus_generic_probe(dev);
        bus_generic_attach(dev);
@@ -552,7 +553,7 @@ bcm_sdhci_read_dma(device_t dev, struct 
            slot->curcmd->data->len - slot->offset);
 
        KASSERT((left & 3) == 0,
-           ("%s: len = %d, not word-aligned", __func__, left));
+           ("%s: len = %zu, not word-aligned", __func__, left));
 
        if (bus_dmamap_load(sc->sc_dma_tag, sc->sc_dma_map, 
            (uint8_t *)slot->curcmd->data->data + slot->offset, left, 
@@ -581,7 +582,7 @@ bcm_sdhci_write_dma(device_t dev, struct
            slot->curcmd->data->len - slot->offset);
 
        KASSERT((left & 3) == 0,
-           ("%s: len = %d, not word-aligned", __func__, left));
+           ("%s: len = %zu, not word-aligned", __func__, left));
 
        if (bus_dmamap_load(sc->sc_dma_tag, sc->sc_dma_map,
            (uint8_t *)slot->curcmd->data->data + slot->offset, left, 
_______________________________________________
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