On Mon, 17 Feb 2025 14:01:16 +0100 Lorenzo Bianconi wrote: > +static int airoha_npu_send_msg(struct airoha_npu *npu, int func_id, > + void *p, int size) > +{ > + u16 core = 0; /* FIXME */ > + u32 val, offset = core << 4; > + dma_addr_t dma_addr; > + void *addr; > + int ret; > + > + addr = kzalloc(size, GFP_ATOMIC | GFP_DMA); You need the actual "zone DMA" memory from ISA times? I think that's what GFP_DMA is for. Any kmalloc'd memory can be DMA'ed to/from. > + if (dma_set_coherent_mask(dev, 0xbfffffff)) Coherent mask is not contiguous on purpose? Quick grep reveals no such cases at present, not sure if it works. Maybe add a comment, at least ? -- pw-bot: cr