Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (27 commits) sh: Fix up L2 cache probe. sh: Fix up SH-4A part probe. sh: Add support for SH7723 CPU subtype. sh: Fix up SH7763 build. sh: Add migor_ts support to MigoR sh: Add rs5c732b RTC support to MigoR sh: Add I2C support to MigoR sh: Add I2C platform data to sh7722 sh: MigoR NAND flash support using gen_flash sh: MigoR NOR flash support using physmap-flash sh: Fix up mach-types formatting from merge damage. sh: r7780rp: Hook up the I2C and SMBus platform devices. sh: Use phyical addresses for MigoR smc91x resources sh: Use physical addresses for sh7722 USBF resources sh: Add MigoR header file Fix sh_keysc double free sh: Fix up __access_ok() check for nommu. sh: Allow optimized clear/copy page routines to be used on SH-2. sh: Hook up the rest of the SH7770 serial ports. sh: Add support for Solution Engine SH7721 board ...
This commit is contained in:
@@ -25,7 +25,7 @@ static void __init check_bugs(void)
|
||||
case CPU_SH7619:
|
||||
*p++ = '2';
|
||||
break;
|
||||
case CPU_SH7203 ... CPU_SH7263:
|
||||
case CPU_SH7203 ... CPU_MXG:
|
||||
*p++ = '2';
|
||||
*p++ = 'a';
|
||||
break;
|
||||
|
||||
@@ -10,14 +10,14 @@
|
||||
#ifndef __ASM_CPU_SH4_FREQ_H
|
||||
#define __ASM_CPU_SH4_FREQ_H
|
||||
|
||||
#if defined(CONFIG_CPU_SUBTYPE_SH7722) || defined(CONFIG_CPU_SUBTYPE_SH7366)
|
||||
#if defined(CONFIG_CPU_SUBTYPE_SH7722) || \
|
||||
defined(CONFIG_CPU_SUBTYPE_SH7723) || \
|
||||
defined(CONFIG_CPU_SUBTYPE_SH7366)
|
||||
#define FRQCR 0xa4150000
|
||||
#define VCLKCR 0xa4150004
|
||||
#define SCLKACR 0xa4150008
|
||||
#define SCLKBCR 0xa415000c
|
||||
#if defined(CONFIG_CPU_SUBTYPE_SH7722)
|
||||
#define IrDACLKCR 0xa4150010
|
||||
#endif
|
||||
#elif defined(CONFIG_CPU_SUBTYPE_SH7763) || \
|
||||
defined(CONFIG_CPU_SUBTYPE_SH7780)
|
||||
#define FRQCR 0xffc80000
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
#ifndef __ASM_SH_CPU_SH4_RTC_H
|
||||
#define __ASM_SH_CPU_SH4_RTC_H
|
||||
|
||||
#ifdef CONFIG_CPU_SUBTYPE_SH7723
|
||||
#define rtc_reg_size sizeof(u16)
|
||||
#else
|
||||
#define rtc_reg_size sizeof(u32)
|
||||
#endif
|
||||
|
||||
#define RTC_BIT_INVERTED 0x40 /* bug on SH7750, SH7750S */
|
||||
#define RTC_DEF_CAPABILITIES RTC_CAP_4_DIGIT_YEAR
|
||||
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
#ifndef __ASM_SH_MIGOR_H
|
||||
#define __ASM_SH_MIGOR_H
|
||||
|
||||
/*
|
||||
* linux/include/asm-sh/migor.h
|
||||
*
|
||||
* Copyright (C) 2008 Renesas Solutions
|
||||
*
|
||||
* Portions Copyright (C) 2007 Nobuhiro Iwamatsu
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*
|
||||
*/
|
||||
#include <asm/addrspace.h>
|
||||
|
||||
/* GPIO */
|
||||
#define MSTPCR0 0xa4150030
|
||||
#define MSTPCR1 0xa4150034
|
||||
#define MSTPCR2 0xa4150038
|
||||
|
||||
#define PORT_PACR 0xa4050100
|
||||
#define PORT_PDCR 0xa4050106
|
||||
#define PORT_PECR 0xa4050108
|
||||
#define PORT_PHCR 0xa405010e
|
||||
#define PORT_PJCR 0xa4050110
|
||||
#define PORT_PKCR 0xa4050112
|
||||
#define PORT_PLCR 0xa4050114
|
||||
#define PORT_PMCR 0xa4050116
|
||||
#define PORT_PRCR 0xa405011c
|
||||
#define PORT_PWCR 0xa4050146
|
||||
#define PORT_PXCR 0xa4050148
|
||||
#define PORT_PYCR 0xa405014a
|
||||
#define PORT_PZCR 0xa405014c
|
||||
#define PORT_PADR 0xa4050120
|
||||
#define PORT_PWDR 0xa4050166
|
||||
|
||||
#define PORT_HIZCRA 0xa4050158
|
||||
#define PORT_HIZCRC 0xa405015c
|
||||
|
||||
#define PORT_MSELCRB 0xa4050182
|
||||
|
||||
#define MSTPCR1 0xa4150034
|
||||
#define MSTPCR2 0xa4150038
|
||||
|
||||
#define PORT_PSELA 0xa405014e
|
||||
#define PORT_PSELB 0xa4050150
|
||||
#define PORT_PSELC 0xa4050152
|
||||
#define PORT_PSELD 0xa4050154
|
||||
|
||||
#define PORT_HIZCRA 0xa4050158
|
||||
#define PORT_HIZCRB 0xa405015a
|
||||
#define PORT_HIZCRC 0xa405015c
|
||||
|
||||
#define BSC_CS6ABCR 0xfec1001c
|
||||
|
||||
#endif /* __ASM_SH_MIGOR_H */
|
||||
@@ -16,7 +16,7 @@ enum cpu_type {
|
||||
CPU_SH7619,
|
||||
|
||||
/* SH-2A types */
|
||||
CPU_SH7203, CPU_SH7206, CPU_SH7263,
|
||||
CPU_SH7203, CPU_SH7206, CPU_SH7263, CPU_MXG,
|
||||
|
||||
/* SH-3 types */
|
||||
CPU_SH7705, CPU_SH7706, CPU_SH7707,
|
||||
@@ -29,7 +29,8 @@ enum cpu_type {
|
||||
CPU_SH7760, CPU_SH4_202, CPU_SH4_501,
|
||||
|
||||
/* SH-4A types */
|
||||
CPU_SH7763, CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785, CPU_SHX3,
|
||||
CPU_SH7763, CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785,
|
||||
CPU_SH7723, CPU_SHX3,
|
||||
|
||||
/* SH4AL-DSP types */
|
||||
CPU_SH7343, CPU_SH7722, CPU_SH7366,
|
||||
|
||||
+12
-10
@@ -55,11 +55,11 @@
|
||||
#define PA_SCSPTR1 (PA_BCR+0x0524) /* SCIF1 Serial Port control */
|
||||
#define PA_SCLSR1 (PA_BCR+0x0528) /* SCIF1 Line Status control */
|
||||
#define PA_SCRER1 (PA_BCR+0x052c) /* SCIF1 Serial Error control */
|
||||
#define PA_ICCR (PA_BCR+0x0600) /* Serial control */
|
||||
#define PA_SAR (PA_BCR+0x0602) /* Serial Slave control */
|
||||
#define PA_MDR (PA_BCR+0x0604) /* Serial Mode control */
|
||||
#define PA_ADR1 (PA_BCR+0x0606) /* Serial Address1 control */
|
||||
#define PA_DAR1 (PA_BCR+0x0646) /* Serial Data1 control */
|
||||
#define PA_SMCR (PA_BCR+0x0600) /* 2-wire Serial control */
|
||||
#define PA_SMSMADR (PA_BCR+0x0602) /* 2-wire Serial Slave control */
|
||||
#define PA_SMMR (PA_BCR+0x0604) /* 2-wire Serial Mode control */
|
||||
#define PA_SMSADR1 (PA_BCR+0x0606) /* 2-wire Serial Address1 control */
|
||||
#define PA_SMTRDR1 (PA_BCR+0x0646) /* 2-wire Serial Data1 control */
|
||||
#define PA_VERREG (PA_BCR+0x0700) /* FPGA Version Register */
|
||||
#define PA_POFF (PA_BCR+0x0800) /* System Power Off control */
|
||||
#define PA_PMR (PA_BCR+0x0900) /* */
|
||||
@@ -107,11 +107,11 @@
|
||||
#define PA_SCFCR (PA_BCR+0x040c) /* SCIF FIFO control */
|
||||
#define PA_SCFDR (PA_BCR+0x040e) /* SCIF FIFO data control */
|
||||
#define PA_SCLSR (PA_BCR+0x0412) /* SCIF Line Status control */
|
||||
#define PA_ICCR (PA_BCR+0x0500) /* Serial control */
|
||||
#define PA_SAR (PA_BCR+0x0502) /* Serial Slave control */
|
||||
#define PA_MDR (PA_BCR+0x0504) /* Serial Mode control */
|
||||
#define PA_ADR1 (PA_BCR+0x0506) /* Serial Address1 control */
|
||||
#define PA_DAR1 (PA_BCR+0x0546) /* Serial Data1 control */
|
||||
#define PA_SMCR (PA_BCR+0x0500) /* 2-wire Serial control */
|
||||
#define PA_SMSMADR (PA_BCR+0x0502) /* 2-wire Serial Slave control */
|
||||
#define PA_SMMR (PA_BCR+0x0504) /* 2-wire Serial Mode control */
|
||||
#define PA_SMSADR1 (PA_BCR+0x0506) /* 2-wire Serial Address1 control */
|
||||
#define PA_SMTRDR1 (PA_BCR+0x0546) /* 2-wire Serial Data1 control */
|
||||
#define PA_VERREG (PA_BCR+0x0600) /* FPGA Version Register */
|
||||
|
||||
#define PA_AX88796L 0xa5800400 /* AX88796L Area */
|
||||
@@ -190,6 +190,8 @@
|
||||
#define IRQ_TP (HL_FPGA_IRQ_BASE + 12)
|
||||
#define IRQ_RTC (HL_FPGA_IRQ_BASE + 13)
|
||||
#define IRQ_TH_ALERT (HL_FPGA_IRQ_BASE + 14)
|
||||
#define IRQ_SCIF0 (HL_FPGA_IRQ_BASE + 15)
|
||||
#define IRQ_SCIF1 (HL_FPGA_IRQ_BASE + 16)
|
||||
|
||||
unsigned char *highlander_init_irq_r7780mp(void);
|
||||
unsigned char *highlander_init_irq_r7780rp(void);
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
* Copyright (C) 2008 Renesas Solutions Corp.
|
||||
*
|
||||
* Hitachi UL SolutionEngine 7721 Support.
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __ASM_SH_SE7721_H
|
||||
#define __ASM_SH_SE7721_H
|
||||
#include <asm/addrspace.h>
|
||||
|
||||
/* Box specific addresses. */
|
||||
#define SE_AREA0_WIDTH 2 /* Area0: 32bit */
|
||||
#define PA_ROM 0xa0000000 /* EPROM */
|
||||
#define PA_ROM_SIZE 0x00200000 /* EPROM size 2M byte */
|
||||
#define PA_FROM 0xa1000000 /* Flash-ROM */
|
||||
#define PA_FROM_SIZE 0x01000000 /* Flash-ROM size 16M byte */
|
||||
#define PA_EXT1 0xa4000000
|
||||
#define PA_EXT1_SIZE 0x04000000
|
||||
#define PA_SDRAM 0xaC000000 /* SDRAM(Area3) 64MB */
|
||||
#define PA_SDRAM_SIZE 0x04000000
|
||||
|
||||
#define PA_EXT4 0xb0000000
|
||||
#define PA_EXT4_SIZE 0x04000000
|
||||
|
||||
#define PA_PERIPHERAL 0xB8000000
|
||||
|
||||
#define PA_PCIC PA_PERIPHERAL
|
||||
#define PA_MRSHPC (PA_PERIPHERAL + 0x003fffe0)
|
||||
#define PA_MRSHPC_MW1 (PA_PERIPHERAL + 0x00400000)
|
||||
#define PA_MRSHPC_MW2 (PA_PERIPHERAL + 0x00500000)
|
||||
#define PA_MRSHPC_IO (PA_PERIPHERAL + 0x00600000)
|
||||
#define MRSHPC_OPTION (PA_MRSHPC + 6)
|
||||
#define MRSHPC_CSR (PA_MRSHPC + 8)
|
||||
#define MRSHPC_ISR (PA_MRSHPC + 10)
|
||||
#define MRSHPC_ICR (PA_MRSHPC + 12)
|
||||
#define MRSHPC_CPWCR (PA_MRSHPC + 14)
|
||||
#define MRSHPC_MW0CR1 (PA_MRSHPC + 16)
|
||||
#define MRSHPC_MW1CR1 (PA_MRSHPC + 18)
|
||||
#define MRSHPC_IOWCR1 (PA_MRSHPC + 20)
|
||||
#define MRSHPC_MW0CR2 (PA_MRSHPC + 22)
|
||||
#define MRSHPC_MW1CR2 (PA_MRSHPC + 24)
|
||||
#define MRSHPC_IOWCR2 (PA_MRSHPC + 26)
|
||||
#define MRSHPC_CDCR (PA_MRSHPC + 28)
|
||||
#define MRSHPC_PCIC_INFO (PA_MRSHPC + 30)
|
||||
|
||||
#define PA_LED 0xB6800000 /* 8bit LED */
|
||||
#define PA_FPGA 0xB7000000 /* FPGA base address */
|
||||
|
||||
#define MRSHPC_IRQ0 10
|
||||
|
||||
#define FPGA_ILSR1 (PA_FPGA + 0x02)
|
||||
#define FPGA_ILSR2 (PA_FPGA + 0x03)
|
||||
#define FPGA_ILSR3 (PA_FPGA + 0x04)
|
||||
#define FPGA_ILSR4 (PA_FPGA + 0x05)
|
||||
#define FPGA_ILSR5 (PA_FPGA + 0x06)
|
||||
#define FPGA_ILSR6 (PA_FPGA + 0x07)
|
||||
#define FPGA_ILSR7 (PA_FPGA + 0x08)
|
||||
#define FPGA_ILSR8 (PA_FPGA + 0x09)
|
||||
|
||||
void init_se7721_IRQ(void);
|
||||
|
||||
#define __IO_PREFIX se7721
|
||||
#include <asm/io_generic.h>
|
||||
|
||||
#endif /* __ASM_SH_SE7721_H */
|
||||
@@ -77,6 +77,8 @@
|
||||
#define PORT_PSELA 0xA405014EUL
|
||||
#define PORT_PYCR 0xA405014AUL
|
||||
#define PORT_PZCR 0xA405014CUL
|
||||
#define PORT_HIZCRA 0xA4050158UL
|
||||
#define PORT_HIZCRC 0xA405015CUL
|
||||
|
||||
/* IRQ */
|
||||
#define IRQ0_IRQ 32
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#ifndef __ASM_KEYSC_H__
|
||||
#define __ASM_KEYSC_H__
|
||||
|
||||
#define SH_KEYSC_MAXKEYS 30
|
||||
|
||||
struct sh_keysc_info {
|
||||
enum { SH_KEYSC_MODE_1, SH_KEYSC_MODE_2, SH_KEYSC_MODE_3 } mode;
|
||||
int scan_timing; /* 0 -> 7, see KYCR1, SCN[2:0] */
|
||||
int delay;
|
||||
int keycodes[SH_KEYSC_MAXKEYS];
|
||||
};
|
||||
|
||||
#endif /* __ASM_KEYSC_H__ */
|
||||
@@ -146,6 +146,8 @@ extern unsigned int instruction_size(unsigned int insn);
|
||||
|
||||
extern unsigned long cached_to_uncached;
|
||||
|
||||
extern struct dentry *sh_debugfs_root;
|
||||
|
||||
/* XXX
|
||||
* disable hlt during certain critical i/o operations
|
||||
*/
|
||||
|
||||
@@ -55,13 +55,10 @@ static inline void set_fs(mm_segment_t s)
|
||||
* If we don't have an MMU (or if its disabled) the only thing we really have
|
||||
* to look out for is if the address resides somewhere outside of what
|
||||
* available RAM we have.
|
||||
*
|
||||
* TODO: This check could probably also stand to be restricted somewhat more..
|
||||
* though it still does the Right Thing(tm) for the time being.
|
||||
*/
|
||||
static inline int __access_ok(unsigned long addr, unsigned long size)
|
||||
{
|
||||
return ((addr >= memory_start) && ((addr + size) < memory_end));
|
||||
return 1;
|
||||
}
|
||||
#else /* CONFIG_MMU */
|
||||
#define __addr_ok(addr) \
|
||||
|
||||
Reference in New Issue
Block a user