static inline void set_dma_sg(unsigned int channel, struct dmasg *sg, int ndsize)
{
- dma_ch[channel].regs->cfg |= ((ndsize & 0x0F) << 8);
+ dma_ch[channel].regs->cfg =
+ (dma_ch[channel].regs->cfg & ~(0xf << 8)) |
+ ((ndsize & 0xf) << 8);
dma_ch[channel].regs->next_desc_ptr = sg;
}