diff options
Diffstat (limited to 'arch/arm/mach-davinci/board-da850-evm.c')
-rw-r--r-- | arch/arm/mach-davinci/board-da850-evm.c | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index 2ec3095ffb7b..ef7d9de4db29 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c | |||
@@ -629,6 +629,56 @@ static int __init da850_evm_config_emac(void) | |||
629 | } | 629 | } |
630 | device_initcall(da850_evm_config_emac); | 630 | device_initcall(da850_evm_config_emac); |
631 | 631 | ||
632 | /* | ||
633 | * The following EDMA channels/slots are not being used by drivers (for | ||
634 | * example: Timer, GPIO, UART events etc) on da850/omap-l138 EVM, hence | ||
635 | * they are being reserved for codecs on the DSP side. | ||
636 | */ | ||
637 | static const s16 da850_dma0_rsv_chans[][2] = { | ||
638 | /* (offset, number) */ | ||
639 | { 8, 6}, | ||
640 | {24, 4}, | ||
641 | {30, 2}, | ||
642 | {-1, -1} | ||
643 | }; | ||
644 | |||
645 | static const s16 da850_dma0_rsv_slots[][2] = { | ||
646 | /* (offset, number) */ | ||
647 | { 8, 6}, | ||
648 | {24, 4}, | ||
649 | {30, 50}, | ||
650 | {-1, -1} | ||
651 | }; | ||
652 | |||
653 | static const s16 da850_dma1_rsv_chans[][2] = { | ||
654 | /* (offset, number) */ | ||
655 | { 0, 28}, | ||
656 | {30, 2}, | ||
657 | {-1, -1} | ||
658 | }; | ||
659 | |||
660 | static const s16 da850_dma1_rsv_slots[][2] = { | ||
661 | /* (offset, number) */ | ||
662 | { 0, 28}, | ||
663 | {30, 90}, | ||
664 | {-1, -1} | ||
665 | }; | ||
666 | |||
667 | static struct edma_rsv_info da850_edma_cc0_rsv = { | ||
668 | .rsv_chans = da850_dma0_rsv_chans, | ||
669 | .rsv_slots = da850_dma0_rsv_slots, | ||
670 | }; | ||
671 | |||
672 | static struct edma_rsv_info da850_edma_cc1_rsv = { | ||
673 | .rsv_chans = da850_dma1_rsv_chans, | ||
674 | .rsv_slots = da850_dma1_rsv_slots, | ||
675 | }; | ||
676 | |||
677 | static struct edma_rsv_info *da850_edma_rsv[2] = { | ||
678 | &da850_edma_cc0_rsv, | ||
679 | &da850_edma_cc1_rsv, | ||
680 | }; | ||
681 | |||
632 | static __init void da850_evm_init(void) | 682 | static __init void da850_evm_init(void) |
633 | { | 683 | { |
634 | int ret; | 684 | int ret; |
@@ -638,7 +688,7 @@ static __init void da850_evm_init(void) | |||
638 | pr_warning("da850_evm_init: TPS65070 PMIC init failed: %d\n", | 688 | pr_warning("da850_evm_init: TPS65070 PMIC init failed: %d\n", |
639 | ret); | 689 | ret); |
640 | 690 | ||
641 | ret = da8xx_register_edma(); | 691 | ret = da850_register_edma(da850_edma_rsv); |
642 | if (ret) | 692 | if (ret) |
643 | pr_warning("da850_evm_init: edma registration failed: %d\n", | 693 | pr_warning("da850_evm_init: edma registration failed: %d\n", |
644 | ret); | 694 | ret); |