Commit 8d445234 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge branch 'efm32/cleanup' into next/dt



Dependency for efm32/dt branch.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents c5d326c2 d5d5ce95
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -13,6 +13,8 @@ Required properties:
Optional properties:
- atmel,use-dma-rx: use of PDC or DMA for receiving data
- atmel,use-dma-tx: use of PDC or DMA for transmitting data
- rts-gpios: specify a GPIO for RTS line. It will use specified PIO instead of the peripheral
  function pin for the USART RTS feature. If unsure, don't specify this property.
- add dma bindings for dma transfer:
	- dmas: DMA specifier, consisting of a phandle to DMA controller node,
		memory peripheral interface and USART DMA channel ID, FIFO configuration.
@@ -33,6 +35,7 @@ Example:
		clock-names = "usart";
		atmel,use-dma-rx;
		atmel,use-dma-tx;
		rts-gpios = <&pioD 15 0>;
	};

- use DMA:
+0 −3
Original line number Diff line number Diff line
@@ -421,9 +421,6 @@ config ARCH_EFM32
	depends on !MMU
	select ARCH_REQUIRE_GPIOLIB
	select ARM_NVIC
	# CLKSRC_MMIO is wrong here, but needed until a proper fix is merged,
	# i.e. CLKSRC_EFM32 selecting CLKSRC_MMIO
	select CLKSRC_MMIO
	select CLKSRC_OF
	select COMMON_CLK
	select CPU_V7M
+0 −6
Original line number Diff line number Diff line
@@ -12,12 +12,6 @@
#ifndef _ASMARM_TIMEX_H
#define _ASMARM_TIMEX_H

#ifdef CONFIG_ARCH_MULTIPLATFORM
#define CLOCK_TICK_RATE 1000000
#else
#include <mach/timex.h>
#endif

typedef unsigned long cycles_t;
#define get_cycles()	({ cycles_t c; read_current_timer(&c) ? 0 : c; })

+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <mach/at91rm9200.h>
#include <mach/at91_st.h>
#include <mach/cpu.h>
#include <mach/hardware.h>

#include "at91_aic.h"
#include "soc.h"
+9 −2
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <mach/at91rm9200.h>
#include <mach/at91rm9200_mc.h>
#include <mach/at91_ramc.h>
#include <mach/hardware.h>

#include "board.h"
#include "generic.h"
@@ -922,6 +923,7 @@ static struct resource dbgu_resources[] = {
static struct atmel_uart_data dbgu_data = {
	.use_dma_tx	= 0,
	.use_dma_rx	= 0,		/* DBGU not capable of receive DMA */
	.rts_gpio	= -EINVAL,
};

static u64 dbgu_dmamask = DMA_BIT_MASK(32);
@@ -960,6 +962,7 @@ static struct resource uart0_resources[] = {
static struct atmel_uart_data uart0_data = {
	.use_dma_tx	= 1,
	.use_dma_rx	= 1,
	.rts_gpio	= -EINVAL,
};

static u64 uart0_dmamask = DMA_BIT_MASK(32);
@@ -987,9 +990,10 @@ static inline void configure_usart0_pins(unsigned pins)
	if (pins & ATMEL_UART_RTS) {
		/*
		 * AT91RM9200 Errata #39 - RTS0 is not internally connected to PA21.
		 *  We need to drive the pin manually.  Default is off (RTS is active low).
		 * We need to drive the pin manually. The serial driver will driver
		 * this to high when initializing.
		 */
		at91_set_gpio_output(AT91_PIN_PA21, 1);
		uart0_data.rts_gpio = AT91_PIN_PA21;
	}
}

@@ -1009,6 +1013,7 @@ static struct resource uart1_resources[] = {
static struct atmel_uart_data uart1_data = {
	.use_dma_tx	= 1,
	.use_dma_rx	= 1,
	.rts_gpio	= -EINVAL,
};

static u64 uart1_dmamask = DMA_BIT_MASK(32);
@@ -1060,6 +1065,7 @@ static struct resource uart2_resources[] = {
static struct atmel_uart_data uart2_data = {
	.use_dma_tx	= 1,
	.use_dma_rx	= 1,
	.rts_gpio	= -EINVAL,
};

static u64 uart2_dmamask = DMA_BIT_MASK(32);
@@ -1103,6 +1109,7 @@ static struct resource uart3_resources[] = {
static struct atmel_uart_data uart3_data = {
	.use_dma_tx	= 1,
	.use_dma_rx	= 1,
	.rts_gpio	= -EINVAL,
};

static u64 uart3_dmamask = DMA_BIT_MASK(32);
Loading