aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 18:23:54 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 18:23:54 -0400
commit6969a434737dd82f7343e3fcd529bc320508d9fc (patch)
tree13d9982aa8fc5f5448ea678de2f1850d63802e79 /arch/mips/include
parent0fc377bd648d1935ea34665239e3f0a274b71698 (diff)
parent0453fb3c528c5eb3483441a466b24a4cb409eec5 (diff)
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (25 commits) MIPS: Use GCC __builtin_prefetch() to implement prefetch(). MIPS: Octeon: Serial port fixes for OCTEON simulator. MIPS: Octeon: Get rid of early serial. MIPS: AR7: prevent race between clock initialization and devices registration MIPS: AR7: use ar7_has_high_vlynq() to determine watchdog base address MIPS: BCM63xx: Avoid namespace clash on GPIO_DIR_{IN,OUT} MIPS: MTX-1: Update defconfig MIPS: BCM47xx: Update defconfig MIPS: RB532: Update defconfig MIPS: AR7: Update defconfig RTC: rtc-cmos: Fix binary mode support MIPS: Oprofile: Loongson: Cleanup the comments MIPS: Oprofile: Loongson: Cleanup of the macros MIPS: Oprofile: Loongson: Remove unused variable from loongson2_cpu_setup() MIPS: Oprofile: Loongson: Remove useless parentheses MIPS: Oprofile: Loongson: Unify macro for setting events MIPS: nofpu and nodsp only affect CPU0 MIPS: Clean up tables for bootmem allocation MIPS: Coding style cleanups of access of FCSR rounding mode bits MIPS: Loongson 2F: Add gpio/gpioilb support ...
Diffstat (limited to 'arch/mips/include')
-rw-r--r--arch/mips/include/asm/mach-au1x00/au1000.h34
-rw-r--r--arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h4
-rw-r--r--arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h4
-rw-r--r--arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h2
-rw-r--r--arch/mips/include/asm/mach-loongson/gpio.h35
-rw-r--r--arch/mips/include/asm/processor.h12
6 files changed, 74 insertions, 17 deletions
diff --git a/arch/mips/include/asm/mach-au1x00/au1000.h b/arch/mips/include/asm/mach-au1x00/au1000.h
index ae07423e6e82..e76941db2312 100644
--- a/arch/mips/include/asm/mach-au1x00/au1000.h
+++ b/arch/mips/include/asm/mach-au1x00/au1000.h
@@ -190,8 +190,6 @@ extern unsigned long au1xxx_calc_clock(void);
190/* PM: arch/mips/alchemy/common/sleeper.S, power.c, irq.c */ 190/* PM: arch/mips/alchemy/common/sleeper.S, power.c, irq.c */
191void au1xxx_save_and_sleep(void); 191void au1xxx_save_and_sleep(void);
192void au_sleep(void); 192void au_sleep(void);
193void save_au1xxx_intctl(void);
194void restore_au1xxx_intctl(void);
195 193
196 194
197/* SOC Interrupt numbers */ 195/* SOC Interrupt numbers */
@@ -835,6 +833,38 @@ enum soc_au1200_ints {
835#define MEM_STNAND_DATA 0x20 833#define MEM_STNAND_DATA 0x20
836#endif 834#endif
837 835
836
837/* Interrupt Controller register offsets */
838#define IC_CFG0RD 0x40
839#define IC_CFG0SET 0x40
840#define IC_CFG0CLR 0x44
841#define IC_CFG1RD 0x48
842#define IC_CFG1SET 0x48
843#define IC_CFG1CLR 0x4C
844#define IC_CFG2RD 0x50
845#define IC_CFG2SET 0x50
846#define IC_CFG2CLR 0x54
847#define IC_REQ0INT 0x54
848#define IC_SRCRD 0x58
849#define IC_SRCSET 0x58
850#define IC_SRCCLR 0x5C
851#define IC_REQ1INT 0x5C
852#define IC_ASSIGNRD 0x60
853#define IC_ASSIGNSET 0x60
854#define IC_ASSIGNCLR 0x64
855#define IC_WAKERD 0x68
856#define IC_WAKESET 0x68
857#define IC_WAKECLR 0x6C
858#define IC_MASKRD 0x70
859#define IC_MASKSET 0x70
860#define IC_MASKCLR 0x74
861#define IC_RISINGRD 0x78
862#define IC_RISINGCLR 0x78
863#define IC_FALLINGRD 0x7C
864#define IC_FALLINGCLR 0x7C
865#define IC_TESTBIT 0x80
866
867
838/* Interrupt Controller 0 */ 868/* Interrupt Controller 0 */
839#define IC0_CFG0RD 0xB0400040 869#define IC0_CFG0RD 0xB0400040
840#define IC0_CFG0SET 0xB0400040 870#define IC0_CFG0SET 0xB0400040
diff --git a/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h b/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h
index 8c6b1105ce0b..c8a553a36ba4 100644
--- a/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h
+++ b/arch/mips/include/asm/mach-au1x00/au1xxx_dbdma.h
@@ -358,10 +358,6 @@ u32 au1xxx_dbdma_put_dscr(u32 chanid, au1x_ddma_desc_t *dscr);
358u32 au1xxx_ddma_add_device(dbdev_tab_t *dev); 358u32 au1xxx_ddma_add_device(dbdev_tab_t *dev);
359extern void au1xxx_ddma_del_device(u32 devid); 359extern void au1xxx_ddma_del_device(u32 devid);
360void *au1xxx_ddma_get_nextptr_virt(au1x_ddma_desc_t *dp); 360void *au1xxx_ddma_get_nextptr_virt(au1x_ddma_desc_t *dp);
361#ifdef CONFIG_PM
362void au1xxx_dbdma_suspend(void);
363void au1xxx_dbdma_resume(void);
364#endif
365 361
366/* 362/*
367 * Flags for the put_source/put_dest functions. 363 * Flags for the put_source/put_dest functions.
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
index 43d4da0b1e9f..3999ec0aa7f5 100644
--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_gpio.h
@@ -20,7 +20,7 @@ static inline unsigned long bcm63xx_gpio_count(void)
20 } 20 }
21} 21}
22 22
23#define GPIO_DIR_OUT 0x0 23#define BCM63XX_GPIO_DIR_OUT 0x0
24#define GPIO_DIR_IN 0x1 24#define BCM63XX_GPIO_DIR_IN 0x1
25 25
26#endif /* !BCM63XX_GPIO_H */ 26#endif /* !BCM63XX_GPIO_H */
diff --git a/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h b/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h
index 16210cedd929..675bd8641d5a 100644
--- a/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h
+++ b/arch/mips/include/asm/mach-loongson/cpu-feature-overrides.h
@@ -52,6 +52,8 @@
52#define cpu_has_tx39_cache 0 52#define cpu_has_tx39_cache 0
53#define cpu_has_userlocal 0 53#define cpu_has_userlocal 0
54#define cpu_has_vce 0 54#define cpu_has_vce 0
55#define cpu_has_veic 0
56#define cpu_has_vint 0
55#define cpu_has_vtag_icache 0 57#define cpu_has_vtag_icache 0
56#define cpu_has_watch 1 58#define cpu_has_watch 1
57 59
diff --git a/arch/mips/include/asm/mach-loongson/gpio.h b/arch/mips/include/asm/mach-loongson/gpio.h
new file mode 100644
index 000000000000..e30e73d443df
--- /dev/null
+++ b/arch/mips/include/asm/mach-loongson/gpio.h
@@ -0,0 +1,35 @@
1/*
2 * STLS2F GPIO Support
3 *
4 * Copyright (c) 2008 Richard Liu, STMicroelectronics <richard.liu@st.com>
5 * Copyright (c) 2008-2010 Arnaud Patard <apatard@mandriva.com>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
11 */
12
13#ifndef __STLS2F_GPIO_H
14#define __STLS2F_GPIO_H
15
16#include <asm-generic/gpio.h>
17
18extern void gpio_set_value(unsigned gpio, int value);
19extern int gpio_get_value(unsigned gpio);
20extern int gpio_cansleep(unsigned gpio);
21
22/* The chip can do interrupt
23 * but it has not been tested and doc not clear
24 */
25static inline int gpio_to_irq(int gpio)
26{
27 return -EINVAL;
28}
29
30static inline int irq_to_gpio(int gpio)
31{
32 return -EINVAL;
33}
34
35#endif /* __STLS2F_GPIO_H */
diff --git a/arch/mips/include/asm/processor.h b/arch/mips/include/asm/processor.h
index ab387910009a..5d33b727acf5 100644
--- a/arch/mips/include/asm/processor.h
+++ b/arch/mips/include/asm/processor.h
@@ -344,16 +344,10 @@ unsigned long get_wchan(struct task_struct *p);
344#ifdef CONFIG_CPU_HAS_PREFETCH 344#ifdef CONFIG_CPU_HAS_PREFETCH
345 345
346#define ARCH_HAS_PREFETCH 346#define ARCH_HAS_PREFETCH
347#define prefetch(x) __builtin_prefetch((x), 0, 1)
347 348
348static inline void prefetch(const void *addr) 349#define ARCH_HAS_PREFETCHW
349{ 350#define prefetchw(x) __builtin_prefetch((x), 1, 1)
350 __asm__ __volatile__(
351 " .set mips4 \n"
352 " pref %0, (%1) \n"
353 " .set mips0 \n"
354 :
355 : "i" (Pref_Load), "r" (addr));
356}
357 351
358#endif 352#endif
359 353