Skip to content

Commit

Permalink
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
Browse files Browse the repository at this point in the history
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (124 commits)
  sh: allow building for both r2d boards in same binary.
  sh: fix r2d board detection
  sh: Discard .exit.text/.exit.data at runtime.
  sh: Fix up some section alignments in linker script.
  sh: Fix SH-4 DMAC CHCR masking.
  sh: Rip out left-over nommu cond syscall cruft.
  sh: Make kgdb i-cache flushing less inept.
  sh: kgdb section mismatches and tidying.
  sh: cleanup struct irqaction initializers.
  sh: early_printk tidying.
  video: pvr2fb: Add TV (RGB) support to Dreamcast PVR driver.
  sh: Conditionalize gUSA support.
  sh: Follow gUSA preempt changes in __switch_to().
  sh: Tidy up gUSA preempt handling.
  sh: __copy_user() optimizations for small copies.
  sh: clkfwk: Support multi-level clock propagation.
  sh: Fix URAM start address on SH7785.
  sh: Use boot_cpu_data for CPU probe.
  sh: Support extended mode TLB on SH-X3.
  sh: Bump MAX_ACTIVE_REGIONS for SH7785.
  ...
  • Loading branch information
Linus Torvalds committed Oct 13, 2007
2 parents 6faf035 + 68ee0f9 commit dcf397f
Show file tree
Hide file tree
Showing 142 changed files with 8,759 additions and 3,339 deletions.
53 changes: 40 additions & 13 deletions arch/sh/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ endchoice

config SH_FPU
bool "FPU support"
depends on CPU_SH4
depends on CPU_HAS_FPU
default y
help
Selecting this option will enable support for SH processors that
Expand Down Expand Up @@ -178,12 +178,6 @@ config CPU_HAS_INTEVT
config CPU_HAS_MASKREG_IRQ
bool

config CPU_HAS_INTC_IRQ
bool

config CPU_HAS_INTC2_IRQ
bool

config CPU_HAS_IPR_IRQ
bool

Expand All @@ -205,6 +199,9 @@ config CPU_HAS_PTEA
config CPU_HAS_DSP
bool

config CPU_HAS_FPU
bool

endmenu

menu "Board support"
Expand Down Expand Up @@ -258,7 +255,6 @@ config SH_7780_SOLUTION_ENGINE
bool "SolutionEngine7780"
select SOLUTION_ENGINE
select SYS_SUPPORTS_PCI
select CPU_HAS_INTC2_IRQ
depends on CPU_SUBTYPE_SH7780
help
Select 7780 SolutionEngine if configuring for a Renesas SH7780
Expand Down Expand Up @@ -309,7 +305,7 @@ config SH_MPC1211

config SH_SH03
bool "Interface CTP/PCI-SH03"
depends on CPU_SUBTYPE_SH7751 && BROKEN
depends on CPU_SUBTYPE_SH7751
select CPU_HAS_IPR_IRQ
select SYS_SUPPORTS_PCI
help
Expand Down Expand Up @@ -395,11 +391,22 @@ config SH_LBOX_RE2
help
Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.

config SH_X3PROTO
bool "SH-X3 Prototype board"
depends on CPU_SUBTYPE_SHX3

config SH_MAGIC_PANEL_R2
bool "Magic Panel R2"
depends on CPU_SUBTYPE_SH7720
help
Select Magic Panel R2 if configuring for Magic Panel R2.

endmenu

source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
source "arch/sh/boards/renesas/r7780rp/Kconfig"
source "arch/sh/boards/magicpanelr2/Kconfig"

menu "Timer and clock configuration"

Expand Down Expand Up @@ -563,10 +570,19 @@ config NR_CPUS

source "kernel/Kconfig.preempt"

config NODES_SHIFT
int
default "1"
depends on NEED_MULTIPLE_NODES
config GUSA
def_bool y
depends on !SMP
help
This enables support for gUSA (general UserSpace Atomicity).
This is the default implementation for both UP and non-ll/sc
CPUs, and is used by the libc, amongst others.

For additional information, design information can be found
in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.

This should only be disabled for special cases where alternate
atomicity implementations exist.

endmenu

Expand Down Expand Up @@ -659,6 +675,17 @@ config SUPERHYWAY
tristate "SuperHyway Bus support"
depends on CPU_SUBTYPE_SH4_202

config MAPLE
bool "Maple Bus support"
depends on SH_DREAMCAST
help
The Maple Bus is SEGA's serial communication bus for peripherals
on the Dreamcast. Without this bus support you won't be able to
get your Dreamcast keyboard etc to work, so most users
probably want to say 'Y' here, unless you are only using the
Dreamcast with a serial line terminal or a remote network
connection.

config CF_ENABLER
bool "Compact Flash Enabler support"
depends on SOLUTION_ENGINE || SH_SH03
Expand Down
6 changes: 5 additions & 1 deletion arch/sh/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,17 @@ config EARLY_SCIF_CONSOLE
serial I/O.

config EARLY_SCIF_CONSOLE_PORT
hex "SCIF port for early console"
hex
depends on EARLY_SCIF_CONSOLE
default "0xffe00000" if CPU_SUBTYPE_SH7780
default "0xffea0000" if CPU_SUBTYPE_SH7785
default "0xfffe9800" if CPU_SUBTYPE_SH7206
default "0xf8420000" if CPU_SUBTYPE_SH7619
default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
default "0xa4430000" if CPU_SUBTYPE_SH7720
default "0xffc30000" if CPU_SUBTYPE_SHX3
default "0xffe80000" if CPU_SH4
default "0x00000000"

config EARLY_PRINTK
bool "Early printk support"
Expand Down
4 changes: 3 additions & 1 deletion arch/sh/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -118,13 +118,15 @@ machdir-$(CONFIG_SH_7751_SYSTEMH) += renesas/systemh
machdir-$(CONFIG_SH_EDOSK7705) += renesas/edosk7705
machdir-$(CONFIG_SH_HIGHLANDER) += renesas/r7780rp
machdir-$(CONFIG_SH_7710VOIPGW) += renesas/sh7710voipgw
machdir-$(CONFIG_SH_X3PROTO) += renesas/x3proto
machdir-$(CONFIG_SH_SH4202_MICRODEV) += superh/microdev
machdir-$(CONFIG_SH_LANDISK) += landisk
machdir-$(CONFIG_SH_TITAN) += titan
machdir-$(CONFIG_SH_SHMIN) += shmin
machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE) += se/7206
machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE) += se/7619
machdir-$(CONFIG_SH_LBOX_RE2) += lboxre2
machdir-$(CONFIG_SH_MAGIC_PANEL_R2) += magicpanelr2

incdir-y := $(notdir $(machdir-y))

Expand All @@ -135,7 +137,7 @@ endif

# Companion chips
core-$(CONFIG_HD6446X_SERIES) += arch/sh/cchips/hd6446x/
core-$(CONFIG_VOYAGERGX) += arch/sh/cchips/voyagergx/
core-$(CONFIG_MFD_SM501) += arch/sh/cchips/voyagergx/

cpuincdir-$(CONFIG_CPU_SH2) := cpu-sh2
cpuincdir-$(CONFIG_CPU_SH2A) := cpu-sh2a
Expand Down
9 changes: 4 additions & 5 deletions arch/sh/boards/hp6xx/hp6xx_apm.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
#define APM_CRITICAL 10
#define APM_LOW 30

#define HP680_BATTERY_MAX 875
#define HP680_BATTERY_MIN 600
#define HP680_BATTERY_AC_ON 900
#define HP680_BATTERY_MAX 898
#define HP680_BATTERY_MIN 486
#define HP680_BATTERY_AC_ON 1023

#define MODNAME "hp6x0_apm"

Expand Down Expand Up @@ -65,7 +65,7 @@ static void hp6x0_apm_get_power_status(struct apm_power_info *info)

static irqreturn_t hp6x0_apm_interrupt(int irq, void *dev)
{
if (!apm_suspended)
if (!APM_DISABLED)
apm_queue_event(APM_USER_SUSPEND);

return IRQ_HANDLED;
Expand All @@ -91,7 +91,6 @@ static int __init hp6x0_apm_init(void)
static void __exit hp6x0_apm_exit(void)
{
free_irq(HP680_BTN_IRQ, 0);
apm_get_info = NULL;
}

module_init(hp6x0_apm_init);
Expand Down
35 changes: 25 additions & 10 deletions arch/sh/boards/hp6xx/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* May be copied or modified under the terms of the GNU General Public
* License. See linux/COPYING for more information.
*
* Setup code for an HP680 (internal peripherials only)
* Setup code for HP620/HP660/HP680/HP690 (internal peripherials only)
*/
#include <linux/types.h>
#include <linux/init.h>
Expand All @@ -19,7 +19,7 @@
#include <asm/cpu/dac.h>

#define SCPCR 0xa4000116
#define SCPDR 0xa4000136
#define SCPDR 0xa4000136

/* CF Slot */
static struct resource cf_ide_resources[] = {
Expand All @@ -34,7 +34,7 @@ static struct resource cf_ide_resources[] = {
.flags = IORESOURCE_MEM,
},
[2] = {
.start = 93,
.start = 77,
.flags = IORESOURCE_IRQ,
},
};
Expand All @@ -46,10 +46,22 @@ static struct platform_device cf_ide_device = {
.resource = cf_ide_resources,
};

static struct platform_device jornadakbd_device = {
.name = "jornada680_kbd",
.id = -1,
};

static struct platform_device *hp6xx_devices[] __initdata = {
&cf_ide_device,
&cf_ide_device,
&jornadakbd_device,
};

static void __init hp6xx_init_irq(void)
{
/* Gets touchscreen and powerbutton IRQ working */
plat_irq_setup_pins(IRQ_MODE_IRQ);
}

static int __init hp6xx_devices_setup(void)
{
return platform_add_devices(hp6xx_devices, ARRAY_SIZE(hp6xx_devices));
Expand All @@ -61,11 +73,11 @@ static void __init hp6xx_setup(char **cmdline_p)
u16 v;

v = inw(HD64461_STBCR);
v |= HD64461_STBCR_SURTST | HD64461_STBCR_SIRST |
HD64461_STBCR_STM1ST | HD64461_STBCR_STM0ST |
HD64461_STBCR_SAFEST | HD64461_STBCR_SPC0ST |
HD64461_STBCR_SMIAST | HD64461_STBCR_SAFECKE_OST |
HD64461_STBCR_SAFECKE_IST;
v |= HD64461_STBCR_SURTST | HD64461_STBCR_SIRST |
HD64461_STBCR_STM1ST | HD64461_STBCR_STM0ST |
HD64461_STBCR_SAFEST | HD64461_STBCR_SPC0ST |
HD64461_STBCR_SMIAST | HD64461_STBCR_SAFECKE_OST|
HD64461_STBCR_SAFECKE_IST;
#ifndef CONFIG_HD64461_ENABLER
v |= HD64461_STBCR_SPC1ST;
#endif
Expand Down Expand Up @@ -101,6 +113,9 @@ device_initcall(hp6xx_devices_setup);
static struct sh_machine_vector mv_hp6xx __initmv = {
.mv_name = "hp6xx",
.mv_setup = hp6xx_setup,
.mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM,
/* IRQ's : CPU(64) + CCHIP(16) + FREE_TO_USE(6) */
.mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM + 6,
.mv_irq_demux = hd64461_irq_demux,
/* Enable IRQ0 -> IRQ3 in IRQ_MODE */
.mv_init_irq = hp6xx_init_irq,
};
13 changes: 13 additions & 0 deletions arch/sh/boards/magicpanelr2/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
if SH_MAGIC_PANEL_R2

menu "Magic Panel R2 options"

config SH_MAGIC_PANEL_R2_VERSION
int SH_MAGIC_PANEL_R2_VERSION
default "3"
help
Set the version of the Magic Panel R2

endmenu

endif
5 changes: 5 additions & 0 deletions arch/sh/boards/magicpanelr2/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#
# Makefile for the Magic Panel specific parts
#

obj-y := setup.o
Loading

0 comments on commit dcf397f

Please sign in to comment.