Merge branches 'defcfg', 'drivers' and 'cyberpro-next' of master.kernel.org:/home...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 18 Mar 2011 01:48:35 +0000 (18:48 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 18 Mar 2011 01:48:35 +0000 (18:48 -0700)
* 'defcfg' of master.kernel.org:/home/rmk/linux-2.6-arm:
  ARM: 6647/1: add Versatile Express defconfig
  ARM: 6644/1: mach-ux500: update the U8500 defconfig

* 'drivers' of master.kernel.org:/home/rmk/linux-2.6-arm:
  ARM: 6764/1: pl011: factor out FIFO to TTY code
  ARM: 6763/1: pl011: add optional RX DMA to PL011 v2
  ARM: 6758/1: amba: support pm ops
  ARM: amba: make amba_driver id_table const
  ARM: amba: make internal ID table handling const
  ARM: amba: make probe() functions take const id tables
  ARM: 6662/1: amba: make amba_bustype non-static
  ARM: mmci: add dmaengine-based DMA support
  ARM: mmci: no need for separate host->data_xfered
  ARM: mmci: avoid unnecessary switch to data available PIO interrupts
  ARM: mmci: no need to call flush_dcache_page() with sg_miter API
  ARM: mmci: avoid reporting too many completed bytes on fifo overrun
  ALSA: AACI: make fifo variables more explanitory
  ALSA: AACI: no need to call snd_pcm_period_elapsed() for each period
  ALSA: AACI: use snd_pcm_lib_period_bytes()
  ALSA: AACI: clean up AACI announcement printk
  ALSA: AACI: fix channel mask selection
  ALSA: AACI: fix number of channels for record
  ALSA: AACI: fix multiple IRQ claiming

* 'cyberpro-next' of master.kernel.org:/home/rmk/linux-2.6-arm:
  VIDEO: cyberpro: remove unused cyber2000fb_get_fb_var()
  VIDEO: cyberpro: remove useless function extreg pointers
  VIDEO: cyberpro: update handling of device structures
  VIDEO: cyberpro: add support for video capture I2C
  VIDEO: cyberpro: make 'reg_b0_lock' always present
  VIDEO: cyberpro: add I2C support
  VIDEO: cyberpro: select lowest multipler/divisor for PLL

1  2  3  4 
drivers/rtc/rtc-pl030.c
drivers/rtc/rtc-pl031.c
drivers/video/Kconfig

diff --combined drivers/rtc/rtc-pl030.c
@@@@@ -35,6 -35,11 -35,11 -35,11 +35,6 @@@@@ static irqreturn_t pl030_interrupt(int 
        return IRQ_HANDLED;
    }
    
 ---static int pl030_ioctl(struct device *dev, unsigned int cmd, unsigned long arg)
 ---{
 ---    return -ENOIOCTLCMD;
 ---}
 ---
    static int pl030_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
    {
        struct pl030_rtc *rtc = dev_get_drvdata(dev);
@@@@@ -91,13 -96,14 -96,14 -96,14 +91,13 @@@@@ static int pl030_set_time(struct devic
    }
    
    static const struct rtc_class_ops pl030_ops = {
 ---    .ioctl          = pl030_ioctl,
        .read_time      = pl030_read_time,
        .set_time       = pl030_set_time,
        .read_alarm     = pl030_read_alarm,
        .set_alarm      = pl030_set_alarm,
    };
    
-- -static int pl030_probe(struct amba_device *dev, struct amba_id *id)
++ +static int pl030_probe(struct amba_device *dev, const struct amba_id *id)
    {
        struct pl030_rtc *rtc;
        int ret;
diff --combined drivers/rtc/rtc-pl031.c
@@@@@ -293,6 -293,57 -293,57 -293,57 +293,6 @@@@@ static int pl031_set_alarm(struct devic
        return ret;
    }
    
 ---/* Periodic interrupt is only available in ST variants. */
 ---static int pl031_irq_set_state(struct device *dev, int enabled)
 ---{
 ---    struct pl031_local *ldata = dev_get_drvdata(dev);
 ---
 ---    if (enabled == 1) {
 ---            /* Clear any pending timer interrupt. */
 ---            writel(RTC_BIT_PI, ldata->base + RTC_ICR);
 ---
 ---            writel(readl(ldata->base + RTC_IMSC) | RTC_BIT_PI,
 ---                    ldata->base + RTC_IMSC);
 ---
 ---            /* Now start the timer */
 ---            writel(readl(ldata->base + RTC_TCR) | RTC_TCR_EN,
 ---                    ldata->base + RTC_TCR);
 ---
 ---    } else {
 ---            writel(readl(ldata->base + RTC_IMSC) & (~RTC_BIT_PI),
 ---                    ldata->base + RTC_IMSC);
 ---
 ---            /* Also stop the timer */
 ---            writel(readl(ldata->base + RTC_TCR) & (~RTC_TCR_EN),
 ---                    ldata->base + RTC_TCR);
 ---    }
 ---    /* Wait at least 1 RTC32 clock cycle to ensure next access
 ---     * to RTC_TCR will succeed.
 ---     */
 ---    udelay(40);
 ---
 ---    return 0;
 ---}
 ---
 ---static int pl031_irq_set_freq(struct device *dev, int freq)
 ---{
 ---    struct pl031_local *ldata = dev_get_drvdata(dev);
 ---
 ---    /* Cant set timer if it is already enabled */
 ---    if (readl(ldata->base + RTC_TCR) & RTC_TCR_EN) {
 ---            dev_err(dev, "can't change frequency while timer enabled\n");
 ---            return -EINVAL;
 ---    }
 ---
 ---    /* If self start bit in RTC_TCR is set timer will start here,
 ---     * but we never set that bit. Instead we start the timer when
 ---     * set_state is called with enabled == 1.
 ---     */
 ---    writel(RTC_TIMER_FREQ / freq, ldata->base + RTC_TLR);
 ---
 ---    return 0;
 ---}
 ---
    static int pl031_remove(struct amba_device *adev)
    {
        struct pl031_local *ldata = dev_get_drvdata(&adev->dev);
        return 0;
    }
    
-- -static int pl031_probe(struct amba_device *adev, struct amba_id *id)
++ +static int pl031_probe(struct amba_device *adev, const struct amba_id *id)
    {
        int ret;
        struct pl031_local *ldata;
@@@@@ -389,6 -440,8 -440,8 -440,8 +389,6 @@@@@ static struct rtc_class_ops stv1_pl031_
        .read_alarm = pl031_read_alarm,
        .set_alarm = pl031_set_alarm,
        .alarm_irq_enable = pl031_alarm_irq_enable,
 ---    .irq_set_state = pl031_irq_set_state,
 ---    .irq_set_freq = pl031_irq_set_freq,
    };
    
    /* And the second ST derivative */
@@@@@ -398,6 -451,8 -451,8 -451,8 +398,6 @@@@@ static struct rtc_class_ops stv2_pl031_
        .read_alarm = pl031_stv2_read_alarm,
        .set_alarm = pl031_stv2_set_alarm,
        .alarm_irq_enable = pl031_alarm_irq_enable,
 ---    .irq_set_state = pl031_irq_set_state,
 ---    .irq_set_freq = pl031_irq_set_freq,
    };
    
    static struct amba_id pl031_ids[] = {
diff --combined drivers/video/Kconfig
@@@@@ -322,6 -322,69 -322,69 -322,69 +322,6 @@@@@ config FB_ARMCLC
          here and read <file:Documentation/kbuild/modules.txt>.  The module
          will be called amba-clcd.
    
 ---choice
 ---
 ---    depends on FB_ARMCLCD && (ARCH_LH7A40X || ARCH_LH7952X)
 ---    prompt "LCD Panel"
 ---    default FB_ARMCLCD_SHARP_LQ035Q7DB02
 ---
 ---config FB_ARMCLCD_SHARP_LQ035Q7DB02_HRTFT
 ---    bool "LogicPD LCD 3.5\" QVGA w/HRTFT IC"
 ---    help
 ---      This is an implementation of the Sharp LQ035Q7DB02, a 3.5"
 ---      color QVGA, HRTFT panel.  The LogicPD device includes
 ---      an integrated HRTFT controller IC.
 ---      The native resolution is 240x320.
 ---
 ---config FB_ARMCLCD_SHARP_LQ057Q3DC02
 ---    bool "LogicPD LCD 5.7\" QVGA"
 ---    help
 ---      This is an implementation of the Sharp LQ057Q3DC02, a 5.7"
 ---      color QVGA, TFT panel.  The LogicPD device includes an
 ---      The native resolution is 320x240.
 ---
 ---config FB_ARMCLCD_SHARP_LQ64D343
 ---    bool "LogicPD LCD 6.4\" VGA"
 ---    help
 ---      This is an implementation of the Sharp LQ64D343, a 6.4"
 ---      color VGA, TFT panel.  The LogicPD device includes an
 ---      The native resolution is 640x480.
 ---
 ---config FB_ARMCLCD_SHARP_LQ10D368
 ---    bool "LogicPD LCD 10.4\" VGA"
 ---    help
 ---      This is an implementation of the Sharp LQ10D368, a 10.4"
 ---      color VGA, TFT panel.  The LogicPD device includes an
 ---      The native resolution is 640x480.
 ---
 ---
 ---config FB_ARMCLCD_SHARP_LQ121S1DG41
 ---    bool "LogicPD LCD 12.1\" SVGA"
 ---    help
 ---      This is an implementation of the Sharp LQ121S1DG41, a 12.1"
 ---      color SVGA, TFT panel.  The LogicPD device includes an
 ---      The native resolution is 800x600.
 ---
 ---      This panel requires a clock rate may be an integer fraction
 ---      of the base LCDCLK frequency.  The driver will select the
 ---      highest frequency available that is lower than the maximum
 ---      allowed.  The panel may flicker if the clock rate is
 ---      slower than the recommended minimum.
 ---
 ---config FB_ARMCLCD_AUO_A070VW01_WIDE
 ---    bool "AU Optronics A070VW01 LCD 7.0\" WIDE"
 ---    help
 ---      This is an implementation of the AU Optronics, a 7.0"
 ---      WIDE Color.  The native resolution is 234x480.
 ---
 ---config FB_ARMCLCD_HITACHI
 ---    bool "Hitachi Wide Screen 800x480"
 ---    help
 ---      This is an implementation of the Hitachi 800x480.
 ---
 ---endchoice
 ---
 ---
    config FB_ACORN
        bool "Acorn VIDC support"
        depends on (FB = y) && ARM && ARCH_ACORN
@@@@@ -376,6 -439,6 -439,6 -439,24 +376,24 @@@@@ config FB_CYBER200
          Say Y if you have a NetWinder or a graphics card containing this
          device, otherwise say N.
    
+++ config FB_CYBER2000_DDC
+++     bool "DDC for CyberPro support"
+++     depends on FB_CYBER2000
+++     select FB_DDC
+++     default y
+++     help
+++       Say Y here if you want DDC support for your CyberPro graphics
+++       card. This is only I2C bus support, driver does not use EDID.
+++ 
+++ config FB_CYBER2000_I2C
+++     bool "CyberPro 2000/2010/5000 I2C support"
+++     depends on FB_CYBER2000 && I2C && ARCH_NETWINDER
+++     select I2C_ALGOBIT
+++     help
+++       Enable support for the I2C video decoder interface on the
+++       Integraphics CyberPro 20x0 and 5000 VGA chips.  This is used
+++       on the Netwinder machines for the SAA7111 video capture.
+++ 
    config FB_APOLLO
        bool
        depends on (FB = y) && APOLLO
@@@@@ -1942,7 -2005,6 -2005,6 -2023,6 +1960,7 @@@@@ config FB_SH_MOBILE_LCD
        select FB_SYS_IMAGEBLIT
        select FB_SYS_FOPS
        select FB_DEFERRED_IO
 +++    select FB_BACKLIGHT
        select SH_MIPI_DSI if SH_LCD_MIPI_DSI
        ---help---
          Frame buffer driver for the on-chip SH-Mobile LCD controller.
@@@@@ -2303,17 -2365,6 -2365,6 -2383,6 +2321,17 @@@@@ config FB_JZ474
        help
          Framebuffer support for the JZ4740 SoC.
    
 +++config FB_PUV3_UNIGFX
 +++    tristate "PKUnity v3 Unigfx framebuffer support"
 +++    depends on FB && UNICORE32 && ARCH_PUV3
 +++    select FB_SYS_FILLRECT
 +++    select FB_SYS_COPYAREA
 +++    select FB_SYS_IMAGEBLIT
 +++    select FB_SYS_FOPS
 +++    help
 +++      Choose this option if you want to use the Unigfx device as a
 +++      framebuffer device. Without the support of PCI & AGP.
 +++
    source "drivers/video/omap/Kconfig"
    source "drivers/video/omap2/Kconfig"