diff --git a/sys/dev/sound/pci/emu10k1.c b/sys/dev/sound/pci/emu10k1.c index edfdb1d3f4dd..db8cf7336013 100644 --- a/sys/dev/sound/pci/emu10k1.c +++ b/sys/dev/sound/pci/emu10k1.c @@ -1094,7 +1094,7 @@ emu_memalloc(struct sc_info *sc, u_int32_t sz, bus_addr_t *addr) ofs = 0; for (idx = start; idx < start + blksz; idx++) { mem->bmap[idx >> 3] |= 1 << (idx & 7); - tmp = (u_int32_t)((u_int8_t *)&blk->buf_addr + ofs); + tmp = (u_int32_t)(u_long)((u_int8_t *)&blk->buf_addr + ofs); /* printf("pte[%d] -> %x phys, %x virt\n", idx, tmp, ((u_int32_t)buf) + ofs); */ mem->ptb_pages[idx] = (tmp << 1) | idx; ofs += EMUPAGESIZE;