forked from luck/tmp_suning_uos_patched
ARM: 6012/1: ST SPEAr: Added basic header files for SPEAr platform
Reviewed-by: Linus Walleij <linux.walleij@stericsson.com> Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Shiraz Hashim <shiraz.hashim@st.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
e024c3d50c
commit
bf976b51a3
38
arch/arm/plat-spear/include/plat/debug-macro.S
Normal file
38
arch/arm/plat-spear/include/plat/debug-macro.S
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/debug-macro.S
|
||||
*
|
||||
* Debugging macro include header for spear platform
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#include <linux/amba/serial.h>
|
||||
#include <mach/spear.h>
|
||||
|
||||
.macro addruart, rx
|
||||
mrc p15, 0, \rx, c1, c0
|
||||
tst \rx, #1 @ MMU enabled?
|
||||
moveq \rx, =SPEAR_DBG_UART_BASE @ Physical base
|
||||
movne \rx, =VA_SPEAR_DBG_UART_BASE @ Virtual base
|
||||
.endm
|
||||
|
||||
.macro senduart, rd, rx
|
||||
strb \rd, [\rx, #UART01x_DR] @ ASC_TX_BUFFER
|
||||
.endm
|
||||
|
||||
.macro waituart, rd, rx
|
||||
1001: ldr \rd, [\rx, #UART01x_FR] @ FLAG REGISTER
|
||||
tst \rd, #UART01x_FR_TXFF @ TX_FULL
|
||||
bne 1001b
|
||||
.endm
|
||||
|
||||
.macro busyuart, rd, rx
|
||||
1002: ldr \rd, [\rx, #UART01x_FR] @ FLAG REGISTER
|
||||
tst \rd, #UART011_FR_TXFE @ TX_EMPTY
|
||||
beq 1002b
|
||||
.endm
|
24
arch/arm/plat-spear/include/plat/gpio.h
Normal file
24
arch/arm/plat-spear/include/plat/gpio.h
Normal file
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/gpio.h
|
||||
*
|
||||
* GPIO macros for SPEAr platform
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_GPIO_H
|
||||
#define __PLAT_GPIO_H
|
||||
|
||||
#include <asm-generic/gpio.h>
|
||||
|
||||
#define gpio_get_value __gpio_get_value
|
||||
#define gpio_set_value __gpio_set_value
|
||||
#define gpio_cansleep __gpio_cansleep
|
||||
#define gpio_to_irq __gpio_to_irq
|
||||
|
||||
#endif /* __PLAT_GPIO_H */
|
22
arch/arm/plat-spear/include/plat/io.h
Normal file
22
arch/arm/plat-spear/include/plat/io.h
Normal file
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/io.h
|
||||
*
|
||||
* IO definitions for SPEAr platform
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_IO_H
|
||||
#define __PLAT_IO_H
|
||||
|
||||
#define IO_SPACE_LIMIT 0xFFFFFFFF
|
||||
|
||||
#define __io(a) __typesafe_io(a)
|
||||
#define __mem_pci(a) (a)
|
||||
|
||||
#endif /* __PLAT_IO_H */
|
20
arch/arm/plat-spear/include/plat/memory.h
Normal file
20
arch/arm/plat-spear/include/plat/memory.h
Normal file
@ -0,0 +1,20 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/memory.h
|
||||
*
|
||||
* Memory map for SPEAr platform
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_MEMORY_H
|
||||
#define __PLAT_MEMORY_H
|
||||
|
||||
/* Physical DRAM offset */
|
||||
#define PHYS_OFFSET UL(0x00000000)
|
||||
|
||||
#endif /* __PLAT_MEMORY_H */
|
41
arch/arm/plat-spear/include/plat/system.h
Normal file
41
arch/arm/plat-spear/include/plat/system.h
Normal file
@ -0,0 +1,41 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/system.h
|
||||
*
|
||||
* SPEAr platform specific architecture functions
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_SYSTEM_H
|
||||
#define __PLAT_SYSTEM_H
|
||||
|
||||
#include <asm/hardware/sp810.h>
|
||||
#include <linux/io.h>
|
||||
#include <mach/spear.h>
|
||||
|
||||
static inline void arch_idle(void)
|
||||
{
|
||||
/*
|
||||
* This should do all the clock switching
|
||||
* and wait for interrupt tricks
|
||||
*/
|
||||
cpu_do_idle();
|
||||
}
|
||||
|
||||
static inline void arch_reset(char mode, const char *cmd)
|
||||
{
|
||||
if (mode == 's') {
|
||||
/* software reset, Jump into ROM at address 0 */
|
||||
cpu_reset(0);
|
||||
} else {
|
||||
/* hardware reset, Use on-chip reset capability */
|
||||
sysctl_soft_reset((void __iomem *)VA_SPEAR_SYS_CTRL_BASE);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* __PLAT_SYSTEM_H */
|
19
arch/arm/plat-spear/include/plat/timex.h
Normal file
19
arch/arm/plat-spear/include/plat/timex.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/timex.h
|
||||
*
|
||||
* SPEAr platform specific timex definitions
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_TIMEX_H
|
||||
#define __PLAT_TIMEX_H
|
||||
|
||||
#define CLOCK_TICK_RATE 48000000
|
||||
|
||||
#endif /* __PLAT_TIMEX_H */
|
43
arch/arm/plat-spear/include/plat/uncompress.h
Normal file
43
arch/arm/plat-spear/include/plat/uncompress.h
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/uncompress.h
|
||||
*
|
||||
* Serial port stubs for kernel decompress status messages
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#include <linux/io.h>
|
||||
#include <linux/amba/serial.h>
|
||||
#include <mach/spear.h>
|
||||
|
||||
#ifndef __PLAT_UNCOMPRESS_H
|
||||
#define __PLAT_UNCOMPRESS_H
|
||||
/*
|
||||
* This does not append a newline
|
||||
*/
|
||||
static inline void putc(int c)
|
||||
{
|
||||
void __iomem *base = (void __iomem *)SPEAR_DBG_UART_BASE;
|
||||
|
||||
while (readl(base + UART01x_FR) & UART01x_FR_TXFF)
|
||||
barrier();
|
||||
|
||||
writel(c, base + UART01x_DR);
|
||||
}
|
||||
|
||||
static inline void flush(void)
|
||||
{
|
||||
}
|
||||
|
||||
/*
|
||||
* nothing to do
|
||||
*/
|
||||
#define arch_decomp_setup()
|
||||
#define arch_decomp_wdog()
|
||||
|
||||
#endif /* __PLAT_UNCOMPRESS_H */
|
19
arch/arm/plat-spear/include/plat/vmalloc.h
Normal file
19
arch/arm/plat-spear/include/plat/vmalloc.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
* arch/arm/plat-spear/include/plat/vmalloc.h
|
||||
*
|
||||
* Defining Vmalloc area for SPEAr platform
|
||||
*
|
||||
* Copyright (C) 2009 ST Microelectronics
|
||||
* Viresh Kumar<viresh.kumar@st.com>
|
||||
*
|
||||
* This file is licensed under the terms of the GNU General Public
|
||||
* License version 2. This program is licensed "as is" without any
|
||||
* warranty of any kind, whether express or implied.
|
||||
*/
|
||||
|
||||
#ifndef __PLAT_VMALLOC_H
|
||||
#define __PLAT_VMALLOC_H
|
||||
|
||||
#define VMALLOC_END 0xF0000000
|
||||
|
||||
#endif /* __PLAT_VMALLOC_H */
|
Loading…
Reference in New Issue
Block a user