diff --git a/src/drivers/bus/spi/tegra.c b/src/drivers/bus/spi/tegra.c
index 41e6d27..72adfbe 100644
--- a/src/drivers/bus/spi/tegra.c
+++ b/src/drivers/bus/spi/tegra.c
@@ -447,7 +447,7 @@
 		// Don't transfer more than the DMA can handle, transfer a
 		// multiple of 4 bytes, and make sure there's at least
 		// line_size bytes left when you're done.
-		uint32_t mask = ~(sizeof(uint32_t) - 1);
+		uint32_t mask = (uint32_t)~(sizeof(uint32_t) - 1);
 		todo = MIN((size - line_size) & mask,
 			   SPI_MAX_TRANSFER_BYTES_DMA & mask);
 		if (!todo)
diff --git a/src/drivers/sound/tegra_ahub.c b/src/drivers/sound/tegra_ahub.c
index d30c201..3688c8e 100644
--- a/src/drivers/sound/tegra_ahub.c
+++ b/src/drivers/sound/tegra_ahub.c
@@ -164,7 +164,7 @@
 	ssize_t written = 0;
 	TegraApbifRegs *regs = container_of(me, TegraAudioHubApbif, ops)->regs;
 	if (len % sizeof(*data)) {
-		printf("%s: Data size (%d) must be aligned to %d.\n", __func__,
+		printf("%s: Data size (%zd) must be aligned to %zd.\n", __func__,
 		       len, sizeof(*data));
 		return -1;
 	}
diff --git a/src/drivers/storage/bouncebuf.c b/src/drivers/storage/bouncebuf.c
index 0893c36..930fcc4 100644
--- a/src/drivers/storage/bouncebuf.c
+++ b/src/drivers/storage/bouncebuf.c
@@ -40,7 +40,7 @@
 	const uint32_t align_mask = ARCH_DMA_MINALIGN - 1;
 
 	// Check if start is aligned
-	if ((uint32_t)state->user_buffer & align_mask) {
+	if ((uintptr_t)state->user_buffer & align_mask) {
 		if (_debug)
 			printf("Unaligned buffer address %p\n",
 			       state->user_buffer);
@@ -50,7 +50,7 @@
 	// Check if length is aligned
 	if (state->len != state->len_aligned) {
 		if (_debug)
-			printf("Unaligned buffer length %d\n", state->len);
+			printf("Unaligned buffer length %zd\n", state->len);
 		return 0;
 	}
 
diff --git a/src/drivers/storage/tegra_mmc.c b/src/drivers/storage/tegra_mmc.c
index 0ddc82c..69a8a49 100644
--- a/src/drivers/storage/tegra_mmc.c
+++ b/src/drivers/storage/tegra_mmc.c
@@ -87,7 +87,7 @@
 		  __func__, bbstate->bounce_buffer, bbstate->user_buffer,
 		  data->blocks, data->blocksize);
 
-	writel((uint32_t)bbstate->bounce_buffer, &host->reg->sysad);
+	writel((uintptr_t)bbstate->bounce_buffer, &host->reg->sysad);
 	/*
 	 * DMASEL[4:3]
 	 * 00 = Selects SDMA
