.../bindings/dma/loongson,ls1b-apbdma.yaml | 65 ++ drivers/dma/Kconfig | 9 + drivers/dma/Makefile | 1 + drivers/dma/loongson1-apb-dma.c | 665 +++++++++++++++++++++ 4 files changed, 740 insertions(+)
Add the driver and dt-binding document for Loongson1 APB DMA.
Changes in v7:
- Change the comptible to 'loongson,ls1*-apbdma' (suggested by Huacai Chen)
- Update the title and description part accordingly
- Rename the file to loongson,ls1b-apbdma.yaml
- Add a compatible string for LS1A
- Delete minItems of 'interrupts'
- Change patterns of 'interrupt-names' to const
- Rename the file to loongson1-apb-dma.c to keep the consistency
- Update Kconfig and Makefile accordingly
- Link to v6: https://lore.kernel.org/r/20240316-loongson1-dma-v6-0-90de2c3cc928@gmail.com
Changes in v6:
- Change the compatible to the fallback
- Implement .device_prep_dma_cyclic for Loongson1 sound driver,
- as well as .device_pause and .device_resume.
- Set the limitation LS1X_DMA_MAX_DESC and put all descriptors
- into one page to save memory
- Move dma_pool_zalloc() into ls1x_dma_alloc_desc()
- Drop dma_slave_config structure
- Use .remove_new instead of .remove
- Use KBUILD_MODNAME for the driver name
- Improve the debug information
- Some minor fixes
-
Changes in v5:
- Add the dt-binding document
- Add DT support
- Use DT information instead of platform data
- Use chan_id of struct dma_chan instead of own id
- Use of_dma_xlate_by_chan_id() instead of ls1x_dma_filter()
- Update the author information to my official name
-
Changes in v4:
- Use dma_slave_map to find the proper channel.
- Explicitly call devm_request_irq() and tasklet_kill().
- Fix namespace issue.
- Some minor fixes and cleanups.
-
Changes in v3:
- Rename ls1x_dma_filter_fn to ls1x_dma_filter.
-
Changes in v2:
- Change the config from 'DMA_LOONGSON1' to 'LOONGSON1_DMA',
- and rearrange it in alphabetical order in Kconfig and Makefile.
- Fix comment style.
---
Keguang Zhang (2):
dt-bindings: dma: Add Loongson-1 APB DMA
dmaengine: Loongson1: Add Loongson-1 APB DMA driver
.../bindings/dma/loongson,ls1b-apbdma.yaml | 65 ++
drivers/dma/Kconfig | 9 +
drivers/dma/Makefile | 1 +
drivers/dma/loongson1-apb-dma.c | 665 +++++++++++++++++++++
4 files changed, 740 insertions(+)
---
base-commit: a6bd6c9333397f5a0e2667d4d82fef8c970108f2
change-id: 20231120-loongson1-dma-163afe5708b9
Best regards,
--
Keguang Zhang <keguang.zhang@gmail.com>
在 2024/3/29 11:26, Keguang Zhang via B4 Relay 写道: > Add the driver and dt-binding document for Loongson1 APB DMA. For the whole series: Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Thanks! > > Changes in v7: > - Change the comptible to 'loongson,ls1*-apbdma' (suggested by Huacai Chen) > - Update the title and description part accordingly > - Rename the file to loongson,ls1b-apbdma.yaml > - Add a compatible string for LS1A > - Delete minItems of 'interrupts' > - Change patterns of 'interrupt-names' to const > - Rename the file to loongson1-apb-dma.c to keep the consistency > - Update Kconfig and Makefile accordingly > - Link to v6: https://lore.kernel.org/r/20240316-loongson1-dma-v6-0-90de2c3cc928@gmail.com > > Changes in v6: > - Change the compatible to the fallback > - Implement .device_prep_dma_cyclic for Loongson1 sound driver, > - as well as .device_pause and .device_resume. > - Set the limitation LS1X_DMA_MAX_DESC and put all descriptors > - into one page to save memory > - Move dma_pool_zalloc() into ls1x_dma_alloc_desc() > - Drop dma_slave_config structure > - Use .remove_new instead of .remove > - Use KBUILD_MODNAME for the driver name > - Improve the debug information > - Some minor fixes > - > Changes in v5: > - Add the dt-binding document > - Add DT support > - Use DT information instead of platform data > - Use chan_id of struct dma_chan instead of own id > - Use of_dma_xlate_by_chan_id() instead of ls1x_dma_filter() > - Update the author information to my official name > - > Changes in v4: > - Use dma_slave_map to find the proper channel. > - Explicitly call devm_request_irq() and tasklet_kill(). > - Fix namespace issue. > - Some minor fixes and cleanups. > - > Changes in v3: > - Rename ls1x_dma_filter_fn to ls1x_dma_filter. > - > Changes in v2: > - Change the config from 'DMA_LOONGSON1' to 'LOONGSON1_DMA', > - and rearrange it in alphabetical order in Kconfig and Makefile. > - Fix comment style. > > --- > Keguang Zhang (2): > dt-bindings: dma: Add Loongson-1 APB DMA > dmaengine: Loongson1: Add Loongson-1 APB DMA driver > > .../bindings/dma/loongson,ls1b-apbdma.yaml | 65 ++ > drivers/dma/Kconfig | 9 + > drivers/dma/Makefile | 1 + > drivers/dma/loongson1-apb-dma.c | 665 +++++++++++++++++++++ > 4 files changed, 740 insertions(+) > --- > base-commit: a6bd6c9333397f5a0e2667d4d82fef8c970108f2 > change-id: 20231120-loongson1-dma-163afe5708b9 > > Best regards,
© 2016 - 2026 Red Hat, Inc.