From 3b9579c41c42d7c19126660308515501730816f2 Mon Sep 17 00:00:00 2001 From: Paul Bolle Date: Tue, 14 Oct 2008 18:13:45 +0200 Subject: [PATCH] --- yaml --- r: 118184 b: refs/heads/master c: fb881f785f0003fc904c6db82909d937d968bcc9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/Documentation/arm/empeg/README | 13 +++++ trunk/Documentation/arm/empeg/ir.txt | 49 +++++++++++++++++++ trunk/Documentation/arm/empeg/mkdevs | 11 +++++ trunk/MAINTAINERS | 5 -- trunk/arch/arm/common/sharpsl_pm.c | 19 ++----- trunk/arch/arm/mach-at91/include/mach/gpio.h | 2 - trunk/arch/arm/mach-ep93xx/core.c | 6 +-- trunk/arch/arm/mach-imx/include/mach/gpio.h | 3 -- .../arch/arm/mach-ixp4xx/include/mach/gpio.h | 3 -- .../arch/arm/mach-ks8695/include/mach/gpio.h | 3 -- trunk/arch/arm/mach-ns9xxx/gpio.c | 2 - trunk/arch/arm/mach-orion5x/gpio.c | 2 - trunk/arch/arm/mach-pxa/corgi_pm.c | 4 +- .../arch/arm/mach-pxa/include/mach/sharpsl.h | 1 - trunk/arch/arm/mach-pxa/spitz.c | 12 ----- trunk/arch/arm/mach-pxa/spitz_pm.c | 4 +- trunk/arch/arm/mm/proc-xsc3.S | 2 +- trunk/drivers/leds/leds-da903x.c | 2 +- trunk/drivers/mmc/host/mmci.c | 5 +- trunk/drivers/serial/Kconfig | 4 +- trunk/drivers/serial/netx-serial.c | 4 +- trunk/drivers/video/backlight/corgi_lcd.c | 4 +- 23 files changed, 93 insertions(+), 69 deletions(-) create mode 100644 trunk/Documentation/arm/empeg/README create mode 100644 trunk/Documentation/arm/empeg/ir.txt create mode 100644 trunk/Documentation/arm/empeg/mkdevs diff --git a/[refs] b/[refs] index 50a9b168c4fc..4bb2e051fbeb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9c6568501cbf731a910db2fcb7d094977dcb154c +refs/heads/master: fb881f785f0003fc904c6db82909d937d968bcc9 diff --git a/trunk/Documentation/arm/empeg/README b/trunk/Documentation/arm/empeg/README new file mode 100644 index 000000000000..09cc8d03ae58 --- /dev/null +++ b/trunk/Documentation/arm/empeg/README @@ -0,0 +1,13 @@ +Empeg, Ltd's Empeg MP3 Car Audio Player + +The initial design is to go in your car, but you can use it at home, on a +boat... almost anywhere. The principle is to store CD-quality music using +MPEG technology onto a hard disk in the unit, and use the power of the +embedded computer to serve up the music you want. + +For more details, see: + + http://www.empeg.com + + + diff --git a/trunk/Documentation/arm/empeg/ir.txt b/trunk/Documentation/arm/empeg/ir.txt new file mode 100644 index 000000000000..10a297450164 --- /dev/null +++ b/trunk/Documentation/arm/empeg/ir.txt @@ -0,0 +1,49 @@ +Infra-red driver documentation. + +Mike Crowe +(C) Empeg Ltd 1999 + +Not a lot here yet :-) + +The Kenwood KCA-R6A remote control generates a sequence like the following: + +Go low for approx 16T (Around 9000us) +Go high for approx 8T (Around 4000us) +Go low for less than 2T (Around 750us) + +For each of the 32 bits + Go high for more than 2T (Around 1500us) == 1 + Go high for less than T (Around 400us) == 0 + Go low for less than 2T (Around 750us) + +Rather than repeat a signal when the button is held down certain buttons +generate the following code to indicate repetition. + +Go low for approx 16T +Go high for approx 4T +Go low for less than 2T + +(By removing the <2T from the start of the sequence and placing at the end + it can be considered a stop bit but I found it easier to deal with it at + the start). + +The 32 bits are encoded as XxYy where x and y are the actual data values +while X and Y are the logical inverses of the associated data values. Using +LSB first yields sensible codes for the numbers. + +All codes are of the form b9xx + +The numeric keys generate the code 0x where x is the number pressed. + +Tuner 1c +Tape 1d +CD 1e +CD-MD-CH 1f +Track- 0a +Track+ 0b +Rewind 0c +FF 0d +DNPP 5e +Play/Pause 0e +Vol+ 14 +Vol- 15 diff --git a/trunk/Documentation/arm/empeg/mkdevs b/trunk/Documentation/arm/empeg/mkdevs new file mode 100644 index 000000000000..7a85e28d14f3 --- /dev/null +++ b/trunk/Documentation/arm/empeg/mkdevs @@ -0,0 +1,11 @@ +#!/bin/sh +mknod /dev/display c 244 0 +mknod /dev/ir c 242 0 +mknod /dev/usb0 c 243 0 +mknod /dev/audio c 245 4 +mknod /dev/dsp c 245 3 +mknod /dev/mixer c 245 0 +mknod /dev/empeg_state c 246 0 +mknod /dev/radio0 c 81 64 +ln -sf radio0 radio +ln -sf usb0 usb diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index bfce9bb22f18..16202c8ac68f 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -610,11 +610,6 @@ P: Philipp Zabel M: philipp.zabel@gmail.com S: Maintained -ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT -P: Michael Petchkovsky -M: mkpetch@internode.on.net -S: Maintained - ARM/TOSA MACHINE SUPPORT P: Dmitry Baryshkov M: dbaryshkov@gmail.com diff --git a/trunk/arch/arm/common/sharpsl_pm.c b/trunk/arch/arm/common/sharpsl_pm.c index 780bbf7cb26f..db8309161408 100644 --- a/trunk/arch/arm/common/sharpsl_pm.c +++ b/trunk/arch/arm/common/sharpsl_pm.c @@ -54,13 +54,11 @@ /* * Prototypes */ -#ifdef CONFIG_PM static int sharpsl_off_charge_battery(void); -static int sharpsl_check_battery_voltage(void); -static int sharpsl_fatal_check(void); -#endif static int sharpsl_check_battery_temp(void); +static int sharpsl_check_battery_voltage(void); static int sharpsl_ac_check(void); +static int sharpsl_fatal_check(void); static int sharpsl_average_value(int ad); static void sharpsl_average_clear(void); static void sharpsl_charge_toggle(struct work_struct *private_); @@ -426,7 +424,6 @@ static int sharpsl_check_battery_temp(void) return 0; } -#ifdef CONFIG_PM static int sharpsl_check_battery_voltage(void) { int val, i, buff[5]; @@ -458,7 +455,6 @@ static int sharpsl_check_battery_voltage(void) return 0; } -#endif static int sharpsl_ac_check(void) { @@ -590,6 +586,8 @@ static int corgi_pxa_pm_enter(suspend_state_t state) return 0; } +#endif + /* * Check for fatal battery errors @@ -740,10 +738,7 @@ static int sharpsl_off_charge_battery(void) } } } -#else -#define sharpsl_pm_suspend NULL -#define sharpsl_pm_resume NULL -#endif + static ssize_t battery_percentage_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -773,12 +768,10 @@ static void sharpsl_apm_get_power_status(struct apm_power_info *info) info->battery_life = sharpsl_pm.battstat.mainbat_percent; } -#ifdef CONFIG_PM static struct platform_suspend_ops sharpsl_pm_ops = { .enter = corgi_pxa_pm_enter, .valid = suspend_valid_only_mem, }; -#endif static int __init sharpsl_pm_probe(struct platform_device *pdev) { @@ -809,9 +802,7 @@ static int __init sharpsl_pm_probe(struct platform_device *pdev) apm_get_power_status = sharpsl_apm_get_power_status; -#ifdef CONFIG_PM suspend_set_ops(&sharpsl_pm_ops); -#endif mod_timer(&sharpsl_pm.ac_timer, jiffies + msecs_to_jiffies(250)); diff --git a/trunk/arch/arm/mach-at91/include/mach/gpio.h b/trunk/arch/arm/mach-at91/include/mach/gpio.h index bffa6741a751..76d76e2fa69e 100644 --- a/trunk/arch/arm/mach-at91/include/mach/gpio.h +++ b/trunk/arch/arm/mach-at91/include/mach/gpio.h @@ -13,7 +13,6 @@ #ifndef __ASM_ARCH_AT91RM9200_GPIO_H #define __ASM_ARCH_AT91RM9200_GPIO_H -#include #include #define PIN_BASE NR_AIC_IRQS @@ -221,7 +220,6 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { - might_sleep(); } extern int gpio_direction_input(unsigned gpio); diff --git a/trunk/arch/arm/mach-ep93xx/core.c b/trunk/arch/arm/mach-ep93xx/core.c index 48345fb34613..de53f0be71b9 100644 --- a/trunk/arch/arm/mach-ep93xx/core.c +++ b/trunk/arch/arm/mach-ep93xx/core.c @@ -26,7 +26,6 @@ #include #include #include -#include #include #include #include @@ -450,13 +449,12 @@ static struct resource ep93xx_ohci_resources[] = { }, }; - static struct platform_device ep93xx_ohci_device = { .name = "ep93xx-ohci", .id = -1, .dev = { - .dma_mask = &ep93xx_ohci_device.dev.coherent_dma_mask, - .coherent_dma_mask = DMA_BIT_MASK(32), + .dma_mask = (void *)0xffffffff, + .coherent_dma_mask = 0xffffffff, }, .num_resources = ARRAY_SIZE(ep93xx_ohci_resources), .resource = ep93xx_ohci_resources, diff --git a/trunk/arch/arm/mach-imx/include/mach/gpio.h b/trunk/arch/arm/mach-imx/include/mach/gpio.h index 502d5aa2c093..6e3d795f2264 100644 --- a/trunk/arch/arm/mach-imx/include/mach/gpio.h +++ b/trunk/arch/arm/mach-imx/include/mach/gpio.h @@ -1,6 +1,5 @@ #ifndef _IMX_GPIO_H -#include #include #define IMX_GPIO_ALLOC_MODE_NORMAL 0 @@ -64,8 +63,6 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { - might_sleep(); - imx_gpio_free(gpio); } diff --git a/trunk/arch/arm/mach-ixp4xx/include/mach/gpio.h b/trunk/arch/arm/mach-ixp4xx/include/mach/gpio.h index cd5aec26c072..9fbde177920f 100644 --- a/trunk/arch/arm/mach-ixp4xx/include/mach/gpio.h +++ b/trunk/arch/arm/mach-ixp4xx/include/mach/gpio.h @@ -25,7 +25,6 @@ #ifndef __ASM_ARCH_IXP4XX_GPIO_H #define __ASM_ARCH_IXP4XX_GPIO_H -#include #include static inline int gpio_request(unsigned gpio, const char *label) @@ -35,8 +34,6 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { - might_sleep(); - return; } diff --git a/trunk/arch/arm/mach-ks8695/include/mach/gpio.h b/trunk/arch/arm/mach-ks8695/include/mach/gpio.h index d4af5c335f16..73c84168761c 100644 --- a/trunk/arch/arm/mach-ks8695/include/mach/gpio.h +++ b/trunk/arch/arm/mach-ks8695/include/mach/gpio.h @@ -11,8 +11,6 @@ #ifndef __ASM_ARCH_GPIO_H_ #define __ASM_ARCH_GPIO_H_ -#include - #define KS8695_GPIO_0 0 #define KS8695_GPIO_1 1 #define KS8695_GPIO_2 2 @@ -76,7 +74,6 @@ static inline int gpio_request(unsigned int pin, const char *label) static inline void gpio_free(unsigned int pin) { - might_sleep(); } #endif diff --git a/trunk/arch/arm/mach-ns9xxx/gpio.c b/trunk/arch/arm/mach-ns9xxx/gpio.c index 5503ca09c4ae..5241e6a286cc 100644 --- a/trunk/arch/arm/mach-ns9xxx/gpio.c +++ b/trunk/arch/arm/mach-ns9xxx/gpio.c @@ -8,7 +8,6 @@ * under the terms of the GNU General Public License version 2 as published by * the Free Software Foundation. */ -#include #include #include #include @@ -64,7 +63,6 @@ EXPORT_SYMBOL(gpio_request); void gpio_free(unsigned gpio) { - might_sleep(); clear_bit(gpio, gpiores); return; } diff --git a/trunk/arch/arm/mach-orion5x/gpio.c b/trunk/arch/arm/mach-orion5x/gpio.c index f99d08811e5a..fc419868e39f 100644 --- a/trunk/arch/arm/mach-orion5x/gpio.c +++ b/trunk/arch/arm/mach-orion5x/gpio.c @@ -165,8 +165,6 @@ EXPORT_SYMBOL(gpio_request); void gpio_free(unsigned pin) { - might_sleep(); - if (pin >= GPIO_MAX || !test_bit(pin, gpio_valid)) { pr_debug("%s: invalid GPIO %d\n", __func__, pin); return; diff --git a/trunk/arch/arm/mach-pxa/corgi_pm.c b/trunk/arch/arm/mach-pxa/corgi_pm.c index e35259032813..eb7d6c94aa42 100644 --- a/trunk/arch/arm/mach-pxa/corgi_pm.c +++ b/trunk/arch/arm/mach-pxa/corgi_pm.c @@ -204,9 +204,7 @@ static struct sharpsl_charger_machinfo corgi_pm_machinfo = { .read_devdata = corgipm_read_devdata, .charger_wakeup = corgi_charger_wakeup, .should_wakeup = corgi_should_wakeup, -#if defined(CONFIG_LCD_CORGI) - .backlight_limit = corgi_lcd_limit_intensity, -#elif defined(CONFIG_BACKLIGHT_CORGI) +#ifdef CONFIG_BACKLIGHT_CORGI .backlight_limit = corgibl_limit_intensity, #endif .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, diff --git a/trunk/arch/arm/mach-pxa/include/mach/sharpsl.h b/trunk/arch/arm/mach-pxa/include/mach/sharpsl.h index 8242e14a44fa..3b1d4a72d4d1 100644 --- a/trunk/arch/arm/mach-pxa/include/mach/sharpsl.h +++ b/trunk/arch/arm/mach-pxa/include/mach/sharpsl.h @@ -26,7 +26,6 @@ struct corgits_machinfo { * SharpSL Backlight */ extern void corgibl_limit_intensity(int limit); -extern void corgi_lcd_limit_intensity(int limit); /* diff --git a/trunk/arch/arm/mach-pxa/spitz.c b/trunk/arch/arm/mach-pxa/spitz.c index f0a5bbae0b45..524f656dc56d 100644 --- a/trunk/arch/arm/mach-pxa/spitz.c +++ b/trunk/arch/arm/mach-pxa/spitz.c @@ -385,16 +385,6 @@ static void __init spitz_init_spi(void) if (err) goto err_free_2; - err = gpio_direction_output(SPITZ_GPIO_ADS7846_CS, 1); - if (err) - goto err_free_3; - err = gpio_direction_output(SPITZ_GPIO_LCDCON_CS, 1); - if (err) - goto err_free_3; - err = gpio_direction_output(SPITZ_GPIO_MAX1111_CS, 1); - if (err) - goto err_free_3; - if (machine_is_akita()) { spitz_lcdcon_info.gpio_backlight_cont = AKITA_GPIO_BACKLIGHT_CONT; spitz_lcdcon_info.gpio_backlight_on = AKITA_GPIO_BACKLIGHT_ON; @@ -404,8 +394,6 @@ static void __init spitz_init_spi(void) spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices)); return; -err_free_3: - gpio_free(SPITZ_GPIO_MAX1111_CS); err_free_2: gpio_free(SPITZ_GPIO_LCDCON_CS); err_free_1: diff --git a/trunk/arch/arm/mach-pxa/spitz_pm.c b/trunk/arch/arm/mach-pxa/spitz_pm.c index 072e77cfe5a3..53018db106ac 100644 --- a/trunk/arch/arm/mach-pxa/spitz_pm.c +++ b/trunk/arch/arm/mach-pxa/spitz_pm.c @@ -198,9 +198,7 @@ struct sharpsl_charger_machinfo spitz_pm_machinfo = { .read_devdata = spitzpm_read_devdata, .charger_wakeup = spitz_charger_wakeup, .should_wakeup = spitz_should_wakeup, -#if defined(CONFIG_LCD_CORGI) - .backlight_limit = corgi_lcd_limit_intensity, -#elif defined(CONFIG_BACKLIGHT_CORGI) +#ifdef CONFIG_BACKLIGHT_CORGI .backlight_limit = corgibl_limit_intensity, #endif .charge_on_volt = SHARPSL_CHARGE_ON_VOLT, diff --git a/trunk/arch/arm/mm/proc-xsc3.S b/trunk/arch/arm/mm/proc-xsc3.S index 8f6cf56c11c0..04dc8b65401b 100644 --- a/trunk/arch/arm/mm/proc-xsc3.S +++ b/trunk/arch/arm/mm/proc-xsc3.S @@ -349,7 +349,7 @@ ENTRY(cpu_xsc3_switch_mm) cpu_xsc3_mt_table: .long 0x00 @ L_PTE_MT_UNCACHED .long PTE_EXT_TEX(1) @ L_PTE_MT_BUFFERABLE - .long PTE_EXT_TEX(5) | PTE_CACHEABLE @ L_PTE_MT_WRITETHROUGH + .long PTE_CACHEABLE @ L_PTE_MT_WRITETHROUGH .long PTE_CACHEABLE | PTE_BUFFERABLE @ L_PTE_MT_WRITEBACK .long PTE_EXT_TEX(1) | PTE_BUFFERABLE @ L_PTE_MT_DEV_SHARED .long 0x00 @ unused diff --git a/trunk/drivers/leds/leds-da903x.c b/trunk/drivers/leds/leds-da903x.c index 1f3cc512eff8..2768c69257f6 100644 --- a/trunk/drivers/leds/leds-da903x.c +++ b/trunk/drivers/leds/leds-da903x.c @@ -58,7 +58,7 @@ static void da903x_led_work(struct work_struct *work) offset = DA9030_LED_OFFSET(led->id); val = led->flags & ~0x87; val |= (led->new_brightness) ? 0x80 : 0; /* EN bit */ - val |= (0x7 - (led->new_brightness >> 5)) & 0x7; /* PWM<2:0> */ + val |= (led->new_brightness >> 5) & 0x7; /* PWM<2:0> */ da903x_write(led->master, DA9030_LED1_CONTROL + offset, val); break; case DA9030_ID_VIBRA: diff --git a/trunk/drivers/mmc/host/mmci.c b/trunk/drivers/mmc/host/mmci.c index 2fadf323c696..696cf3647ceb 100644 --- a/trunk/drivers/mmc/host/mmci.c +++ b/trunk/drivers/mmc/host/mmci.c @@ -391,7 +391,6 @@ static irqreturn_t mmci_irq(int irq, void *dev_id) static void mmci_request(struct mmc_host *mmc, struct mmc_request *mrq) { struct mmci_host *host = mmc_priv(mmc); - unsigned long flags; WARN_ON(host->mrq != NULL); @@ -403,7 +402,7 @@ static void mmci_request(struct mmc_host *mmc, struct mmc_request *mrq) return; } - spin_lock_irqsave(&host->lock, flags); + spin_lock_irq(&host->lock); host->mrq = mrq; @@ -412,7 +411,7 @@ static void mmci_request(struct mmc_host *mmc, struct mmc_request *mrq) mmci_start_command(host, mrq->cmd, 0); - spin_unlock_irqrestore(&host->lock, flags); + spin_unlock_irq(&host->lock); } static void mmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) diff --git a/trunk/drivers/serial/Kconfig b/trunk/drivers/serial/Kconfig index c94d3c4b7521..579d63a81aa2 100644 --- a/trunk/drivers/serial/Kconfig +++ b/trunk/drivers/serial/Kconfig @@ -1276,7 +1276,7 @@ config SERIAL_SGI_IOC3 say Y or M. Otherwise, say N. config SERIAL_NETX - bool "NetX serial port support" + tristate "NetX serial port support" depends on ARM && ARCH_NETX select SERIAL_CORE help @@ -1288,7 +1288,7 @@ config SERIAL_NETX config SERIAL_NETX_CONSOLE bool "Console on NetX serial port" - depends on SERIAL_NETX + depends on SERIAL_NETX=y select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the Hilscher NetX SoC diff --git a/trunk/drivers/serial/netx-serial.c b/trunk/drivers/serial/netx-serial.c index 3f489329e8d3..3e5dda8518b7 100644 --- a/trunk/drivers/serial/netx-serial.c +++ b/trunk/drivers/serial/netx-serial.c @@ -42,8 +42,6 @@ #define SERIAL_NX_MAJOR 204 #define MINOR_START 170 -#ifdef CONFIG_SERIAL_NETX_CONSOLE - enum uart_regs { UART_DR = 0x00, UART_SR = 0x04, @@ -528,6 +526,8 @@ static struct netx_port netx_ports[] = { } }; +#ifdef CONFIG_SERIAL_NETX_CONSOLE + static void netx_console_putchar(struct uart_port *port, int ch) { while (readl(port->membase + UART_FR) & FR_BUSY); diff --git a/trunk/drivers/video/backlight/corgi_lcd.c b/trunk/drivers/video/backlight/corgi_lcd.c index f8a4bb20f41a..2afd47eefe74 100644 --- a/trunk/drivers/video/backlight/corgi_lcd.c +++ b/trunk/drivers/video/backlight/corgi_lcd.c @@ -439,7 +439,7 @@ static int corgi_bl_update_status(struct backlight_device *bd) return corgi_bl_set_intensity(lcd, intensity); } -void corgi_lcd_limit_intensity(int limit) +void corgibl_limit_intensity(int limit) { if (limit) corgibl_flags |= CORGIBL_BATTLOW; @@ -448,7 +448,7 @@ void corgi_lcd_limit_intensity(int limit) backlight_update_status(the_corgi_lcd->bl_dev); } -EXPORT_SYMBOL(corgi_lcd_limit_intensity); +EXPORT_SYMBOL(corgibl_limit_intensity); static struct backlight_ops corgi_bl_ops = { .get_brightness = corgi_bl_get_intensity,