atxdmac           247 drivers/dma/at_xdmac.c static inline void __iomem *at_xdmac_chan_reg_base(struct at_xdmac *atxdmac, unsigned int chan_nb)
atxdmac           249 drivers/dma/at_xdmac.c 	return atxdmac->regs + (AT_XDMAC_CHAN_REG_BASE + chan_nb * 0x40);
atxdmac           252 drivers/dma/at_xdmac.c #define at_xdmac_read(atxdmac, reg) readl_relaxed((atxdmac)->regs + (reg))
atxdmac           253 drivers/dma/at_xdmac.c #define at_xdmac_write(atxdmac, reg, value) \
atxdmac           254 drivers/dma/at_xdmac.c 	writel_relaxed((value), (atxdmac)->regs + (reg))
atxdmac           321 drivers/dma/at_xdmac.c static void at_xdmac_off(struct at_xdmac *atxdmac)
atxdmac           323 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GD, -1L);
atxdmac           326 drivers/dma/at_xdmac.c 	while (at_xdmac_read(atxdmac, AT_XDMAC_GS))
atxdmac           329 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GID, -1L);
atxdmac           336 drivers/dma/at_xdmac.c 	struct at_xdmac	*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac           403 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GIE, atchan->mask);
atxdmac           407 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GE, atchan->mask);
atxdmac           444 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(chan->device);
atxdmac           447 drivers/dma/at_xdmac.c 	desc = dma_pool_zalloc(atxdmac->at_xdmac_desc_pool, gfp_flags, &phys);
atxdmac           514 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = of_dma->of_dma_data;
atxdmac           517 drivers/dma/at_xdmac.c 	struct device		*dev = atxdmac->dma.dev;
atxdmac           524 drivers/dma/at_xdmac.c 	chan = dma_get_any_slave_channel(&atxdmac->dma);
atxdmac          1394 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac          1441 drivers/dma/at_xdmac.c 		at_xdmac_write(atxdmac, AT_XDMAC_GSWF, atchan->mask);
atxdmac          1499 drivers/dma/at_xdmac.c 		at_xdmac_write(atxdmac, AT_XDMAC_GSWF, atchan->mask);
atxdmac          1583 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac          1602 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GD, atchan->mask);
atxdmac          1603 drivers/dma/at_xdmac.c 	while (at_xdmac_read(atxdmac, AT_XDMAC_GS) & atchan->mask)
atxdmac          1673 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = (struct at_xdmac *)dev_id;
atxdmac          1680 drivers/dma/at_xdmac.c 		imr = at_xdmac_read(atxdmac, AT_XDMAC_GIM);
atxdmac          1681 drivers/dma/at_xdmac.c 		status = at_xdmac_read(atxdmac, AT_XDMAC_GIS);
atxdmac          1684 drivers/dma/at_xdmac.c 		dev_vdbg(atxdmac->dma.dev,
atxdmac          1692 drivers/dma/at_xdmac.c 		for (i = 0; i < atxdmac->dma.chancnt; i++) {
atxdmac          1696 drivers/dma/at_xdmac.c 			atchan = &atxdmac->chan[i];
atxdmac          1700 drivers/dma/at_xdmac.c 			dev_vdbg(atxdmac->dma.dev,
atxdmac          1714 drivers/dma/at_xdmac.c 				at_xdmac_write(atxdmac, AT_XDMAC_GD, atchan->mask);
atxdmac          1756 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac          1765 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GRWS, atchan->mask);
atxdmac          1777 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac          1788 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GRWR, atchan->mask);
atxdmac          1799 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(atchan->chan.device);
atxdmac          1805 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GD, atchan->mask);
atxdmac          1806 drivers/dma/at_xdmac.c 	while (at_xdmac_read(atxdmac, AT_XDMAC_GS) & atchan->mask)
atxdmac          1865 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = to_at_xdmac(chan->device);
atxdmac          1871 drivers/dma/at_xdmac.c 		dma_pool_free(atxdmac->at_xdmac_desc_pool, desc, desc->tx_dma_desc.phys);
atxdmac          1880 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = dev_get_drvdata(dev);
atxdmac          1883 drivers/dma/at_xdmac.c 	list_for_each_entry_safe(chan, _chan, &atxdmac->dma.channels, device_node) {
atxdmac          1899 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = dev_get_drvdata(dev);
atxdmac          1902 drivers/dma/at_xdmac.c 	list_for_each_entry_safe(chan, _chan, &atxdmac->dma.channels, device_node) {
atxdmac          1914 drivers/dma/at_xdmac.c 	atxdmac->save_gim = at_xdmac_read(atxdmac, AT_XDMAC_GIM);
atxdmac          1916 drivers/dma/at_xdmac.c 	at_xdmac_off(atxdmac);
atxdmac          1917 drivers/dma/at_xdmac.c 	clk_disable_unprepare(atxdmac->clk);
atxdmac          1923 drivers/dma/at_xdmac.c 	struct at_xdmac		*atxdmac = dev_get_drvdata(dev);
atxdmac          1929 drivers/dma/at_xdmac.c 	ret = clk_prepare_enable(atxdmac->clk);
atxdmac          1934 drivers/dma/at_xdmac.c 	for (i = 0; i < atxdmac->dma.chancnt; i++) {
atxdmac          1935 drivers/dma/at_xdmac.c 		atchan = &atxdmac->chan[i];
atxdmac          1940 drivers/dma/at_xdmac.c 	at_xdmac_write(atxdmac, AT_XDMAC_GIE, atxdmac->save_gim);
atxdmac          1941 drivers/dma/at_xdmac.c 	list_for_each_entry_safe(chan, _chan, &atxdmac->dma.channels, device_node) {
atxdmac          1951 drivers/dma/at_xdmac.c 			at_xdmac_write(atxdmac, AT_XDMAC_GE, atchan->mask);
atxdmac          1961 drivers/dma/at_xdmac.c 	struct at_xdmac	*atxdmac;
atxdmac          1991 drivers/dma/at_xdmac.c 	size = sizeof(*atxdmac);
atxdmac          1993 drivers/dma/at_xdmac.c 	atxdmac = devm_kzalloc(&pdev->dev, size, GFP_KERNEL);
atxdmac          1994 drivers/dma/at_xdmac.c 	if (!atxdmac) {
atxdmac          1999 drivers/dma/at_xdmac.c 	atxdmac->regs = base;
atxdmac          2000 drivers/dma/at_xdmac.c 	atxdmac->irq = irq;
atxdmac          2002 drivers/dma/at_xdmac.c 	atxdmac->clk = devm_clk_get(&pdev->dev, "dma_clk");
atxdmac          2003 drivers/dma/at_xdmac.c 	if (IS_ERR(atxdmac->clk)) {
atxdmac          2005 drivers/dma/at_xdmac.c 		return PTR_ERR(atxdmac->clk);
atxdmac          2009 drivers/dma/at_xdmac.c 	ret = request_irq(atxdmac->irq, at_xdmac_interrupt, 0, "at_xdmac", atxdmac);
atxdmac          2015 drivers/dma/at_xdmac.c 	ret = clk_prepare_enable(atxdmac->clk);
atxdmac          2021 drivers/dma/at_xdmac.c 	atxdmac->at_xdmac_desc_pool =
atxdmac          2024 drivers/dma/at_xdmac.c 	if (!atxdmac->at_xdmac_desc_pool) {
atxdmac          2030 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_CYCLIC, atxdmac->dma.cap_mask);
atxdmac          2031 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_INTERLEAVE, atxdmac->dma.cap_mask);
atxdmac          2032 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_MEMCPY, atxdmac->dma.cap_mask);
atxdmac          2033 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_MEMSET, atxdmac->dma.cap_mask);
atxdmac          2034 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_MEMSET_SG, atxdmac->dma.cap_mask);
atxdmac          2035 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_SLAVE, atxdmac->dma.cap_mask);
atxdmac          2040 drivers/dma/at_xdmac.c 	dma_cap_set(DMA_PRIVATE, atxdmac->dma.cap_mask);
atxdmac          2041 drivers/dma/at_xdmac.c 	atxdmac->dma.dev				= &pdev->dev;
atxdmac          2042 drivers/dma/at_xdmac.c 	atxdmac->dma.device_alloc_chan_resources	= at_xdmac_alloc_chan_resources;
atxdmac          2043 drivers/dma/at_xdmac.c 	atxdmac->dma.device_free_chan_resources		= at_xdmac_free_chan_resources;
atxdmac          2044 drivers/dma/at_xdmac.c 	atxdmac->dma.device_tx_status			= at_xdmac_tx_status;
atxdmac          2045 drivers/dma/at_xdmac.c 	atxdmac->dma.device_issue_pending		= at_xdmac_issue_pending;
atxdmac          2046 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_dma_cyclic		= at_xdmac_prep_dma_cyclic;
atxdmac          2047 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_interleaved_dma	= at_xdmac_prep_interleaved;
atxdmac          2048 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_dma_memcpy		= at_xdmac_prep_dma_memcpy;
atxdmac          2049 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_dma_memset		= at_xdmac_prep_dma_memset;
atxdmac          2050 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_dma_memset_sg		= at_xdmac_prep_dma_memset_sg;
atxdmac          2051 drivers/dma/at_xdmac.c 	atxdmac->dma.device_prep_slave_sg		= at_xdmac_prep_slave_sg;
atxdmac          2052 drivers/dma/at_xdmac.c 	atxdmac->dma.device_config			= at_xdmac_device_config;
atxdmac          2053 drivers/dma/at_xdmac.c 	atxdmac->dma.device_pause			= at_xdmac_device_pause;
atxdmac          2054 drivers/dma/at_xdmac.c 	atxdmac->dma.device_resume			= at_xdmac_device_resume;
atxdmac          2055 drivers/dma/at_xdmac.c 	atxdmac->dma.device_terminate_all		= at_xdmac_device_terminate_all;
atxdmac          2056 drivers/dma/at_xdmac.c 	atxdmac->dma.src_addr_widths = AT_XDMAC_DMA_BUSWIDTHS;
atxdmac          2057 drivers/dma/at_xdmac.c 	atxdmac->dma.dst_addr_widths = AT_XDMAC_DMA_BUSWIDTHS;
atxdmac          2058 drivers/dma/at_xdmac.c 	atxdmac->dma.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
atxdmac          2059 drivers/dma/at_xdmac.c 	atxdmac->dma.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
atxdmac          2062 drivers/dma/at_xdmac.c 	at_xdmac_off(atxdmac);
atxdmac          2065 drivers/dma/at_xdmac.c 	INIT_LIST_HEAD(&atxdmac->dma.channels);
atxdmac          2067 drivers/dma/at_xdmac.c 		struct at_xdmac_chan *atchan = &atxdmac->chan[i];
atxdmac          2069 drivers/dma/at_xdmac.c 		atchan->chan.device = &atxdmac->dma;
atxdmac          2071 drivers/dma/at_xdmac.c 			      &atxdmac->dma.channels);
atxdmac          2073 drivers/dma/at_xdmac.c 		atchan->ch_regs = at_xdmac_chan_reg_base(atxdmac, i);
atxdmac          2086 drivers/dma/at_xdmac.c 	platform_set_drvdata(pdev, atxdmac);
atxdmac          2088 drivers/dma/at_xdmac.c 	ret = dma_async_device_register(&atxdmac->dma);
atxdmac          2095 drivers/dma/at_xdmac.c 					 at_xdmac_xlate, atxdmac);
atxdmac          2102 drivers/dma/at_xdmac.c 		 nr_channels, atxdmac->regs);
atxdmac          2107 drivers/dma/at_xdmac.c 	dma_async_device_unregister(&atxdmac->dma);
atxdmac          2109 drivers/dma/at_xdmac.c 	clk_disable_unprepare(atxdmac->clk);
atxdmac          2111 drivers/dma/at_xdmac.c 	free_irq(atxdmac->irq, atxdmac);
atxdmac          2117 drivers/dma/at_xdmac.c 	struct at_xdmac	*atxdmac = (struct at_xdmac *)platform_get_drvdata(pdev);
atxdmac          2120 drivers/dma/at_xdmac.c 	at_xdmac_off(atxdmac);
atxdmac          2122 drivers/dma/at_xdmac.c 	dma_async_device_unregister(&atxdmac->dma);
atxdmac          2123 drivers/dma/at_xdmac.c 	clk_disable_unprepare(atxdmac->clk);
atxdmac          2125 drivers/dma/at_xdmac.c 	free_irq(atxdmac->irq, atxdmac);
atxdmac          2127 drivers/dma/at_xdmac.c 	for (i = 0; i < atxdmac->dma.chancnt; i++) {
atxdmac          2128 drivers/dma/at_xdmac.c 		struct at_xdmac_chan *atchan = &atxdmac->chan[i];