mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
[ARM] S3C24XX: Additional include moves
Continue moving the include files into arch/arm Signed-off-by: Ben Dooks <[email protected]>
This commit is contained in:
parent
a2b7ba9ca4
commit
d5120ae72a
46 changed files with 47 additions and 47 deletions
|
|
@ -1,40 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c/map.h
|
||||
*
|
||||
* Copyright 2003, 2007 Simtec Electronics
|
||||
* http://armlinux.simtec.co.uk/
|
||||
* Ben Dooks <ben@simtec.co.uk>
|
||||
*
|
||||
* S3C - Memory map definitions (virtual addresses)
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __ASM_PLAT_MAP_H
|
||||
#define __ASM_PLAT_MAP_H __FILE__
|
||||
|
||||
/* Fit all our registers in at 0xF4000000 upwards, trying to use as
|
||||
* little of the VA space as possible so vmalloc and friends have a
|
||||
* better chance of getting memory.
|
||||
*
|
||||
* we try to ensure stuff like the IRQ registers are available for
|
||||
* an single MOVS instruction (ie, only 8 bits of set data)
|
||||
*/
|
||||
|
||||
#define S3C_ADDR_BASE (0xF4000000)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#define S3C_ADDR(x) ((void __iomem __force *)S3C_ADDR_BASE + (x))
|
||||
#else
|
||||
#define S3C_ADDR(x) (S3C_ADDR_BASE + (x))
|
||||
#endif
|
||||
|
||||
#define S3C_VA_IRQ S3C_ADDR(0x00000000) /* irq controller(s) */
|
||||
#define S3C_VA_SYS S3C_ADDR(0x00100000) /* system control */
|
||||
#define S3C_VA_MEM S3C_ADDR(0x00200000) /* system control */
|
||||
#define S3C_VA_TIMER S3C_ADDR(0x00300000) /* timer block */
|
||||
#define S3C_VA_WATCHDOG S3C_ADDR(0x00400000) /* watchdog */
|
||||
#define S3C_VA_UART S3C_ADDR(0x01000000) /* UART */
|
||||
|
||||
#endif /* __ASM_PLAT_MAP_H */
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
/* arch/arm/mach-s3c2410/include/mach/regs-adc.h
|
||||
*
|
||||
* Copyright (c) 2004 Shannon Holland <holland@loser.net>
|
||||
*
|
||||
* This program is free software; yosu can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* S3C2410 ADC registers
|
||||
*/
|
||||
|
||||
#ifndef __ASM_ARCH_REGS_ADC_H
|
||||
#define __ASM_ARCH_REGS_ADC_H "regs-adc.h"
|
||||
|
||||
#define S3C2410_ADCREG(x) (x)
|
||||
|
||||
#define S3C2410_ADCCON S3C2410_ADCREG(0x00)
|
||||
#define S3C2410_ADCTSC S3C2410_ADCREG(0x04)
|
||||
#define S3C2410_ADCDLY S3C2410_ADCREG(0x08)
|
||||
#define S3C2410_ADCDAT0 S3C2410_ADCREG(0x0C)
|
||||
#define S3C2410_ADCDAT1 S3C2410_ADCREG(0x10)
|
||||
|
||||
|
||||
/* ADCCON Register Bits */
|
||||
#define S3C2410_ADCCON_ECFLG (1<<15)
|
||||
#define S3C2410_ADCCON_PRSCEN (1<<14)
|
||||
#define S3C2410_ADCCON_PRSCVL(x) (((x)&0xFF)<<6)
|
||||
#define S3C2410_ADCCON_PRSCVLMASK (0xFF<<6)
|
||||
#define S3C2410_ADCCON_SELMUX(x) (((x)&0x7)<<3)
|
||||
#define S3C2410_ADCCON_MUXMASK (0x7<<3)
|
||||
#define S3C2410_ADCCON_STDBM (1<<2)
|
||||
#define S3C2410_ADCCON_READ_START (1<<1)
|
||||
#define S3C2410_ADCCON_ENABLE_START (1<<0)
|
||||
#define S3C2410_ADCCON_STARTMASK (0x3<<0)
|
||||
|
||||
|
||||
/* ADCTSC Register Bits */
|
||||
#define S3C2410_ADCTSC_YM_SEN (1<<7)
|
||||
#define S3C2410_ADCTSC_YP_SEN (1<<6)
|
||||
#define S3C2410_ADCTSC_XM_SEN (1<<5)
|
||||
#define S3C2410_ADCTSC_XP_SEN (1<<4)
|
||||
#define S3C2410_ADCTSC_PULL_UP_DISABLE (1<<3)
|
||||
#define S3C2410_ADCTSC_AUTO_PST (1<<2)
|
||||
#define S3C2410_ADCTSC_XY_PST(x) (((x)&0x3)<<0)
|
||||
|
||||
/* ADCDAT0 Bits */
|
||||
#define S3C2410_ADCDAT0_UPDOWN (1<<15)
|
||||
#define S3C2410_ADCDAT0_AUTO_PST (1<<14)
|
||||
#define S3C2410_ADCDAT0_XY_PST (0x3<<12)
|
||||
#define S3C2410_ADCDAT0_XPDATA_MASK (0x03FF)
|
||||
|
||||
/* ADCDAT1 Bits */
|
||||
#define S3C2410_ADCDAT1_UPDOWN (1<<15)
|
||||
#define S3C2410_ADCDAT1_AUTO_PST (1<<14)
|
||||
#define S3C2410_ADCDAT1_XY_PST (0x3<<12)
|
||||
#define S3C2410_ADCDAT1_YPDATA_MASK (0x03FF)
|
||||
|
||||
#endif /* __ASM_ARCH_REGS_ADC_H */
|
||||
|
||||
|
||||
|
|
@ -1,155 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c/uncompress.h
|
||||
*
|
||||
* Copyright 2003, 2007 Simtec Electronics
|
||||
* http://armlinux.simtec.co.uk/
|
||||
* Ben Dooks <ben@simtec.co.uk>
|
||||
*
|
||||
* S3C - uncompress code
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifndef __ASM_PLAT_UNCOMPRESS_H
|
||||
#define __ASM_PLAT_UNCOMPRESS_H
|
||||
|
||||
typedef unsigned int upf_t; /* cannot include linux/serial_core.h */
|
||||
|
||||
/* uart setup */
|
||||
|
||||
static unsigned int fifo_mask;
|
||||
static unsigned int fifo_max;
|
||||
|
||||
/* forward declerations */
|
||||
|
||||
static void arch_detect_cpu(void);
|
||||
|
||||
/* defines for UART registers */
|
||||
|
||||
#include <plat/regs-serial.h>
|
||||
#include <asm/plat-s3c/regs-watchdog.h>
|
||||
|
||||
/* working in physical space... */
|
||||
#undef S3C2410_WDOGREG
|
||||
#define S3C2410_WDOGREG(x) ((S3C24XX_PA_WATCHDOG + (x)))
|
||||
|
||||
/* how many bytes we allow into the FIFO at a time in FIFO mode */
|
||||
#define FIFO_MAX (14)
|
||||
|
||||
#define uart_base S3C24XX_PA_UART + (0x4000*CONFIG_S3C_LOWLEVEL_UART_PORT)
|
||||
|
||||
static __inline__ void
|
||||
uart_wr(unsigned int reg, unsigned int val)
|
||||
{
|
||||
volatile unsigned int *ptr;
|
||||
|
||||
ptr = (volatile unsigned int *)(reg + uart_base);
|
||||
*ptr = val;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int
|
||||
uart_rd(unsigned int reg)
|
||||
{
|
||||
volatile unsigned int *ptr;
|
||||
|
||||
ptr = (volatile unsigned int *)(reg + uart_base);
|
||||
return *ptr;
|
||||
}
|
||||
|
||||
/* we can deal with the case the UARTs are being run
|
||||
* in FIFO mode, so that we don't hold up our execution
|
||||
* waiting for tx to happen...
|
||||
*/
|
||||
|
||||
static void putc(int ch)
|
||||
{
|
||||
if (uart_rd(S3C2410_UFCON) & S3C2410_UFCON_FIFOMODE) {
|
||||
int level;
|
||||
|
||||
while (1) {
|
||||
level = uart_rd(S3C2410_UFSTAT);
|
||||
level &= fifo_mask;
|
||||
|
||||
if (level < fifo_max)
|
||||
break;
|
||||
}
|
||||
|
||||
} else {
|
||||
/* not using fifos */
|
||||
|
||||
while ((uart_rd(S3C2410_UTRSTAT) & S3C2410_UTRSTAT_TXE) != S3C2410_UTRSTAT_TXE)
|
||||
barrier();
|
||||
}
|
||||
|
||||
/* write byte to transmission register */
|
||||
uart_wr(S3C2410_UTXH, ch);
|
||||
}
|
||||
|
||||
static inline void flush(void)
|
||||
{
|
||||
}
|
||||
|
||||
#define __raw_writel(d,ad) do { *((volatile unsigned int *)(ad)) = (d); } while(0)
|
||||
|
||||
/* CONFIG_S3C_BOOT_WATCHDOG
|
||||
*
|
||||
* Simple boot-time watchdog setup, to reboot the system if there is
|
||||
* any problem with the boot process
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_S3C_BOOT_WATCHDOG
|
||||
|
||||
#define WDOG_COUNT (0xff00)
|
||||
|
||||
static inline void arch_decomp_wdog(void)
|
||||
{
|
||||
__raw_writel(WDOG_COUNT, S3C2410_WTCNT);
|
||||
}
|
||||
|
||||
static void arch_decomp_wdog_start(void)
|
||||
{
|
||||
__raw_writel(WDOG_COUNT, S3C2410_WTDAT);
|
||||
__raw_writel(WDOG_COUNT, S3C2410_WTCNT);
|
||||
__raw_writel(S3C2410_WTCON_ENABLE | S3C2410_WTCON_DIV128 | S3C2410_WTCON_RSTEN | S3C2410_WTCON_PRESCALE(0x80), S3C2410_WTCON);
|
||||
}
|
||||
|
||||
#else
|
||||
#define arch_decomp_wdog_start()
|
||||
#define arch_decomp_wdog()
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_S3C_BOOT_ERROR_RESET
|
||||
|
||||
static void arch_decomp_error(const char *x)
|
||||
{
|
||||
putstr("\n\n");
|
||||
putstr(x);
|
||||
putstr("\n\n -- System resetting\n");
|
||||
|
||||
__raw_writel(0x4000, S3C2410_WTDAT);
|
||||
__raw_writel(0x4000, S3C2410_WTCNT);
|
||||
__raw_writel(S3C2410_WTCON_ENABLE | S3C2410_WTCON_DIV128 | S3C2410_WTCON_RSTEN | S3C2410_WTCON_PRESCALE(0x40), S3C2410_WTCON);
|
||||
|
||||
while(1);
|
||||
}
|
||||
|
||||
#define arch_error arch_decomp_error
|
||||
#endif
|
||||
|
||||
static void error(char *err);
|
||||
|
||||
static void
|
||||
arch_decomp_setup(void)
|
||||
{
|
||||
/* we may need to setup the uart(s) here if we are not running
|
||||
* on an BAST... the BAST will have left the uarts configured
|
||||
* after calling linux.
|
||||
*/
|
||||
|
||||
arch_detect_cpu();
|
||||
arch_decomp_wdog_start();
|
||||
}
|
||||
|
||||
|
||||
#endif /* __ASM_PLAT_UNCOMPRESS_H */
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c24xx/clock.h
|
||||
* linux/arch/arm/mach-s3c2410/clock.h
|
||||
*
|
||||
* Copyright (c) 2004-2005 Simtec Electronics
|
||||
* http://www.simtec.co.uk/products/SWLINUX/
|
||||
* Written by Ben Dooks, <ben@simtec.co.uk>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
struct clk {
|
||||
struct list_head list;
|
||||
struct module *owner;
|
||||
struct clk *parent;
|
||||
const char *name;
|
||||
int id;
|
||||
int usage;
|
||||
unsigned long rate;
|
||||
unsigned long ctrlbit;
|
||||
|
||||
int (*enable)(struct clk *, int enable);
|
||||
int (*set_rate)(struct clk *c, unsigned long rate);
|
||||
unsigned long (*get_rate)(struct clk *c);
|
||||
unsigned long (*round_rate)(struct clk *c, unsigned long rate);
|
||||
int (*set_parent)(struct clk *c, struct clk *parent);
|
||||
};
|
||||
|
||||
/* other clocks which may be registered by board support */
|
||||
|
||||
extern struct clk s3c24xx_dclk0;
|
||||
extern struct clk s3c24xx_dclk1;
|
||||
extern struct clk s3c24xx_clkout0;
|
||||
extern struct clk s3c24xx_clkout1;
|
||||
extern struct clk s3c24xx_uclk;
|
||||
|
||||
extern struct clk clk_usb_bus;
|
||||
|
||||
/* core clock support */
|
||||
|
||||
extern struct clk clk_f;
|
||||
extern struct clk clk_h;
|
||||
extern struct clk clk_p;
|
||||
extern struct clk clk_mpll;
|
||||
extern struct clk clk_upll;
|
||||
extern struct clk clk_xtal;
|
||||
|
||||
/* exports for arch/arm/mach-s3c2410
|
||||
*
|
||||
* Please DO NOT use these outside of arch/arm/mach-s3c2410
|
||||
*/
|
||||
|
||||
extern struct mutex clocks_mutex;
|
||||
|
||||
extern int s3c2410_clkcon_enable(struct clk *clk, int enable);
|
||||
|
||||
extern int s3c24xx_register_clock(struct clk *clk);
|
||||
extern int s3c24xx_register_clocks(struct clk **clk, int nr_clks);
|
||||
|
||||
extern int s3c24xx_setup_clocks(unsigned long xtal,
|
||||
unsigned long fclk,
|
||||
unsigned long hclk,
|
||||
unsigned long pclk);
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c24xx/common-smdk.h
|
||||
*
|
||||
* Copyright (c) 2006 Simtec Electronics
|
||||
* Ben Dooks <ben@simtec.co.uk>
|
||||
*
|
||||
* Common code for SMDK2410 and SMDK2440 boards
|
||||
*
|
||||
* http://www.fluff.org/ben/smdk2440/
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
extern void smdk_machine_init(void);
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c24xx/dma.h
|
||||
*
|
||||
* Copyright (C) 2006 Simtec Electronics
|
||||
* Ben Dooks <ben@simtec.co.uk>
|
||||
*
|
||||
* Samsung S3C24XX DMA support
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
extern struct sysdev_class dma_sysclass;
|
||||
extern struct s3c2410_dma_chan s3c2410_chans[S3C2410_DMA_CHANNELS];
|
||||
|
||||
#define DMA_CH_VALID (1<<31)
|
||||
#define DMA_CH_NEVER (1<<30)
|
||||
|
||||
struct s3c24xx_dma_addr {
|
||||
unsigned long from;
|
||||
unsigned long to;
|
||||
};
|
||||
|
||||
/* struct s3c24xx_dma_map
|
||||
*
|
||||
* this holds the mapping information for the channel selected
|
||||
* to be connected to the specified device
|
||||
*/
|
||||
|
||||
struct s3c24xx_dma_map {
|
||||
const char *name;
|
||||
struct s3c24xx_dma_addr hw_addr;
|
||||
|
||||
unsigned long channels[S3C2410_DMA_CHANNELS];
|
||||
unsigned long channels_rx[S3C2410_DMA_CHANNELS];
|
||||
};
|
||||
|
||||
struct s3c24xx_dma_selection {
|
||||
struct s3c24xx_dma_map *map;
|
||||
unsigned long map_size;
|
||||
unsigned long dcon_mask;
|
||||
|
||||
void (*select)(struct s3c2410_dma_chan *chan,
|
||||
struct s3c24xx_dma_map *map);
|
||||
|
||||
void (*direction)(struct s3c2410_dma_chan *chan,
|
||||
struct s3c24xx_dma_map *map,
|
||||
enum s3c2410_dmasrc dir);
|
||||
};
|
||||
|
||||
extern int s3c24xx_dma_init_map(struct s3c24xx_dma_selection *sel);
|
||||
|
||||
/* struct s3c24xx_dma_order_ch
|
||||
*
|
||||
* channel map for one of the `enum dma_ch` dma channels. the list
|
||||
* entry contains a set of low-level channel numbers, orred with
|
||||
* DMA_CH_VALID, which are checked in the order in the array.
|
||||
*/
|
||||
|
||||
struct s3c24xx_dma_order_ch {
|
||||
unsigned int list[S3C2410_DMA_CHANNELS]; /* list of channels */
|
||||
unsigned int flags; /* flags */
|
||||
};
|
||||
|
||||
/* struct s3c24xx_dma_order
|
||||
*
|
||||
* information provided by either the core or the board to give the
|
||||
* dma system a hint on how to allocate channels
|
||||
*/
|
||||
|
||||
struct s3c24xx_dma_order {
|
||||
struct s3c24xx_dma_order_ch channels[DMACH_MAX];
|
||||
};
|
||||
|
||||
extern int s3c24xx_dma_order_set(struct s3c24xx_dma_order *map);
|
||||
|
||||
/* DMA init code, called from the cpu support code */
|
||||
|
||||
extern int s3c2410_dma_init(void);
|
||||
|
||||
extern int s3c24xx_dma_init(unsigned int channels, unsigned int irq,
|
||||
unsigned int stride);
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
/* linux/include/asm-arm/plat-s3c24xx/s3c2412.h
|
||||
*
|
||||
* Copyright (c) 2006 Simtec Electronics
|
||||
* Ben Dooks <ben@simtec.co.uk>
|
||||
*
|
||||
* Header file for s3c2412 cpu support
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_CPU_S3C2412
|
||||
|
||||
extern int s3c2412_init(void);
|
||||
|
||||
extern void s3c2412_map_io(struct map_desc *mach_desc, int size);
|
||||
|
||||
extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no);
|
||||
|
||||
extern void s3c2412_init_clocks(int xtal);
|
||||
|
||||
extern int s3c2412_baseclk_add(void);
|
||||
#else
|
||||
#define s3c2412_init_clocks NULL
|
||||
#define s3c2412_init_uarts NULL
|
||||
#define s3c2412_map_io NULL
|
||||
#define s3c2412_init NULL
|
||||
#endif
|
||||
Loading…
Reference in a new issue