SAMA5 LCDC: Move DMA descriptors out of internal SRAM and into SDRAM. I am not completely clear, but it looks like the LCDC cannot support DMA from internal SRAM

This commit is contained in:
Gregory Nutt 2013-10-10 12:02:41 -06:00
parent 0a81f51502
commit b641545f93
3 changed files with 497 additions and 253 deletions

View File

@ -5729,6 +5729,11 @@
* configs/arduino-due/Kconfig and include/board.h: Add configuration
to select revision 3 of the Arduino Due which has some small
but important differences. Suggested by gdi@embedders.org.
* arch/arm/src/sama5/sam_allocateheap.c, Kconfig, chip/sama5d3_memorymap.h:
Add support so that subsets of the total DRAM (and other external
memory) can be added to the heap, leaving other memory reserved for
other purposes (like LCDC framebuffers) (2013-10-10).
* arch/arm/src/sama5/sam_lcd.c: Change how DMA descriptors are
allocated. My reading of the SAMA5 MATRIX is that the LCDC will
be unable to DMA from internal SRAM (2012-10-10).
D
differences

File diff suppressed because it is too large Load Diff

View File

@ -114,6 +114,15 @@ CONFIG_ARMV7A_TOOLCHAIN_CODESOURCERYW=y
#
# ATSAMA5 Configuration Options
#
# CONFIG_SAMA5_HAVE_UART0 is not set
# CONFIG_SAMA5_HAVE_UART1 is not set
# CONFIG_SAMA5_HAVE_CAN0 is not set
# CONFIG_SAMA5_HAVE_CAN1 is not set
CONFIG_SAMA5_HAVE_LCDC=y
CONFIG_SAMA5_HAVE_GMAC=y
# CONFIG_SAMA5_HAVE_EMAC is not set
# CONFIG_SAMA5_HAVE_HSMCI2 is not set
# CONFIG_SAMA5_HAVE_TC1 is not set
# CONFIG_ARCH_CHIP_ATSAMA5D31 is not set
CONFIG_ARCH_CHIP_ATSAMA5D33=y
# CONFIG_ARCH_CHIP_ATSAMA5D34 is not set
@ -127,8 +136,6 @@ CONFIG_ARCH_CHIP_ATSAMA5D33=y
# CONFIG_SAMA5_WDT is not set
CONFIG_SAMA5_HSMC=y
# CONFIG_SAMA5_SMD is not set
# CONFIG_SAMA5_UART0 is not set
# CONFIG_SAMA5_UART1 is not set
# CONFIG_SAMA5_USART0 is not set
CONFIG_SAMA5_USART1=y
# CONFIG_SAMA5_USART2 is not set
@ -138,11 +145,9 @@ CONFIG_SAMA5_USART1=y
# CONFIG_SAMA5_TWI2 is not set
# CONFIG_SAMA5_HSMCI0 is not set
# CONFIG_SAMA5_HSMCI1 is not set
# CONFIG_SAMA5_HSMCI2 is not set
# CONFIG_SAMA5_SPI0 is not set
# CONFIG_SAMA5_SPI1 is not set
# CONFIG_SAMA5_TC0 is not set
# CONFIG_SAMA5_TC1 is not set
# CONFIG_SAMA5_PWM is not set
# CONFIG_SAMA5_ADC is not set
# CONFIG_SAMA5_DMAC0 is not set
@ -164,7 +169,6 @@ CONFIG_SAMA5_LCDC=y
# CONFIG_SAMA5_FUSE is not set
CONFIG_SAMA5_MPDDRC=y
# CONFIG_SAMA5_PIO_IRQ is not set
CONFIG_SAMA5_HAVE_LCDC=y
#
# LCDC Configuration
@ -172,9 +176,11 @@ CONFIG_SAMA5_HAVE_LCDC=y
CONFIG_SAMA5_LCDC_BACKLIGHT=y
CONFIG_SAMA5_LCDC_DEFBACKLIGHT=0xf0
CONFIG_SAMA5_LCDC_BACKCOLOR=0x007b68ee
CONFIG_SAMA5_LCDC_FBALLOCATED=y
# CONFIG_SAMA5_LCDC_FBFIXED is not set
# CONFIG_SAMA5_LCDC_FBALLOCATED is not set
CONFIG_SAMA5_LCDC_FBFIXED=y
# CONFIG_SAMA5_LCDC_FBPREALLOCATED is not set
CONFIG_SAMA5_LCDC_FBFIXED_BASE=0x2fa80000
CONFIG_SAMA5_LCDC_FBFIXED_SIZE=5767168
#
# Base layer configuration
@ -197,8 +203,6 @@ CONFIG_SAMA5_LCDC_BASE_RGB888P=y
# CONFIG_SAMA5_LCDC_BASE_TRGB1888 is not set
# CONFIG_SAMA5_LCDC_BASE_ARGB8888 is not set
# CONFIG_SAMA5_LCDC_BASE_RGBA8888 is not set
CONFIG_SAMA5_HAVE_GMAC=y
# CONFIG_SAMA5_HAVE_EMAC is not set
#
# External Memory Configuration
@ -229,6 +233,8 @@ CONFIG_SAMA5_BOOT_CS0FLASH=y
#
CONFIG_SAMA5_ISRAM_HEAP=y
CONFIG_SAMA5_DDRCS_HEAP=y
CONFIG_SAMA5_DDRCS_HEAP_OFFSET=0
CONFIG_SAMA5_DDRCS_HEAP_SIZE=262668288
#
# Architecture Options