mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-27 00:51:35 +00:00
[PATCH] m32r: Support M32104UT target platform
This patch is for supporting a new target platform, Renesas M32104UT evaluation board. The M32104UT is an eval board based on an uT-Engine specification. This board has an MMU-less M32R family processor, M32104. http://www-wa0.personal-media.co.jp/pmc/archive/te/te_m32104_e.pdf This board is one of the most popular M32R platform, so we have ported Linux/M32R to it. Signed-off-by: Naoto Sugai <Sugai.Naoto@ak.MitsubishiElectric.co.jp> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
60c83c77c4
commit
9287d95ea1
18 changed files with 1407 additions and 29 deletions
|
@ -69,12 +69,12 @@
|
|||
} while(0)
|
||||
|
||||
/* Interrupt Control */
|
||||
#if !defined(CONFIG_CHIP_M32102)
|
||||
#if !defined(CONFIG_CHIP_M32102) && !defined(CONFIG_CHIP_M32104)
|
||||
#define local_irq_enable() \
|
||||
__asm__ __volatile__ ("setpsw #0x40 -> nop": : :"memory")
|
||||
#define local_irq_disable() \
|
||||
__asm__ __volatile__ ("clrpsw #0x40 -> nop": : :"memory")
|
||||
#else /* CONFIG_CHIP_M32102 */
|
||||
#else /* CONFIG_CHIP_M32102 || CONFIG_CHIP_M32104 */
|
||||
static inline void local_irq_enable(void)
|
||||
{
|
||||
unsigned long tmpreg;
|
||||
|
@ -96,7 +96,7 @@ static inline void local_irq_disable(void)
|
|||
"mvtc %0, psw \n\t"
|
||||
: "=&r" (tmpreg0), "=&r" (tmpreg1) : : "cbit", "memory");
|
||||
}
|
||||
#endif /* CONFIG_CHIP_M32102 */
|
||||
#endif /* CONFIG_CHIP_M32102 || CONFIG_CHIP_M32104 */
|
||||
|
||||
#define local_save_flags(x) \
|
||||
__asm__ __volatile__("mvfc %0,psw" : "=r"(x) : /* no input */)
|
||||
|
@ -105,13 +105,13 @@ static inline void local_irq_disable(void)
|
|||
__asm__ __volatile__("mvtc %0,psw" : /* no outputs */ \
|
||||
: "r" (x) : "cbit", "memory")
|
||||
|
||||
#if !defined(CONFIG_CHIP_M32102)
|
||||
#if !(defined(CONFIG_CHIP_M32102) || defined(CONFIG_CHIP_M32104))
|
||||
#define local_irq_save(x) \
|
||||
__asm__ __volatile__( \
|
||||
"mvfc %0, psw; \n\t" \
|
||||
"clrpsw #0x40 -> nop; \n\t" \
|
||||
: "=r" (x) : /* no input */ : "memory")
|
||||
#else /* CONFIG_CHIP_M32102 */
|
||||
#else /* CONFIG_CHIP_M32102 || CONFIG_CHIP_M32104 */
|
||||
#define local_irq_save(x) \
|
||||
({ \
|
||||
unsigned long tmpreg; \
|
||||
|
@ -124,7 +124,7 @@ static inline void local_irq_disable(void)
|
|||
: "=r" (x), "=&r" (tmpreg) \
|
||||
: : "cbit", "memory"); \
|
||||
})
|
||||
#endif /* CONFIG_CHIP_M32102 */
|
||||
#endif /* CONFIG_CHIP_M32102 || CONFIG_CHIP_M32104 */
|
||||
|
||||
#define irqs_disabled() \
|
||||
({ \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue