diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-08 13:00:55 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-08 13:00:55 -0400 |
commit | 44d51a029f95d49c5c7ccd7808f81904c20c3abd (patch) | |
tree | 41b82695b3bfb73b4146809546c2d79d6eaa4c47 /arch/arm/mach-davinci/board-dm646x-evm.c | |
parent | 2d53056973079e6c2ffc0d7ae3afbdd3d4f18ae3 (diff) | |
parent | cce3dddb87e4b72b1787527eec6826a43a562e71 (diff) |
Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci
* 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci:
davinci: dm646x EVM: Specify reserved EDMA channel/slots
davinci: da8xx/omapl EVM: Specify reserved channels/slots
davinci: support for EDMA resource sharing
davinci: edma: provide ability to detect insufficient CC info data
davinci: da8xx: sparse cleanup: remove duplicate entries in irq priorities
davinci: DM365: fixed second serial port
Davinci: tnetv107x evm board initial support
Davinci: tnetv107x initial gpio support
Davinci: tnetv107x soc support
Davinci: tnetv107x decompresser uart definitions
Davinci: generalized debug macros
Diffstat (limited to 'arch/arm/mach-davinci/board-dm646x-evm.c')
-rw-r--r-- | arch/arm/mach-davinci/board-dm646x-evm.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 87521f2d69c7..4502f346b2b0 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c | |||
@@ -721,6 +721,39 @@ static struct davinci_uart_config uart_config __initdata = { | |||
721 | #define DM646X_EVM_PHY_MASK (0x2) | 721 | #define DM646X_EVM_PHY_MASK (0x2) |
722 | #define DM646X_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */ | 722 | #define DM646X_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */ |
723 | 723 | ||
724 | /* | ||
725 | * The following EDMA channels/slots are not being used by drivers (for | ||
726 | * example: Timer, GPIO, UART events etc) on dm646x, hence they are being | ||
727 | * reserved for codecs on the DSP side. | ||
728 | */ | ||
729 | static const s16 dm646x_dma_rsv_chans[][2] = { | ||
730 | /* (offset, number) */ | ||
731 | { 0, 4}, | ||
732 | {13, 3}, | ||
733 | {24, 4}, | ||
734 | {30, 2}, | ||
735 | {54, 3}, | ||
736 | {-1, -1} | ||
737 | }; | ||
738 | |||
739 | static const s16 dm646x_dma_rsv_slots[][2] = { | ||
740 | /* (offset, number) */ | ||
741 | { 0, 4}, | ||
742 | {13, 3}, | ||
743 | {24, 4}, | ||
744 | {30, 2}, | ||
745 | {54, 3}, | ||
746 | {128, 384}, | ||
747 | {-1, -1} | ||
748 | }; | ||
749 | |||
750 | static struct edma_rsv_info dm646x_edma_rsv[] = { | ||
751 | { | ||
752 | .rsv_chans = dm646x_dma_rsv_chans, | ||
753 | .rsv_slots = dm646x_dma_rsv_slots, | ||
754 | }, | ||
755 | }; | ||
756 | |||
724 | static __init void evm_init(void) | 757 | static __init void evm_init(void) |
725 | { | 758 | { |
726 | struct davinci_soc_info *soc_info = &davinci_soc_info; | 759 | struct davinci_soc_info *soc_info = &davinci_soc_info; |
@@ -732,6 +765,8 @@ static __init void evm_init(void) | |||
732 | 765 | ||
733 | platform_device_register(&davinci_nand_device); | 766 | platform_device_register(&davinci_nand_device); |
734 | 767 | ||
768 | dm646x_init_edma(dm646x_edma_rsv); | ||
769 | |||
735 | if (HAS_ATA) | 770 | if (HAS_ATA) |
736 | davinci_init_ide(); | 771 | davinci_init_ide(); |
737 | 772 | ||