mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
![Arnd Bergmann](/assets/img/avatar_default.png)
The slave_id was previously used to pick one DMA slave instead of another, but this is now done through the DMA descriptors in device tree. For the qcom_adm driver, the configuration is documented in the DT binding to contain a tuple of device identifier and a "crci" field, but the implementation ends up using only a single cell for identifying the slave, with the crci getting passed in nonstandard properties of the device, and passed through the dma driver using the old slave_id field. Part of the problem apparently is that the nand driver ends up using only a single DMA request ID, but requires distinct values for "crci" depending on the type of transfer. Change both the dmaengine driver and the two slave drivers to allow the documented binding to work in addition to the ad-hoc passing of crci values. In order to no longer abuse the slave_id field, pass the data using the "peripheral_config" mechanism instead. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20211122222203.4103644-9-arnd@kernel.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
12 lines
227 B
C
12 lines
227 B
C
// SPDX-License-Identifier: GPL-2.0-only
|
|
#ifndef __LINUX_DMA_QCOM_ADM_H
|
|
#define __LINUX_DMA_QCOM_ADM_H
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct qcom_adm_peripheral_config {
|
|
u32 crci;
|
|
u32 mux;
|
|
};
|
|
|
|
#endif /* __LINUX_DMA_QCOM_ADM_H */
|