Initialize DMA memory when allocating it. Should fix PR# 51734 (hdaudio

"RIRB timeout" on boot).
This commit is contained in:
jmcneill 2020-12-28 16:49:58 +00:00
parent 76736a6e95
commit 41f3aaf426

View File

@ -1,4 +1,4 @@
/* $NetBSD: hdaudio.c,v 1.11 2020/06/11 02:39:30 thorpej Exp $ */
/* $NetBSD: hdaudio.c,v 1.12 2020/12/28 16:49:58 jmcneill Exp $ */
/*
* Copyright (c) 2009 Precedence Technologies Ltd <support@precedence.co.uk>
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: hdaudio.c,v 1.11 2020/06/11 02:39:30 thorpej Exp $");
__KERNEL_RCSID(0, "$NetBSD: hdaudio.c,v 1.12 2020/12/28 16:49:58 jmcneill Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -179,6 +179,10 @@ hdaudio_dma_alloc(struct hdaudio_softc *sc, struct hdaudio_dma *dma,
if (err)
goto destroy;
memset(dma->dma_addr, 0, dma->dma_size);
bus_dmamap_sync(sc->sc_dmat, dma->dma_map, 0, dma->dma_size,
BUS_DMASYNC_PREWRITE);
dma->dma_valid = true;
return 0;