moxart-dma.c (0cce284537fb42d9c28b9b31038ffc9b464555f5) | moxart-dma.c (acafe7e30216166a17e6e226aadc3ecb63993242) |
---|---|
1/* 2 * MOXA ART SoCs DMA Engine support. 3 * 4 * Copyright (C) 2013 Jonas Jensen 5 * 6 * Jonas Jensen <jonas.jensen@gmail.com> 7 * 8 * This file is licensed under the terms of the GNU General Public --- 295 unchanged lines hidden (view full) --- 304 es = MOXART_DMA_DATA_TYPE_S32; 305 break; 306 default: 307 dev_err(chan2dev(chan), "%s: unsupported data width (%u)\n", 308 __func__, dev_width); 309 return NULL; 310 } 311 | 1/* 2 * MOXA ART SoCs DMA Engine support. 3 * 4 * Copyright (C) 2013 Jonas Jensen 5 * 6 * Jonas Jensen <jonas.jensen@gmail.com> 7 * 8 * This file is licensed under the terms of the GNU General Public --- 295 unchanged lines hidden (view full) --- 304 es = MOXART_DMA_DATA_TYPE_S32; 305 break; 306 default: 307 dev_err(chan2dev(chan), "%s: unsupported data width (%u)\n", 308 __func__, dev_width); 309 return NULL; 310 } 311 |
312 d = kzalloc(sizeof(*d) + sg_len * sizeof(d->sg[0]), GFP_ATOMIC); | 312 d = kzalloc(struct_size(d, sg, sg_len), GFP_ATOMIC); |
313 if (!d) 314 return NULL; 315 316 d->dma_dir = dir; 317 d->dev_addr = dev_addr; 318 d->es = es; 319 320 for_each_sg(sgl, sgent, sg_len, i) { --- 362 unchanged lines hidden --- | 313 if (!d) 314 return NULL; 315 316 d->dma_dir = dir; 317 d->dev_addr = dev_addr; 318 d->es = es; 319 320 for_each_sg(sgl, sgent, sg_len, i) { --- 362 unchanged lines hidden --- |