mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 00:20:08 +00:00
linux: move some older kernels to meta-extras
Move kernels for retired machines to meta-extras Signed-off-by: Joshua Lock <josh@linux.intel.com>
This commit is contained in:
@@ -1,30 +0,0 @@
|
||||
---
|
||||
arch/arm/oprofile/op_model_v6.c | 8 +-------
|
||||
1 file changed, 1 insertion(+), 7 deletions(-)
|
||||
|
||||
Index: linux-g/arch/arm/oprofile/op_model_v6.c
|
||||
===================================================================
|
||||
--- linux-g.orig/arch/arm/oprofile/op_model_v6.c 2006-11-08 12:18:41.000000000 +0000
|
||||
+++ linux-g/arch/arm/oprofile/op_model_v6.c 2007-05-23 14:11:19.000000000 +0100
|
||||
@@ -54,12 +54,6 @@
|
||||
#define EVT_DCACHE_MISS 0x0B
|
||||
#define EVT_DCACE_WRITE_BACK 0x0C
|
||||
#define EVT_PC_CHANGED 0x0D
|
||||
-#define EVT_BCU_REQUEST 0x10
|
||||
-#define EVT_BCU_FULL 0x11
|
||||
-#define EVT_BCU_DRAIN 0x12
|
||||
-#define EVT_BCU_ECC_NO_ELOG 0x14
|
||||
-#define EVT_BCU_1_BIT_ERR 0x15
|
||||
-#define EVT_RMW 0x16
|
||||
/* EVT_CCNT is not hardware defined */
|
||||
#define EVT_CCNT 0xFE
|
||||
#define EVT_UNUSED 0xFF
|
||||
@@ -88,7 +82,7 @@ struct pmu_type {
|
||||
static struct pmu_type pmu_parms[] = {
|
||||
{
|
||||
.id = PMU_ARM11,
|
||||
- .name = "arm/arm11",
|
||||
+ .name = "arm/armv6",
|
||||
.num_counters = 3,
|
||||
#ifdef CONFIG_ARCH_OMAP2
|
||||
.interrupt = 3,
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,415 +0,0 @@
|
||||
---
|
||||
arch/arm/mach-omap1/board-nokia770.c | 60 +++++++++++++++++++++++++++++++----
|
||||
arch/arm/mach-omap1/mmu.c | 1
|
||||
drivers/cbus/tahvo-usb.c | 4 +-
|
||||
drivers/i2c/chips/isp1301_omap.c | 1
|
||||
drivers/mtd/mtdchar.c | 6 +++
|
||||
drivers/mtd/mtdpart.c | 5 ++
|
||||
drivers/mtd/nand/omap-hw.c | 55 +++++++++++++++-----------------
|
||||
drivers/serial/8250.c | 2 +
|
||||
drivers/video/omap/omapfb_main.c | 4 +-
|
||||
include/asm-arm/arch-omap/keypad.h | 3 +
|
||||
include/asm-arm/arch-omap/serial.h | 16 +++++++++
|
||||
11 files changed, 118 insertions(+), 39 deletions(-)
|
||||
|
||||
Index: linux-g/arch/arm/mach-omap1/board-nokia770.c
|
||||
===================================================================
|
||||
--- linux-g.orig/arch/arm/mach-omap1/board-nokia770.c 2006-11-08 13:18:39.000000000 +0100
|
||||
+++ linux-g/arch/arm/mach-omap1/board-nokia770.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/spi/ads7846.h>
|
||||
+#include <linux/workqueue.h>
|
||||
+#include <linux/delay.h>
|
||||
|
||||
#include <asm/hardware.h>
|
||||
#include <asm/mach-types.h>
|
||||
@@ -33,9 +35,12 @@
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <asm/arch/omapfb.h>
|
||||
#include <asm/arch/hwa742.h>
|
||||
+#include <asm/arch/lcd_mipid.h>
|
||||
|
||||
#include "../plat-omap/dsp/dsp_common.h"
|
||||
|
||||
+#define ADS7846_PENDOWN_GPIO 15
|
||||
+
|
||||
static void __init omap_nokia770_init_irq(void)
|
||||
{
|
||||
/* On Nokia 770, the SleepX signal is masked with an
|
||||
@@ -75,9 +80,11 @@
|
||||
};
|
||||
|
||||
static struct omap_kp_platform_data nokia770_kp_data = {
|
||||
- .rows = 8,
|
||||
- .cols = 8,
|
||||
- .keymap = nokia770_keymap
|
||||
+ .rows = 8,
|
||||
+ .cols = 8,
|
||||
+ .keymap = nokia770_keymap,
|
||||
+ .keymapsize = ARRAY_SIZE(nokia770_keymap),
|
||||
+ .delay = 4,
|
||||
};
|
||||
|
||||
static struct platform_device nokia770_kp_device = {
|
||||
@@ -94,6 +101,41 @@
|
||||
&nokia770_kp_device,
|
||||
};
|
||||
|
||||
+static void mipid_shutdown(struct mipid_platform_data *pdata)
|
||||
+{
|
||||
+ if (pdata->nreset_gpio != -1) {
|
||||
+ printk(KERN_INFO "shutdown LCD\n");
|
||||
+ omap_set_gpio_dataout(pdata->nreset_gpio, 0);
|
||||
+ msleep(120);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static struct mipid_platform_data nokia770_mipid_platform_data = {
|
||||
+ .shutdown = mipid_shutdown,
|
||||
+};
|
||||
+
|
||||
+static void mipid_dev_init(void)
|
||||
+{
|
||||
+ const struct omap_lcd_config *conf;
|
||||
+
|
||||
+ conf = omap_get_config(OMAP_TAG_LCD, struct omap_lcd_config);
|
||||
+ if (conf != NULL) {
|
||||
+ nokia770_mipid_platform_data.nreset_gpio = conf->nreset_gpio;
|
||||
+ nokia770_mipid_platform_data.data_lines = conf->data_lines;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void ads7846_dev_init(void)
|
||||
+{
|
||||
+ if (omap_request_gpio(ADS7846_PENDOWN_GPIO) < 0)
|
||||
+ printk(KERN_ERR "can't get ads7846 pen down GPIO\n");
|
||||
+}
|
||||
+
|
||||
+static int ads7846_get_pendown_state(void)
|
||||
+{
|
||||
+ return !omap_get_gpio_datain(ADS7846_PENDOWN_GPIO);
|
||||
+}
|
||||
+
|
||||
static struct ads7846_platform_data nokia770_ads7846_platform_data __initdata = {
|
||||
.x_max = 0x0fff,
|
||||
.y_max = 0x0fff,
|
||||
@@ -101,14 +143,17 @@
|
||||
.pressure_max = 255,
|
||||
.debounce_max = 10,
|
||||
.debounce_tol = 3,
|
||||
+ .debounce_rep = 1,
|
||||
+ .get_pendown_state = ads7846_get_pendown_state,
|
||||
};
|
||||
|
||||
static struct spi_board_info nokia770_spi_board_info[] __initdata = {
|
||||
[0] = {
|
||||
- .modalias = "lcd_lph8923",
|
||||
+ .modalias = "lcd_mipid",
|
||||
.bus_num = 2,
|
||||
.chip_select = 3,
|
||||
.max_speed_hz = 12000000,
|
||||
+ .platform_data = &nokia770_mipid_platform_data,
|
||||
},
|
||||
[1] = {
|
||||
.modalias = "ads7846",
|
||||
@@ -189,7 +234,7 @@
|
||||
},
|
||||
};
|
||||
|
||||
-static struct omap_board_config_kernel nokia770_config[] = {
|
||||
+static struct omap_board_config_kernel nokia770_config[] __initdata = {
|
||||
{ OMAP_TAG_USB, NULL },
|
||||
{ OMAP_TAG_MMC, &nokia770_mmc_config },
|
||||
};
|
||||
@@ -235,7 +280,7 @@
|
||||
printk("HP connected\n");
|
||||
}
|
||||
|
||||
-static void codec_delayed_power_down(void *arg)
|
||||
+static void codec_delayed_power_down(struct work_struct *work)
|
||||
{
|
||||
down(&audio_pwr_sem);
|
||||
if (audio_pwr_state == -1)
|
||||
@@ -326,9 +371,12 @@
|
||||
ARRAY_SIZE(nokia770_spi_board_info));
|
||||
omap_board_config = nokia770_config;
|
||||
omap_board_config_size = ARRAY_SIZE(nokia770_config);
|
||||
+ omap_gpio_init();
|
||||
omap_serial_init();
|
||||
omap_dsp_init();
|
||||
hwa742_dev_init();
|
||||
+ ads7846_dev_init();
|
||||
+ mipid_dev_init();
|
||||
}
|
||||
|
||||
static void __init omap_nokia770_map_io(void)
|
||||
Index: linux-g/arch/arm/mach-omap1/mmu.c
|
||||
===================================================================
|
||||
--- linux-g.orig/arch/arm/mach-omap1/mmu.c 2007-08-13 13:54:01.000000000 +0200
|
||||
+++ linux-g/arch/arm/mach-omap1/mmu.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -29,6 +29,7 @@
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/err.h>
|
||||
+#include <linux/delay.h>
|
||||
#include "mmu.h"
|
||||
#include <asm/tlbflush.h>
|
||||
|
||||
Index: linux-g/drivers/cbus/tahvo-usb.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/cbus/tahvo-usb.c 2006-11-08 13:18:51.000000000 +0100
|
||||
+++ linux-g/drivers/cbus/tahvo-usb.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -135,8 +135,8 @@
|
||||
if ((!(OTG_CTRL_REG & OTG_DRIVER_SEL)) &&
|
||||
tu->otg.host && tu->otg.state == OTG_STATE_A_HOST) {
|
||||
/* role is host */
|
||||
- usb_bus_start_enum(tu->otg.host,
|
||||
- tu->otg.host->otg_port);
|
||||
+ //usb_bus_start_enum(tu->otg.host,
|
||||
+ // tu->otg.host->otg_port);
|
||||
}
|
||||
OTG_IRQ_SRC_REG = DRIVER_SWITCH;
|
||||
} else
|
||||
Index: linux-g/drivers/i2c/chips/isp1301_omap.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/i2c/chips/isp1301_omap.c 2006-11-08 13:18:51.000000000 +0100
|
||||
+++ linux-g/drivers/i2c/chips/isp1301_omap.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -32,6 +32,7 @@
|
||||
#include <linux/usb_gadget.h>
|
||||
#include <linux/usb.h>
|
||||
#include <linux/usb_otg.h>
|
||||
+#include <linux/usb/otg.h>
|
||||
#include <linux/i2c.h>
|
||||
#include <linux/workqueue.h>
|
||||
|
||||
Index: linux-g/drivers/mtd/mtdchar.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/mtd/mtdchar.c 2006-11-08 13:18:55.000000000 +0100
|
||||
+++ linux-g/drivers/mtd/mtdchar.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -622,6 +622,12 @@
|
||||
break;
|
||||
}
|
||||
|
||||
+ case MEMSETOOBSEL:
|
||||
+ {
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
case MEMGETBADBLOCK:
|
||||
{
|
||||
loff_t offs;
|
||||
Index: linux-g/drivers/mtd/mtdpart.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/mtd/mtdpart.c 2006-11-08 13:18:55.000000000 +0100
|
||||
+++ linux-g/drivers/mtd/mtdpart.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -200,6 +200,11 @@
|
||||
return -EINVAL;
|
||||
instr->addr += part->offset;
|
||||
ret = part->master->erase(part->master, instr);
|
||||
+ if (ret) {
|
||||
+ if (instr->fail_addr != 0xffffffff)
|
||||
+ instr->fail_addr -= part->offset;
|
||||
+ instr->addr -= part->offset;
|
||||
+ }
|
||||
return ret;
|
||||
}
|
||||
|
||||
Index: linux-g/drivers/mtd/nand/omap-hw.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/mtd/nand/omap-hw.c 2006-11-08 13:18:55.000000000 +0100
|
||||
+++ linux-g/drivers/mtd/nand/omap-hw.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -386,11 +386,6 @@
|
||||
return nand_read_reg8(NND_ACCESS);
|
||||
}
|
||||
|
||||
-static void omap_nand_write_byte(struct mtd_info *mtd, u_char byte)
|
||||
-{
|
||||
- nand_write_reg8(NND_ACCESS, byte);
|
||||
-}
|
||||
-
|
||||
static int omap_nand_dev_ready(struct mtd_info *mtd)
|
||||
{
|
||||
u32 l;
|
||||
@@ -425,9 +420,9 @@
|
||||
if (command == NAND_CMD_SEQIN) {
|
||||
int readcmd;
|
||||
|
||||
- if (column >= mtd->oobblock) {
|
||||
+ if (column >= mtd->writesize) {
|
||||
/* OOB area */
|
||||
- column -= mtd->oobblock;
|
||||
+ column -= mtd->writesize;
|
||||
readcmd = NAND_CMD_READOOB;
|
||||
} else if (column < 256) {
|
||||
/* First 256 bytes --> READ0 */
|
||||
@@ -458,7 +453,7 @@
|
||||
struct nand_chip *this = mtd->priv;
|
||||
|
||||
if (command == NAND_CMD_READOOB) {
|
||||
- column += mtd->oobblock;
|
||||
+ column += mtd->writesize;
|
||||
command = NAND_CMD_READ0;
|
||||
}
|
||||
switch (command) {
|
||||
@@ -495,7 +490,8 @@
|
||||
int n;
|
||||
struct nand_chip *this = mtd->priv;
|
||||
|
||||
- if (this->eccmode == NAND_ECC_HW12_2048)
|
||||
+ /* Ex NAND_ECC_HW12_2048 */
|
||||
+ if ((this->ecc.mode == NAND_ECC_HW) && (this->ecc.size == 2048))
|
||||
n = 4;
|
||||
else
|
||||
n = 1;
|
||||
@@ -642,7 +638,8 @@
|
||||
int block_count = 0, i, r;
|
||||
|
||||
this = mtd->priv;
|
||||
- if (this->eccmode == NAND_ECC_HW12_2048)
|
||||
+ /* Ex NAND_ECC_HW12_2048 */
|
||||
+ if ((this->ecc.mode == NAND_ECC_HW) && (this->ecc.size == 2048))
|
||||
block_count = 4;
|
||||
else
|
||||
block_count = 1;
|
||||
@@ -672,12 +669,12 @@
|
||||
{
|
||||
static const char *part_parsers[] = { "cmdlinepart", NULL };
|
||||
struct mtd_partition *parts;
|
||||
- const struct omap_flash_part_config *cfg;
|
||||
+ const struct omap_flash_part_str_config *cfg;
|
||||
char *part_str = NULL;
|
||||
size_t part_str_len;
|
||||
int c;
|
||||
|
||||
- cfg = omap_get_var_config(OMAP_TAG_FLASH_PART, &part_str_len);
|
||||
+ cfg = omap_get_var_config(OMAP_TAG_FLASH_PART_STR, &part_str_len);
|
||||
if (cfg != NULL) {
|
||||
part_str = kmalloc(part_str_len + 1, GFP_KERNEL);
|
||||
if (part_str == NULL)
|
||||
@@ -794,19 +791,20 @@
|
||||
|
||||
/* Used from chip select and nand_command() */
|
||||
this->read_byte = omap_nand_read_byte;
|
||||
- this->write_byte = omap_nand_write_byte;
|
||||
|
||||
- this->select_chip = omap_nand_select_chip;
|
||||
- this->dev_ready = omap_nand_dev_ready;
|
||||
- this->chip_delay = 0;
|
||||
- this->eccmode = NAND_ECC_HW3_512;
|
||||
- this->cmdfunc = omap_nand_command;
|
||||
- this->write_buf = omap_nand_write_buf;
|
||||
- this->read_buf = omap_nand_read_buf;
|
||||
- this->verify_buf = omap_nand_verify_buf;
|
||||
- this->calculate_ecc = omap_nand_calculate_ecc;
|
||||
- this->correct_data = omap_nand_correct_data;
|
||||
- this->enable_hwecc = omap_nand_enable_hwecc;
|
||||
+ this->select_chip = omap_nand_select_chip;
|
||||
+ this->dev_ready = omap_nand_dev_ready;
|
||||
+ this->chip_delay = 0;
|
||||
+ this->ecc.mode = NAND_ECC_HW;
|
||||
+ this->ecc.bytes = 3;
|
||||
+ this->ecc.size = 512;
|
||||
+ this->cmdfunc = omap_nand_command;
|
||||
+ this->write_buf = omap_nand_write_buf;
|
||||
+ this->read_buf = omap_nand_read_buf;
|
||||
+ this->verify_buf = omap_nand_verify_buf;
|
||||
+ this->ecc.calculate = omap_nand_calculate_ecc;
|
||||
+ this->ecc.correct = omap_nand_correct_data;
|
||||
+ this->ecc.hwctl = omap_nand_enable_hwecc;
|
||||
|
||||
nand_write_reg(NND_SYSCFG, 0x1); /* Enable auto idle */
|
||||
nand_write_reg(NND_PSC_CLK, 10);
|
||||
@@ -822,11 +820,10 @@
|
||||
l = nand_read_reg(NND_CTRL);
|
||||
l |= 1 << 4; /* Set the A8 bit in CTRL reg */
|
||||
nand_write_reg(NND_CTRL, l);
|
||||
- this->eccmode = NAND_ECC_HW12_2048;
|
||||
- this->eccsteps = 1;
|
||||
- this->eccsize = 2048;
|
||||
- this->eccbytes = 12;
|
||||
- omap_mtd->eccsize = 2048;
|
||||
+ this->ecc.mode = NAND_ECC_HW;
|
||||
+ this->ecc.steps = 1;
|
||||
+ this->ecc.size = 2048;
|
||||
+ this->ecc.bytes = 12;
|
||||
nand_write_reg(NND_ECC_SELECT, 6);
|
||||
}
|
||||
|
||||
Index: linux-g/drivers/serial/8250.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/serial/8250.c 2006-11-08 13:18:59.000000000 +0100
|
||||
+++ linux-g/drivers/serial/8250.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -44,6 +44,8 @@
|
||||
#include <asm/io.h>
|
||||
#include <asm/irq.h>
|
||||
|
||||
+#include <asm/arch/serial.h>
|
||||
+
|
||||
#include "8250.h"
|
||||
|
||||
/*
|
||||
Index: linux-g/drivers/video/omap/omapfb_main.c
|
||||
===================================================================
|
||||
--- linux-g.orig/drivers/video/omap/omapfb_main.c 2007-08-13 13:54:01.000000000 +0200
|
||||
+++ linux-g/drivers/video/omap/omapfb_main.c 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -110,7 +110,7 @@
|
||||
|
||||
#ifdef CONFIG_FB_OMAP_LCDC_EXTERNAL
|
||||
#ifdef CONFIG_ARCH_OMAP1
|
||||
-extern struct lcd_ctrl_extif omap1_ext_if;
|
||||
+extern struct lcd_ctrl_extif sossi_extif;
|
||||
#else
|
||||
extern struct lcd_ctrl_extif omap2_ext_if;
|
||||
#endif
|
||||
@@ -1658,7 +1658,7 @@
|
||||
#ifdef CONFIG_ARCH_OMAP1
|
||||
fbdev->int_ctrl = &omap1_int_ctrl;
|
||||
#ifdef CONFIG_FB_OMAP_LCDC_EXTERNAL
|
||||
- fbdev->ext_if = &omap1_ext_if;
|
||||
+ fbdev->ext_if = &sossi_extif;
|
||||
#endif
|
||||
#else /* OMAP2 */
|
||||
fbdev->int_ctrl = &omap2_int_ctrl;
|
||||
Index: linux-g/include/asm-arm/arch-omap/keypad.h
|
||||
===================================================================
|
||||
--- linux-g.orig/include/asm-arm/arch-omap/keypad.h 2006-11-08 13:19:11.000000000 +0100
|
||||
+++ linux-g/include/asm-arm/arch-omap/keypad.h 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -14,7 +14,10 @@
|
||||
int rows;
|
||||
int cols;
|
||||
int *keymap;
|
||||
+ unsigned int keymapsize;
|
||||
unsigned int rep:1;
|
||||
+ unsigned long delay;
|
||||
+ unsigned int dbounce:1;
|
||||
/* specific to OMAP242x*/
|
||||
unsigned int *row_gpios;
|
||||
unsigned int *col_gpios;
|
||||
Index: linux-g/include/asm-arm/arch-omap/serial.h
|
||||
===================================================================
|
||||
--- linux-g.orig/include/asm-arm/arch-omap/serial.h 2007-08-13 13:54:01.000000000 +0200
|
||||
+++ linux-g/include/asm-arm/arch-omap/serial.h 2007-08-13 16:23:15.000000000 +0200
|
||||
@@ -26,4 +26,20 @@
|
||||
#define OMAP1510_BASE_BAUD (12000000/16)
|
||||
#define OMAP16XX_BASE_BAUD (48000000/16)
|
||||
|
||||
+#define is_omap_port(p) ({int __ret = 0; \
|
||||
+ if (p == IO_ADDRESS(OMAP_UART1_BASE) || \
|
||||
+ p == IO_ADDRESS(OMAP_UART2_BASE) || \
|
||||
+ p == IO_ADDRESS(OMAP_UART3_BASE)) \
|
||||
+ __ret = 1; \
|
||||
+ __ret; \
|
||||
+ })
|
||||
+
|
||||
+#define is_omap_port(p) ({int __ret = 0; \
|
||||
+ if (p == IO_ADDRESS(OMAP_UART1_BASE) || \
|
||||
+ p == IO_ADDRESS(OMAP_UART2_BASE) || \
|
||||
+ p == IO_ADDRESS(OMAP_UART3_BASE)) \
|
||||
+ __ret = 1; \
|
||||
+ __ret; \
|
||||
+ })
|
||||
+
|
||||
#endif
|
||||
File diff suppressed because it is too large
Load Diff
BIN
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,60 +0,0 @@
|
||||
Index: linux-2.6.21/drivers/cbus/retu-pwrbutton.c
|
||||
===================================================================
|
||||
--- linux-2.6.21.orig/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:44:18.000000000 +0000
|
||||
+++ linux-2.6.21/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:46:22.000000000 +0000
|
||||
@@ -53,7 +53,9 @@
|
||||
state = PWRBTN_PRESSED;
|
||||
|
||||
if (pwrbtn_state != state) {
|
||||
- input_report_key(pwrbtn_dev, KEY_POWER, state);
|
||||
+ input_report_key(pwrbtn_dev, KEY_SUSPEND, state);
|
||||
+ if (state == PWRBTN_PRESSED)
|
||||
+ input_event(pwrbtn_dev, EV_PWR, KEY_SUSPEND, 1);
|
||||
pwrbtn_state = state;
|
||||
}
|
||||
}
|
||||
@@ -92,8 +94,8 @@
|
||||
if (!pwrbtn_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
- pwrbtn_dev->evbit[0] = BIT(EV_KEY);
|
||||
- pwrbtn_dev->keybit[LONG(KEY_POWER)] = BIT(KEY_POWER);
|
||||
+ pwrbtn_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_PWR);
|
||||
+ pwrbtn_dev->keybit[LONG(KEY_SUSPEND)] = BIT(KEY_SUSPEND);
|
||||
pwrbtn_dev->name = "retu-pwrbutton";
|
||||
|
||||
input_register_device(pwrbtn_dev);
|
||||
Index: linux-2.6.21/drivers/char/apm-emulation.c
|
||||
===================================================================
|
||||
--- linux-2.6.21.orig/drivers/char/apm-emulation.c 2008-02-21 00:32:41.000000000 +0000
|
||||
+++ linux-2.6.21/drivers/char/apm-emulation.c 2008-02-21 00:33:43.000000000 +0000
|
||||
@@ -206,10 +206,18 @@
|
||||
return ret;
|
||||
}
|
||||
|
||||
+static in_suspend;
|
||||
+
|
||||
static void apm_suspend(void)
|
||||
{
|
||||
struct apm_user *as;
|
||||
- int err = pm_suspend(PM_SUSPEND_MEM);
|
||||
+ int err;
|
||||
+
|
||||
+ in_suspend = 1;
|
||||
+
|
||||
+ err = pm_suspend(PM_SUSPEND_MEM);
|
||||
+
|
||||
+ in_suspend = 0;
|
||||
|
||||
/*
|
||||
* Anyone on the APM queues will think we're still suspended.
|
||||
@@ -663,6 +671,9 @@
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
+ if (in_suspend)
|
||||
+ return;
|
||||
+
|
||||
spin_lock_irqsave(&kapmd_queue_lock, flags);
|
||||
queue_add_event(&kapmd_queue, event);
|
||||
spin_unlock_irqrestore(&kapmd_queue_lock, flags);
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,60 +0,0 @@
|
||||
Index: linux-2.6.21/drivers/cbus/retu-pwrbutton.c
|
||||
===================================================================
|
||||
--- linux-2.6.21.orig/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:44:18.000000000 +0000
|
||||
+++ linux-2.6.21/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:46:22.000000000 +0000
|
||||
@@ -53,7 +53,9 @@
|
||||
state = PWRBTN_PRESSED;
|
||||
|
||||
if (pwrbtn_state != state) {
|
||||
- input_report_key(pwrbtn_dev, KEY_POWER, state);
|
||||
+ input_report_key(pwrbtn_dev, KEY_SUSPEND, state);
|
||||
+ if (state == PWRBTN_PRESSED)
|
||||
+ input_event(pwrbtn_dev, EV_PWR, KEY_SUSPEND, 1);
|
||||
pwrbtn_state = state;
|
||||
}
|
||||
}
|
||||
@@ -92,8 +94,8 @@
|
||||
if (!pwrbtn_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
- pwrbtn_dev->evbit[0] = BIT(EV_KEY);
|
||||
- pwrbtn_dev->keybit[LONG(KEY_POWER)] = BIT(KEY_POWER);
|
||||
+ pwrbtn_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_PWR);
|
||||
+ pwrbtn_dev->keybit[LONG(KEY_SUSPEND)] = BIT(KEY_SUSPEND);
|
||||
pwrbtn_dev->name = "retu-pwrbutton";
|
||||
|
||||
input_register_device(pwrbtn_dev);
|
||||
Index: linux-2.6.21/drivers/char/apm-emulation.c
|
||||
===================================================================
|
||||
--- linux-2.6.21.orig/drivers/char/apm-emulation.c 2008-02-21 00:32:41.000000000 +0000
|
||||
+++ linux-2.6.21/drivers/char/apm-emulation.c 2008-02-21 00:33:43.000000000 +0000
|
||||
@@ -206,10 +206,18 @@
|
||||
return ret;
|
||||
}
|
||||
|
||||
+static in_suspend;
|
||||
+
|
||||
static void apm_suspend(void)
|
||||
{
|
||||
struct apm_user *as;
|
||||
- int err = pm_suspend(PM_SUSPEND_MEM);
|
||||
+ int err;
|
||||
+
|
||||
+ in_suspend = 1;
|
||||
+
|
||||
+ err = pm_suspend(PM_SUSPEND_MEM);
|
||||
+
|
||||
+ in_suspend = 0;
|
||||
|
||||
/*
|
||||
* Anyone on the APM queues will think we're still suspended.
|
||||
@@ -663,6 +671,9 @@
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
+ if (in_suspend)
|
||||
+ return;
|
||||
+
|
||||
spin_lock_irqsave(&kapmd_queue_lock, flags);
|
||||
queue_add_event(&kapmd_queue, event);
|
||||
spin_unlock_irqrestore(&kapmd_queue_lock, flags);
|
||||
@@ -1,46 +0,0 @@
|
||||
SECTION = "kernel"
|
||||
DESCRIPTION = "Linux kernel for Nokia 770/800"
|
||||
LICENSE = "GPL"
|
||||
|
||||
KERNEL_OUTPUT = "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
|
||||
KERNEL_CCSUFFIX = "-3.4.4+csl-arm-2005q3-2"
|
||||
|
||||
inherit kernel
|
||||
|
||||
RPROVIDES_kernel-image = "hostap-modules"
|
||||
|
||||
COMPATIBLE_MACHINE = "nokia770|nokia800"
|
||||
|
||||
RPSRC = "http://www.rpsys.net/openzaurus/patches/archive"
|
||||
|
||||
do_configure_prepend() {
|
||||
|
||||
rm -f ${S}/.config || true
|
||||
|
||||
if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
|
||||
echo "CONFIG_AEABI=y" >> ${S}/.config
|
||||
echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
|
||||
else
|
||||
echo "# CONFIG_AEABI is not set" >> ${S}/.config
|
||||
echo "# CONFIG_OABI_COMPAT is not set" >> ${S}/.config
|
||||
fi
|
||||
|
||||
sed -e '/CONFIG_AEABI/d' \
|
||||
-e '/CONFIG_OABI_COMPAT=/d' \
|
||||
'${WORKDIR}/defconfig' >>'${S}/.config'
|
||||
|
||||
yes '' | oe_runmake oldconfig
|
||||
|
||||
}
|
||||
|
||||
do_deploy() {
|
||||
install -d ${DEPLOY_DIR_IMAGE}
|
||||
install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin
|
||||
cd ${DEPLOY_DIR_IMAGE}
|
||||
ln -sf ${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin ${KERNEL_IMAGETYPE}-${MACHINE}.bin
|
||||
tar -cvzf ${DEPLOY_DIR_IMAGE}/modules-${KERNEL_RELEASE}-${MACHINE}.tgz -C ${D} lib
|
||||
}
|
||||
|
||||
do_deploy[dirs] = "${S}"
|
||||
|
||||
addtask deploy before do_populate_sysroot after do_install
|
||||
@@ -1,18 +0,0 @@
|
||||
require linux-nokia800.inc
|
||||
|
||||
PR = "r7"
|
||||
SRC_URI = "http://repository.maemo.org/pool/maemo3.1/free/source/kernel-source-rx-34_2.6.18.orig.tar.gz \
|
||||
http://repository.maemo.org/pool/maemo3.1/free/source/kernel-source-rx-34_2.6.18-osso40.diff.gz;patch=1 \
|
||||
${RPSRC}/lzo_kernel-r0.patch;patch=1 \
|
||||
${RPSRC}/lzo_jffs2-r0.patch;patch=1 \
|
||||
${RPSRC}/lzo_crypto-r0b.patch;patch=1 \
|
||||
${RPSRC}/lzo_jffs2_lzomode-r0.patch;patch=1 \
|
||||
${RPSRC}/lzo_jffs2_sysfs-r0.patch;patch=1 \
|
||||
file://fix_oprofile.patch;patch=1 \
|
||||
file://sumversion-fix.patch;patch=1 \
|
||||
file://defconfig"
|
||||
|
||||
SRC_URI_append_nokia770 = " file://nokia770_nand_fix.patch;patch=1"
|
||||
|
||||
S = "${WORKDIR}/linux-g"
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
require linux-nokia800.inc
|
||||
PR = "r0"
|
||||
|
||||
DEFAULT_PREFERENCE_nokia770 = "-1"
|
||||
|
||||
SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2 \
|
||||
file://kernel-source_2.6.21-200823maemo6.diff.gz;patch=1 \
|
||||
http://www.rpsys.net/openzaurus/patches/archive/input_power-r7.patch;patch=1 \
|
||||
file://suspend-button.patch;patch=1 \
|
||||
file://defconfig"
|
||||
|
||||
S = "${WORKDIR}/linux-2.6.21"
|
||||
|
||||
do_install_append () {
|
||||
mkdir -p ${D}/kernel/include/drivers/media/video/omap/
|
||||
cp -f drivers/media/video/omap/tcm825x.h ${D}/kernel/include/drivers/media/video/omap/
|
||||
}
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
require linux-nokia800.inc
|
||||
PR = "r5"
|
||||
|
||||
DEFAULT_PREFERENCE_nokia770 = "-1"
|
||||
|
||||
SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2 \
|
||||
http://repository.maemo.org/pool/os2008/free/source/k/kernel-source-rx-34/kernel-source-rx-34_2.6.21.0-osso71.diff.gz;patch=1 \
|
||||
http://www.rpsys.net/openzaurus/patches/archive/input_power-r7.patch;patch=1 \
|
||||
file://suspend-button.patch;patch=1 \
|
||||
file://sumversion-fix.patch;patch=1 \
|
||||
file://defconfig"
|
||||
|
||||
S = "${WORKDIR}/linux-2.6.21"
|
||||
|
||||
do_install_append () {
|
||||
mkdir -p ${D}/kernel/include/drivers/media/video/omap/
|
||||
cp -f drivers/media/video/omap/tcm825x.h ${D}/kernel/include/drivers/media/video/omap/
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
RDEPENDS_kernel-image += "mtd-utils"
|
||||
|
||||
pkg_postinst_kernel-image () {
|
||||
if test "x$D" != "x"; then
|
||||
exit 1
|
||||
else
|
||||
if [ -f ${sysconfdir}/default/flashkernel ] ; then
|
||||
echo "Upgrading Kernel in Flash"
|
||||
echo "DO NOT stop this process"
|
||||
|
||||
MTD_KERNEL_PARTITION=`cat /proc/mtd | grep kernel | cut -d':' -f1`
|
||||
MTD_KERNEL_PARTITION=/dev/$MTD_KERNEL_PARTITION
|
||||
|
||||
if [ "x$MTD_KERNEL_PARTITION" = "x" ] ; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
${bindir}/flash_eraseall $MTD_KERNEL_PARTITION
|
||||
${bindir}/nandwrite -p $MTD_KERNEL_PARTITION /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION}
|
||||
else
|
||||
touch ${sysconfdir}/default/flashkernel
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
Backport of this patch here
|
||||
|
||||
http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg270684.html
|
||||
|
||||
Needed for 2.6.24 to compile with gcc 4.3
|
||||
Index: linux-2.6.24/include/linux/time.h
|
||||
===================================================================
|
||||
--- linux-2.6.24.orig/include/linux/time.h 2008-05-28 15:39:46.000000000 -0700
|
||||
+++ linux-2.6.24/include/linux/time.h 2008-05-28 15:40:48.000000000 -0700
|
||||
@@ -173,6 +173,10 @@
|
||||
{
|
||||
ns += a->tv_nsec;
|
||||
while(unlikely(ns >= NSEC_PER_SEC)) {
|
||||
+ /* The following asm() prevents the compiler from
|
||||
+ * optimising this loop into a modulo operation. */
|
||||
+ asm("" : "+r"(ns));
|
||||
+
|
||||
ns -= NSEC_PER_SEC;
|
||||
a->tv_sec++;
|
||||
}
|
||||
@@ -1,53 +0,0 @@
|
||||
require linux.inc
|
||||
require linux-openmoko.inc
|
||||
|
||||
DESCRIPTION = "Linux 2.6.x (development) kernel for FIC SmartPhones shipping w/ Openmoko"
|
||||
|
||||
PE = "1"
|
||||
PV = "${KERNEL_RELEASE}+git${SRCREV}"
|
||||
PR = "r2"
|
||||
|
||||
SRC_URI = "git://git.openmoko.org/git/kernel.git;protocol=git;branch=stable \
|
||||
file://timespec_add_ns_avoid_udivdi3.patch;patch=1"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_configure_prepend() {
|
||||
cp -f ${S}/defconfig-${CONFIG_NAME} ${WORKDIR}/defconfig
|
||||
}
|
||||
|
||||
##############################################################
|
||||
# kernel image resides on a seperate flash partition (for now)
|
||||
#
|
||||
ALLOW_EMPTY = "1"
|
||||
|
||||
CMDLINE = "unused -- bootloader passes ATAG list"
|
||||
|
||||
COMPATIBLE_HOST = "arm.*-linux"
|
||||
COMPATIBLE_MACHINE = "om-gta01|om-gta02"
|
||||
DEFAULT_PREFERENCE = "1"
|
||||
|
||||
KERNEL_IMAGETYPE = "uImage"
|
||||
KERNEL_RELEASE = "2.6.24"
|
||||
KERNEL_VERSION = "${KERNEL_RELEASE}"
|
||||
|
||||
CONFIG_NAME_om-gta01 = "gta01"
|
||||
CONFIG_NAME_om-gta02 = "gta02"
|
||||
|
||||
UBOOT_ENTRYPOINT = "30008000"
|
||||
|
||||
###############################################################
|
||||
# module configs specific to this kernel
|
||||
#
|
||||
|
||||
# usb
|
||||
module_autoload_ohci-hcd = "ohci-hcd"
|
||||
module_autoload_hci_usb = "hci_usb"
|
||||
module_autoload_g_ether = "g_ether"
|
||||
# audio
|
||||
module_autoload_snd-soc-neo1973-wm8753 = "snd-soc-neo1973-wm8753"
|
||||
module_autoload_snd-soc-neo1973-gta02-wm8753 = "snd-soc-neo1973-gta02-wm8753"
|
||||
module_autoload_snd-pcm-oss = "snd-pcm-oss"
|
||||
module_autoload_snd-mixer-oss = "snd-mixer-oss"
|
||||
# sd/mmc
|
||||
module_autoload_s3cmci = "s3cmci"
|
||||
Reference in New Issue
Block a user