Commit 22a60f19 authored by Linus Torvalds's avatar Linus Torvalds

Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] switch to new pci_get_bus_and_slot API
  [ARM] Update mach-types
  [ARM] Fix Zaurii keyboard/touchscreen drivers
  [ARM] Fix fallout from IRQ regs changes
  [ARM] 3890/1: [Jornada7xx] Addition of MCU commands into jornada720.h
  [ARM] 3889/1: [Jornada7xx] Addition of correct SDRAM params into cpu-sa1110.c
  [ARM] 3888/1: add pxa27x SSP FSRT register bit definition
parents 4e4bc305 7281c248
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/ioport.h> #include <linux/ioport.h>
#include <linux/irq.h>
#include <asm/io.h> #include <asm/io.h>
#include <asm/irq.h> #include <asm/irq.h>
......
...@@ -133,11 +133,13 @@ static void ixdp2400_pci_postinit(void) ...@@ -133,11 +133,13 @@ static void ixdp2400_pci_postinit(void)
struct pci_dev *dev; struct pci_dev *dev;
if (ixdp2x00_master_npu()) { if (ixdp2x00_master_npu()) {
dev = pci_find_slot(1, IXDP2400_SLAVE_ENET_DEVFN); dev = pci_get_bus_and_slot(1, IXDP2400_SLAVE_ENET_DEVFN);
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev)
} else { } else {
dev = pci_find_slot(1, IXDP2400_MASTER_ENET_DEVFN); dev = pci_get_bus_and_slot(1, IXDP2400_MASTER_ENET_DEVFN);
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev)
ixdp2x00_slave_pci_postinit(); ixdp2x00_slave_pci_postinit();
} }
......
...@@ -261,14 +261,16 @@ int __init ixdp2800_pci_init(void) ...@@ -261,14 +261,16 @@ int __init ixdp2800_pci_init(void)
pci_common_init(&ixdp2800_pci); pci_common_init(&ixdp2800_pci);
if (ixdp2x00_master_npu()) { if (ixdp2x00_master_npu()) {
dev = pci_find_slot(1, IXDP2800_SLAVE_ENET_DEVFN); dev = pci_get_bus_and_slot(1, IXDP2800_SLAVE_ENET_DEVFN);
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev);
ixdp2800_master_enable_slave(); ixdp2800_master_enable_slave();
ixdp2800_master_wait_for_slave_bus_scan(); ixdp2800_master_wait_for_slave_bus_scan();
} else { } else {
dev = pci_find_slot(1, IXDP2800_MASTER_ENET_DEVFN); dev = pci_get_bus_and_slot(1, IXDP2800_MASTER_ENET_DEVFN);
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev);
} }
} }
......
...@@ -241,11 +241,14 @@ void ixdp2x00_slave_pci_postinit(void) ...@@ -241,11 +241,14 @@ void ixdp2x00_slave_pci_postinit(void)
/* /*
* Remove PMC device is there is one * Remove PMC device is there is one
*/ */
if((dev = pci_find_slot(1, IXDP2X00_PMC_DEVFN))) if((dev = pci_get_bus_and_slot(1, IXDP2X00_PMC_DEVFN))) {
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev);
}
dev = pci_find_slot(0, IXDP2X00_21555_DEVFN); dev = pci_get_bus_and_slot(0, IXDP2X00_21555_DEVFN);
pci_remove_bus_device(dev); pci_remove_bus_device(dev);
pci_dev_put(dev);
} }
/************************************************************************** /**************************************************************************
......
...@@ -397,7 +397,7 @@ static void lubbock_mmc_poll(unsigned long data) ...@@ -397,7 +397,7 @@ static void lubbock_mmc_poll(unsigned long data)
if (LUB_IRQ_SET_CLR & (1 << 0)) if (LUB_IRQ_SET_CLR & (1 << 0))
mod_timer(&mmc_timer, jiffies + MMC_POLL_RATE); mod_timer(&mmc_timer, jiffies + MMC_POLL_RATE);
else { else {
(void) mmc_detect_int(LUBBOCK_SD_IRQ, (void *)data, NULL); (void) mmc_detect_int(LUBBOCK_SD_IRQ, (void *)data);
enable_irq(LUBBOCK_SD_IRQ); enable_irq(LUBBOCK_SD_IRQ);
} }
} }
......
...@@ -82,6 +82,14 @@ static struct sdram_params sdram_tbl[] __initdata = { ...@@ -82,6 +82,14 @@ static struct sdram_params sdram_tbl[] __initdata = {
.twr = 9, .twr = 9,
.refresh = 64000, .refresh = 64000,
.cas_latency = 3, .cas_latency = 3,
}, { /* Samsung K4S281632B-1H */
.name = "K4S281632b-1H",
.rows = 12,
.tck = 10,
.trp = 20,
.twr = 10,
.refresh = 64000,
.cas_latency = 3,
}, { /* Samsung KM416S4030CT */ }, { /* Samsung KM416S4030CT */
.name = "KM416S4030CT", .name = "KM416S4030CT",
.rows = 13, .rows = 13,
...@@ -366,6 +374,8 @@ static int __init sa1110_clk_init(void) ...@@ -366,6 +374,8 @@ static int __init sa1110_clk_init(void)
if (machine_is_h3100()) if (machine_is_h3100())
name = "KM416S4030CT"; name = "KM416S4030CT";
if (machine_is_jornada720())
name = "K4S281632B-1H";
} }
sdram = sa1110_find_sdram(name); sdram = sa1110_find_sdram(name);
......
...@@ -20,7 +20,8 @@ ...@@ -20,7 +20,8 @@
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/oprofile.h> #include <linux/oprofile.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <asm/irq.h> #include <linux/irq.h>
#include <asm/system.h> #include <asm/system.h>
#include "op_counter.h" #include "op_counter.h"
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# #
# Up to date versions of this file can be obtained from: # Up to date versions of this file can be obtained from:
# #
# http://www.arm.linux.org.uk/developer/machines/?action=download # http://www.arm.linux.org.uk/developer/machines/download.php
# #
# Please do not send patches to this file; it is automatically generated! # Please do not send patches to this file; it is automatically generated!
# To add an entry into this database, please see Documentation/arm/README, # To add an entry into this database, please see Documentation/arm/README,
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
# #
# http://www.arm.linux.org.uk/developer/machines/?action=new # http://www.arm.linux.org.uk/developer/machines/?action=new
# #
# Last update: Sat Sep 23 13:20:43 2006 # Last update: Mon Oct 16 21:13:36 2006
# #
# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number
# #
...@@ -1157,3 +1157,17 @@ adsturboxb MACH_ADSTURBOXB ADSTURBOXB 1143 ...@@ -1157,3 +1157,17 @@ adsturboxb MACH_ADSTURBOXB ADSTURBOXB 1143
oti4110 MACH_OTI4110 OTI4110 1144 oti4110 MACH_OTI4110 OTI4110 1144
hme_pxa MACH_HME_PXA HME_PXA 1145 hme_pxa MACH_HME_PXA HME_PXA 1145
deisterdca MACH_DEISTERDCA DEISTERDCA 1146 deisterdca MACH_DEISTERDCA DEISTERDCA 1146
ces_ssem2 MACH_CES_SSEM2 CES_SSEM2 1147
ces_mtr MACH_CES_MTR CES_MTR 1148
tds_avng_sbc MACH_TDS_AVNG_SBC TDS_AVNG_SBC 1149
everest MACH_EVEREST EVEREST 1150
pnx4010 MACH_PNX4010 PNX4010 1151
oxnas MACH_OXNAS OXNAS 1152
fiori MACH_FIORI FIORI 1153
ml1200 MACH_ML1200 ML1200 1154
cactus MACH_CACTUS CACTUS 1155
nb2xxx MACH_NB2XXX NB2XXX 1156
hw6900 MACH_HW6900 HW6900 1157
cdcs_quoll MACH_CDCS_QUOLL CDCS_QUOLL 1158
quicksilver MACH_QUICKSILVER QUICKSILVER 1159
uplat926 MACH_UPLAT926 UPLAT926 1160
...@@ -207,7 +207,7 @@ static irqreturn_t corgikbd_interrupt(int irq, void *dev_id) ...@@ -207,7 +207,7 @@ static irqreturn_t corgikbd_interrupt(int irq, void *dev_id)
static void corgikbd_timer_callback(unsigned long data) static void corgikbd_timer_callback(unsigned long data)
{ {
struct corgikbd *corgikbd_data = (struct corgikbd *) data; struct corgikbd *corgikbd_data = (struct corgikbd *) data;
corgikbd_scankeyboard(corgikbd_data, NULL); corgikbd_scankeyboard(corgikbd_data);
} }
/* /*
......
...@@ -186,7 +186,7 @@ static irqreturn_t locomokbd_interrupt(int irq, void *dev_id) ...@@ -186,7 +186,7 @@ static irqreturn_t locomokbd_interrupt(int irq, void *dev_id)
static void locomokbd_timer_callback(unsigned long data) static void locomokbd_timer_callback(unsigned long data)
{ {
struct locomokbd *locomokbd = (struct locomokbd *) data; struct locomokbd *locomokbd = (struct locomokbd *) data;
locomokbd_scankeyboard(locomokbd, NULL); locomokbd_scankeyboard(locomokbd);
} }
static int locomokbd_probe(struct locomo_dev *dev) static int locomokbd_probe(struct locomo_dev *dev)
......
...@@ -257,7 +257,7 @@ static void spitzkbd_timer_callback(unsigned long data) ...@@ -257,7 +257,7 @@ static void spitzkbd_timer_callback(unsigned long data)
{ {
struct spitzkbd *spitzkbd_data = (struct spitzkbd *) data; struct spitzkbd *spitzkbd_data = (struct spitzkbd *) data;
spitzkbd_scankeyboard(spitzkbd_data, NULL); spitzkbd_scankeyboard(spitzkbd_data);
} }
/* /*
......
...@@ -219,7 +219,7 @@ static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer) ...@@ -219,7 +219,7 @@ static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer)
static void corgi_ts_timer(unsigned long data) static void corgi_ts_timer(unsigned long data)
{ {
struct corgi_ts *corgits_data = (struct corgi_ts *) data; struct corgi_ts *corgits_data = (struct corgi_ts *) data;
ts_interrupt_main(corgits_data, 1, NULL); ts_interrupt_main(corgits_data, 1);
} }
static irqreturn_t ts_interrupt(int irq, void *dev_id) static irqreturn_t ts_interrupt(int irq, void *dev_id)
...@@ -237,7 +237,7 @@ static int corgits_suspend(struct platform_device *dev, pm_message_t state) ...@@ -237,7 +237,7 @@ static int corgits_suspend(struct platform_device *dev, pm_message_t state)
if (corgi_ts->pendown) { if (corgi_ts->pendown) {
del_timer_sync(&corgi_ts->timer); del_timer_sync(&corgi_ts->timer);
corgi_ts->tc.pressure = 0; corgi_ts->tc.pressure = 0;
new_data(corgi_ts, NULL); new_data(corgi_ts);
corgi_ts->pendown = 0; corgi_ts->pendown = 0;
} }
corgi_ts->power_mode = PWR_MODE_SUSPEND; corgi_ts->power_mode = PWR_MODE_SUSPEND;
......
...@@ -1681,6 +1681,7 @@ ...@@ -1681,6 +1681,7 @@
#define SSSR_TINT (1 << 19) /* Receiver Time-out Interrupt */ #define SSSR_TINT (1 << 19) /* Receiver Time-out Interrupt */
#define SSSR_PINT (1 << 18) /* Peripheral Trailing Byte Interrupt */ #define SSSR_PINT (1 << 18) /* Peripheral Trailing Byte Interrupt */
#define SSPSP_FSRT (1 << 25) /* Frame Sync Relative Timing */
#define SSPSP_DMYSTOP(x) (x << 23) /* Dummy Stop */ #define SSPSP_DMYSTOP(x) (x << 23) /* Dummy Stop */
#define SSPSP_SFRMWDTH(x) (x << 16) /* Serial Frame Width */ #define SSPSP_SFRMWDTH(x) (x << 16) /* Serial Frame Width */
#define SSPSP_SFRMDLY(x) (x << 9) /* Serial Frame Delay */ #define SSPSP_SFRMDLY(x) (x << 9) /* Serial Frame Delay */
......
...@@ -19,6 +19,20 @@ ...@@ -19,6 +19,20 @@
#define GPIO_JORNADA720_KEYBOARD_IRQ IRQ_GPIO0 #define GPIO_JORNADA720_KEYBOARD_IRQ IRQ_GPIO0
#define GPIO_JORNADA720_MOUSE_IRQ IRQ_GPIO9 #define GPIO_JORNADA720_MOUSE_IRQ IRQ_GPIO9
/* MCU COMMANDS */
#define MCU_GetBatteryData 0xc0
#define MCU_GetScanKeyCode 0x90
#define MCU_GetTouchSamples 0xa0
#define MCU_GetContrast 0xD0
#define MCU_SetContrast 0xD1
#define MCU_GetBrightness 0xD2
#define MCU_SetBrightness 0xD3
#define MCU_ContrastOff 0xD8
#define MCU_BrightnessOff 0xD9
#define MCU_PWMOFF 0xDF
#define MCU_TxDummy 0x11
#define MCU_ErrorCode 0x00
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
void jornada720_mcu_init(void); void jornada720_mcu_init(void);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment