svn commit: r307239 - head/sys/arm/broadcom/bcm2835

Oleksandr Tymoshenko gonzo at FreeBSD.org
Thu Oct 13 23:29:26 UTC 2016


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, 


More information about the svn-src-head mailing list