17 Aug, 2012

2 commits

  • kdb kgdb transitioning does not work properly with this UART
    driver because the get character routine loops indefinitely as opposed
    to returning NO_POLL_CHAR per the expectation of the KDB I/O driver
    API.

    The symptom is a kernel hang when trying to switch debug modes.

    Cc: Alan Cox
    Signed-off-by: Jason Wessel
    Signed-off-by: Greg Kroah-Hartman

    Jason Wessel
     
  • Without checking if the auart supports the hardware flow control or not,
    the old mxs_auart_set_mctrl() asserted the RTS pin blindly.

    This will causes the auart receives wrong data in the following case:
    The far-end has already started the write operation, and wait for
    the auart asserts the RTS pin. Then the auart starts the read operation,
    but mxs_auart_set_mctrl() may be called before we set the RTSCTS in the
    mxs_auart_settermios(). So the RTS pin is asserted in a wrong situation,
    and we get the wrong data in the end.

    This bug has been catched when I connect the mx23(DTE) to the mx53(DCE).

    This patch also replaces the AUART_CTRL2_RTS with AUART_CTRL2_RTSEN.
    We should use the real the hardware flow control, not the software-controled
    hardware flow control.

    Signed-off-by: Huang Shijie
    Signed-off-by: Greg Kroah-Hartman

    Huang Shijie
     

11 Aug, 2012

2 commits

  • [ 117.240866] BUG: unable to handle kernel paging request at 815b627c
    [ 117.240866] IP: [] spi_register_driver+0xb/0x50
    ...
    [ 117.240866] Call Trace:
    [ 117.240866] [] ifx_spi_init+0xbe/0xf0

    The root cause is, spi_register_driver() is trying to write into the
    passed *const* struct spi_driver.

    Signed-off-by: Fengguang Wu
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Fengguang Wu
     
  • This trivial patch adds a short description for SERIAL_CLPS711X Kconfig
    entry, removes excess dependence on the ARM-platform (this is done
    globally for the platform), allows the driver to be compiled by default
    and removes unnecessary description about GRUB and LILO, because these
    bootloaders do not supported this platform.

    Signed-off-by: Alexander Shiyan
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alexander Shiyan
     

01 Aug, 2012

2 commits

  • A recent commit:

    commit d6fa5a4e7ab605370fd6c982782f84ef2e6660e7
    Author: Guennadi Liakhovetski
    serial: sh-sci: prepare for conversion to the shdma base library

    is not sufficient to update the sh-sci driver to the new shdma driver
    layout. This caused compilation breakage, when CONFIG_SERIAL_SH_SCI_DMA
    is enabled. This patch trivially fixes the problem by updating the DMA
    descriptor manipulation code.

    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Paul Mundt

    Guennadi Liakhovetski
     
  • Pull random subsystem patches from Ted Ts'o:
    "This patch series contains a major revamp of how we collect entropy
    from interrupts for /dev/random and /dev/urandom.

    The goal is to addresses weaknesses discussed in the paper "Mining
    your Ps and Qs: Detection of Widespread Weak Keys in Network Devices",
    by Nadia Heninger, Zakir Durumeric, Eric Wustrow, J. Alex Halderman,
    which will be published in the Proceedings of the 21st Usenix Security
    Symposium, August 2012. (See https://factorable.net for more
    information and an extended version of the paper.)"

    Fix up trivial conflicts due to nearby changes in
    drivers/{mfd/ab3100-core.c, usb/gadget/omap_udc.c}

    * tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random: (33 commits)
    random: mix in architectural randomness in extract_buf()
    dmi: Feed DMI table to /dev/random driver
    random: Add comment to random_initialize()
    random: final removal of IRQF_SAMPLE_RANDOM
    um: remove IRQF_SAMPLE_RANDOM which is now a no-op
    sparc/ldc: remove IRQF_SAMPLE_RANDOM which is now a no-op
    [ARM] pxa: remove IRQF_SAMPLE_RANDOM which is now a no-op
    board-palmz71: remove IRQF_SAMPLE_RANDOM which is now a no-op
    isp1301_omap: remove IRQF_SAMPLE_RANDOM which is now a no-op
    pxa25x_udc: remove IRQF_SAMPLE_RANDOM which is now a no-op
    omap_udc: remove IRQF_SAMPLE_RANDOM which is now a no-op
    goku_udc: remove IRQF_SAMPLE_RANDOM which was commented out
    uartlite: remove IRQF_SAMPLE_RANDOM which is now a no-op
    drivers: hv: remove IRQF_SAMPLE_RANDOM which is now a no-op
    xen-blkfront: remove IRQF_SAMPLE_RANDOM which is now a no-op
    n2_crypto: remove IRQF_SAMPLE_RANDOM which is now a no-op
    pda_power: remove IRQF_SAMPLE_RANDOM which is now a no-op
    i2c-pmcmsp: remove IRQF_SAMPLE_RANDOM which is now a no-op
    input/serio/hp_sdc.c: remove IRQF_SAMPLE_RANDOM which is now a no-op
    mfd: remove IRQF_SAMPLE_RANDOM which is now a no-op
    ...

    Linus Torvalds
     

28 Jul, 2012

3 commits

  • Pull ARM updates from Russell King:
    "First ARM push of this merge window, post me coming back from holiday.
    This is what has been in linux-next for the last few weeks. Not much
    to say which isn't described by the commit summaries."

    * 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (32 commits)
    ARM: 7463/1: topology: Update cpu_power according to DT information
    ARM: 7462/1: topology: factorize the update of sibling masks
    ARM: 7461/1: topology: Add arch_scale_freq_power function
    ARM: 7456/1: ptrace: provide separate functions for tracing syscall {entry,exit}
    ARM: 7455/1: audit: move syscall auditing until after ptrace SIGTRAP handling
    ARM: 7454/1: entry: don't bother with syscall tracing on ret_from_fork path
    ARM: 7453/1: audit: only allow syscall auditing for pure EABI userspace
    ARM: 7452/1: delay: allow timer-based delay implementation to be selected
    ARM: 7451/1: arch timer: implement read_current_timer and get_cycles
    ARM: 7450/1: dcache: select DCACHE_WORD_ACCESS for little-endian ARMv6+ CPUs
    ARM: 7449/1: use generic strnlen_user and strncpy_from_user functions
    ARM: 7448/1: perf: remove arm_perf_pmu_ids global enumeration
    ARM: 7447/1: rwlocks: remove unused branch labels from trylock routines
    ARM: 7446/1: spinlock: use ticket algorithm for ARMv6+ locking implementation
    ARM: 7445/1: mm: update CONTEXTIDR register to contain PID of current process
    ARM: 7444/1: kernel: add arch-timer C3STOP feature
    ARM: 7460/1: remove asm/locks.h
    ARM: 7439/1: head.S: simplify initial page table mapping
    ARM: 7437/1: zImage: Allow DTB command line concatenation with ATAG_CMDLINE
    ARM: 7436/1: Do not map the vectors page as write-through on UP systems
    ...

    Linus Torvalds
     
  • Russell King
     
  • Pull TTY/Serial patches from Greg Kroah-Hartman:
    "Here's the "tiny" set of patches for 3.6-rc1 for the tty layer and
    serial drivers. They were cherry-picked from the tty-next branch of
    the tty git tree, as they are small and "obvious" fixes. The larger
    changes, as mentioned before, will be saved for the 3.7-rc1 merge
    window.

    All of these changes have been in the linux-next releases for quite a
    while.

    Signed-off-by: Greg Kroah-Hartman "

    * tag 'tty-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    pch_uart: Fix parity setting issue
    pch_uart: Fix rx error interrupt setting issue
    pch_uart: Fix missing break for 16 byte fifo
    tty ldisc: Close/Reopen race prevention should check the proper flag
    pch_uart: Add eg20t_port lock field, avoid recursive spinlocks
    vt: fix race in vt_waitactive()
    serial/of-serial: Add LPC3220 standard UART compatible string
    serial/8250: Add LPC3220 standard UART type
    serial_core: Update buffer overrun statistics.
    serial: samsung: Fixed wrong comparison for baudclk_rate

    Linus Torvalds
     

27 Jul, 2012

10 commits

  • Parity Setting value is reverse.
    E.G. In case of setting ODD parity, EVEN value is set.
    This patch inverts "if" condition.

    Signed-off-by: Tomoya MORINAGA
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Tomoya MORINAGA
     
  • Rx Error interrupt(E.G. parity error) is not enabled.
    So, when parity error occurs, error interrupt is not occurred.
    As a result, the received data is not dropped.

    This patch adds enable/disable rx error interrupt code.

    Signed-off-by: Tomoya MORINAGA
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Tomoya MORINAGA
     
  • Otherwise we fall back to the wrong value.

    Reported-by:
    Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=44091
    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Commit acfa747b introduced the TTY_HUPPING flag to distinguish
    closed TTY from currently closing ones. The test in tty_set_ldisc
    still remained pointing at the old flag. This causes pppd to
    sometimes lapse into uninterruptible sleep when killed and
    restarted.

    Signed-off-by: Shachar Shemesh
    Signed-off-by: Greg Kroah-Hartman

    Shachar Shemesh
     
  • pch_uart_interrupt() takes priv->port.lock which leads to two recursive
    spinlock calls if low_latency==1 or CONFIG_PREEMPT_RT_FULL=y (one
    otherwise):

    pch_uart_interrupt
    spin_lock_irqsave(priv->port.lock, flags)
    case PCH_UART_IID_RDR_TO (data ready)
    handle_rx_to
    push_rx
    tty_port_tty_get
    spin_lock_irqsave(&port->lock, flags) buf.lock)
    spin_lock_irqsave(&tty->buf.lock)
    disc->ops->receive_buf(tty, char_buf)
    n_tty_receive_buf
    tty->ops->flush_chars()
    uart_flush_chars
    uart_start
    spin_lock_irqsave(&port->lock) lock is always take prior to priv->port.lock when
    taken at the same time.

    V2: Remove inadvertent whitespace change.
    V3: Account for oops_in_progress for the private lock in
    pch_console_write().

    Note: Like the 8250 driver, if a printk is introduced anywhere inside
    the pch_console_write() critical section, the kernel will hang
    on a recursive spinlock on the private lock. The oops case is
    handled by using a trylock in the oops_in_progress case.

    Signed-off-by: Darren Hart
    CC: Tomoya MORINAGA
    CC: Feng Tang
    CC: Alexander Stein
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Darren Hart
     
  • pm_restore_console() is called from the suspend/resume path, and this
    calls vt_move_to_console(), which calls vt_waitactive().

    There's a race in this path which causes the process which requests the
    suspend to sleep indefinitely waiting for an event which already
    happened:

    P1 P2
    vt_move_to_console()
    set_console()
    schedule_console_callback()
    vt_waitactive()
    check n == fg_console +1
    console_callback()
    switch_screen()
    vt_event_post() // no waiters

    vt_event_wait() // forever

    Fix the race by ensuring we're registered for the event before we check
    if it's already completed.

    Signed-off-by: Rabin Vincent
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Rabin Vincent
     
  • This patch adds a "compatible" string for the new 8250 UART type PORT_LPC3220.
    This is necessary for initializing LPC32xx UARTs via DT.

    Signed-off-by: Roland Stigge
    Signed-off-by: Greg Kroah-Hartman

    Roland Stigge
     
  • LPC32xx has "Standard" UARTs that are actually 16550A compatible but have
    bigger FIFOs. Since the already supported 16X50 line still doesn't match here,
    we agreed on adding a new type.

    Signed-off-by: Roland Stigge
    Acked-by: Alan Cox
    Acked-by: Arnd Bergmann
    Signed-off-by: Greg Kroah-Hartman

    Roland Stigge
     
  • Currently, serial drivers don't report buffer overruns. When a buffer overrun
    occurs, tty_insert_flip_char returns 0, and no attempt is made to insert that
    same character again (i.e. it is lost). This patch reports buffer overruns via
    the buf_overrun field in the port's icount structure.

    Signed-off-by: Corbin Atkinson
    Cc: Jiri Slaby
    Cc: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Corbin
     
  • port->baudclk_rate should be compared to the rate of port->baudclk,
    because port->baudclk_rate was assigned as the rate of port->baudclk previously.
    So to check that the current baudclk rate is same as previous rate,
    the target of comparison sholud be the rate of port->baudclk.

    Signed-off-by: Jun-Ho, Yoon
    Signed-off-by: Kyoungil Kim
    Signed-off-by: Greg Kroah-Hartman

    Kyoungil Kim
     

25 Jul, 2012

2 commits

  • Pull slave-dmaengine update from Vinod Koul:
    "This time we have a new dmaengine driver from the tegra folks. Also
    we have Guennadi's cleanup of sh drivers which incudes a library for
    sh drivers. And the usual odd fixes in bunch of drivers and some nice
    cleanup of dw_dmac from Andy."

    Fix up conflicts in drivers/mmc/host/sh_mmcif.c

    * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (46 commits)
    dmaengine: Cleanup logging messages
    mmc: sh_mmcif: switch to the new DMA channel allocation and configuration
    dma: sh: provide a migration path for slave drivers to stop using .private
    dma: sh: use an integer slave ID to improve API compatibility
    dmaengine: shdma: prepare to stop using struct dma_chan::private
    sh: remove unused DMA device pointer from SIU platform data
    ASoC: siu: don't use DMA device for channel filtering
    dmaengine: shdma: (cosmetic) simplify a static function
    dmaengine: at_hdmac: add a few const qualifiers
    dw_dmac: use 'u32' for LLI structure members, not dma_addr_t
    dw_dmac: mark dwc_dump_lli inline
    dma: mxs-dma: Export missing symbols from mxs-dma.c
    dma: shdma: convert to the shdma base library
    ASoC: fsi: prepare for conversion to the shdma base library
    usb: renesas_usbhs: prepare for conversion to the shdma base library
    ASoC: siu: prepare for conversion to the shdma base library
    serial: sh-sci: prepare for conversion to the shdma base library
    mmc: sh_mobile_sdhi: prepare for conversion to the shdma base library
    mmc: sh_mmcif: remove unneeded struct sh_mmcif_dma, prepare to shdma conversion
    dma: shdma: prepare for conversion to the shdma base library
    ...

    Linus Torvalds
     
  • Pull Xen update from Konrad Rzeszutek Wilk:
    "Features:
    * Performance improvement to lower the amount of traps the hypervisor
    has to do 32-bit guests. Mainly for setting PTE entries and
    updating TLS descriptors.
    * MCE polling driver to collect hypervisor MCE buffer and present
    them to /dev/mcelog.
    * Physical CPU online/offline support. When an privileged guest is
    booted it is present with virtual CPUs, which might have an 1:1 to
    physical CPUs but usually don't. This provides mechanism to
    offline/online physical CPUs.
    Bug-fixes for:
    * Coverity found fixes in the console and ACPI processor driver.
    * PVonHVM kexec fixes along with some cleanups.
    * Pages that fall within E820 gaps and non-RAM regions (and had been
    released to hypervisor) would be populated back, but potentially in
    non-RAM regions."

    * tag 'stable/for-linus-3.6-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    xen: populate correct number of pages when across mem boundary (v2)
    xen PVonHVM: move shared_info to MMIO before kexec
    xen: simplify init_hvm_pv_info
    xen: remove cast from HYPERVISOR_shared_info assignment
    xen: enable platform-pci only in a Xen guest
    xen/pv-on-hvm kexec: shutdown watches from old kernel
    xen/x86: avoid updating TLS descriptors if they haven't changed
    xen/x86: add desc_equal() to compare GDT descriptors
    xen/mm: zero PTEs for non-present MFNs in the initial page table
    xen/mm: do direct hypercall in xen_set_pte() if batching is unavailable
    xen/hvc: Fix up checks when the info is allocated.
    xen/acpi: Fix potential memory leak.
    xen/mce: add .poll method for mcelog device driver
    xen/mce: schedule a workqueue to avoid sleep in atomic context
    xen/pcpu: Xen physical cpus online/offline sys interface
    xen/mce: Register native mce handler as vMCE bounce back point
    x86, MCE, AMD: Adjust initcall sequence for xen
    xen/mce: Add mcelog support for Xen platform

    Linus Torvalds
     

24 Jul, 2012

2 commits

  • Pull arm-soc sparse IRQ conversion from Arnd Bergmann:
    "The I.MX platform is getting converted to use sparse IRQs. We are
    doing this for all platforms over time, because this is one of the
    requirements for building a multiplatform kernel, and generally a good
    idea."

    * tag 'irq' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: imx: select USE_OF
    ARM: imx: Fix build error due to missing irqs.h include
    ARM: imx: enable SPARSE_IRQ for imx platform
    ARM: fiq: change FIQ_START to a variable
    tty: serial: imx: remove the use of MXC_INTERNAL_IRQS
    ARM: imx: remove unneeded mach/irq.h inclusion
    i2c: imx: remove unneeded mach/irqs.h inclusion
    ARM: imx: add a legacy irqdomain for mx31ads
    ARM: imx: add a legacy irqdomain for 3ds_debugboard
    ARM: imx: pass gpio than irq number into mxc_expio_init
    ARM: imx: leave irq_base of wm8350_platform_data uninitialized
    dma: ipu: remove the use of ipu_platform_data
    ARM: imx: move irq_domain_add_legacy call into avic driver
    ARM: imx: move irq_domain_add_legacy call into tzic driver
    gpio/mxc: move irq_domain_add_legacy call into gpio driver
    ARM: imx: eliminate macro IRQ_GPIOx()
    ARM: imx: eliminate macro IOMUX_TO_IRQ()
    ARM: imx: eliminate macro IMX_GPIO_TO_IRQ()

    Linus Torvalds
     
  • Pull arm-soc device tree description updates from Arnd Bergmann:
    "This branch contains two kinds of updates: Some platforms in the
    process of getting converted to device tree based booting, and the
    platform specific patches necessary for that are included here.

    Other platforms are already converted, so we just need to update the
    actual device tree source files and the binding documents to add
    support for new board and new drivers.

    In the future we will probably separate those into two branches, and
    in the long run, the plan is to move the device tree source files out
    of the kernel repository, but that has to wait until we have completed
    a much larger portion of the binding documents."

    Fix up trivial conflicts in arch/arm/mach-imx/clk-imx6q.c due to newly
    added clkdev registers next to a few removed unnecessary ones.

    * tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (119 commits)
    ARM: LPC32xx: Add PWM to base dts file
    ARM: EXYNOS: mark the DMA channel binding for SPI as preliminary
    ARM: dts: Add nodes for spi controllers for SAMSUNG EXYNOS5 platforms
    ARM: EXYNOS: Enable platform support for SPI controllers for EXYNOS5
    ARM: EXYNOS: Add spi clock support for EXYNOS5
    ARM: dts: Add nodes for spi controllers for SAMSUNG EXYNOS4 platforms
    ARM: EXYNOS: Enable platform support for SPI controllers for EXYNOX4
    ARM: EXYNOS: Fix the incorrect hierarchy of spi controller bus clock
    ARM: ux500: Remove PMU platform registration when booting with DT
    ARM: ux500: Remove temporary snowball_of_platform_devs enablement structure
    ARM: ux500: Ensure vendor specific properties have the vendor's identifier
    pinctrl: pinctrl-nomadik: Append sleepmode property with vendor specific prefixes
    ARM: ux500: Move rtc-pl031 registration to Device Tree when enabled
    ARM: ux500: Enable the AB8500 RTC for all DT:ed DB8500 based devices
    ARM: ux500: Correctly reference IRQs supplied by the AB8500 from Device Tree
    ARM: ux500: Apply ab8500-debug node do the db8500 DT structure
    ARM: ux500: Add a ab8500-usb Device Tree node for db8500 based devices
    ARM: ux500: Add db8500 Device Tree node for misc/ab8500-pwm
    ARM: ux500: Add db8500 Device Tree node for ab8500-sysctrl
    ARM: ux500: Enable LED heartbeat functionality on Snowbal via DT
    ...

    Linus Torvalds
     

20 Jul, 2012

1 commit


19 Jul, 2012

1 commit

  • With the changes in the random tree, IRQF_SAMPLE_RANDOM is now a
    no-op; interrupt randomness is now collected unconditionally in a very
    low-overhead fashion; see commit 775f4b297b. The IRQF_SAMPLE_RANDOM
    flag was scheduled to be removed in 2009 on the
    feature-removal-schedule, so this patch is preparation for the final
    removal of this flag.

    Signed-off-by: "Theodore Ts'o"
    Acked-by: Peter Korsgaard

    Theodore Ts'o
     

13 Jul, 2012

1 commit


10 Jul, 2012

1 commit


03 Jul, 2012

2 commits

  • Allow device tree probing.

    Cc: Grant Likely
    Cc: Rob Herring
    Cc: Alan Cox
    Cc:
    Signed-off-by: Fabio Estevam
    Signed-off-by: Subodh Nijsure
    Acked-by: Greg Kroah-Hartman
    Signed-off-by: Shawn Guo

    Fabio Estevam
     
  • From Shawn Guo , this makes it possible to use
    sparse irqs with mach-imx.

    * 'imx/sparse-irq' of git://git.linaro.org/people/shawnguo/linux-2.6:
    ARM: imx: enable SPARSE_IRQ for imx platform
    ARM: fiq: change FIQ_START to a variable
    tty: serial: imx: remove the use of MXC_INTERNAL_IRQS
    ARM: imx: remove unneeded mach/irq.h inclusion
    i2c: imx: remove unneeded mach/irqs.h inclusion
    ARM: imx: add a legacy irqdomain for mx31ads
    ARM: imx: add a legacy irqdomain for 3ds_debugboard
    ARM: imx: pass gpio than irq number into mxc_expio_init
    ARM: imx: leave irq_base of wm8350_platform_data uninitialized
    dma: ipu: remove the use of ipu_platform_data
    ARM: imx: move irq_domain_add_legacy call into avic driver
    ARM: imx: move irq_domain_add_legacy call into tzic driver
    gpio/mxc: move irq_domain_add_legacy call into gpio driver
    ARM: imx: eliminate macro IRQ_GPIOx()
    ARM: imx: eliminate macro IOMUX_TO_IRQ()
    ARM: imx: eliminate macro IMX_GPIO_TO_IRQ()

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

01 Jul, 2012

1 commit

  • As the part of the effort to enable SPARE_IRQ for imx platform,
    the macro MXC_INTERNAL_IRQS will be removed. The imx serial driver
    has a references to it for a decision on flags of request_irq call
    based on rtsirq is beyond MXC_INTERNAL_IRQS. However the searching
    on imx platform code tells that rtsirq will never be beyond
    MXC_INTERNAL_IRQS. That said, the check, consequently the reference
    to MXC_INTERNAL_IRQS are not needed, so remove them.

    Signed-off-by: Shawn Guo
    Cc: linux-serial@vger.kernel.org
    Acked-by: Greg Kroah-Hartman
    Acked-by: Sascha Hauer
    Acked-by: Dong Aisheng

    Shawn Guo
     

29 Jun, 2012

1 commit


21 Jun, 2012

1 commit

  • Pull serial driver fixes from Greg Kroah-Hartman:
    "Here are 3 patches resolving a boot regression (the mop500 fix), a
    build warning fix, and a kernel-doc fix. All tiny, but should go into
    the final 3.5 release.

    Signed-off-by: Greg Kroah-Hartman "

    * tag 'tty-3.5-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    serial/amba-pl011: move custom pin control to driver
    serial: fix serial_txx9.c build warning/typo
    serial: fix kernel-doc warnings in 8250.c

    Linus Torvalds
     

16 Jun, 2012

1 commit

  • Pull five Xen bug-fixes from Konrad Rzeszutek Wilk:

    - When booting as PVHVM we would try to use PV console - but would not validate
    the parameters causing us to crash during restore b/c we re-use the wrong event
    channel.
    - When booting on machines with SR-IOV PCI bridge we didn't check for the bridge
    and tried to use it.
    - Under AMD machines would advertise the APERFMPERF resulting in needless amount
    of MSRs from the guest.
    - A global value (xen_released_pages) was not subtracted at bootup when pages
    were added back in. This resulted in the balloon worker having the wrong
    account of how many pages were truly released.
    - Fix dead-lock when xen-blkfront is run in the same domain as xen-blkback.

    * tag 'stable/for-linus-3.5-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    xen: mark local pages as FOREIGN in the m2p_override
    xen/setup: filter APERFMPERF cpuid feature out
    xen/balloon: Subtract from xen_released_pages the count that is populated.
    xen/pci: Check for PCI bridge before using it.
    xen/events: Add WARN_ON when quick lookup found invalid type.
    xen/hvc: Check HVM_PARAM_CONSOLE_[EVTCHN|PFN] for correctness.
    xen/hvc: Fix error cases around HVM_PARAM_CONSOLE_PFN
    xen/hvc: Collapse error logic.

    Linus Torvalds
     

13 Jun, 2012

6 commits

  • …h/trivial' into sh-fixes-for-linus

    Paul Mundt
     
  • The driver supports a maximum number of ports configurable at compile
    time. Make sure the probe() method fails when registering a port that
    exceeds the maximum instead of returning success without registering the
    port.

    This fixes a crash at system suspend time, when the driver tried to
    suspend a non-registered port using the UART core.

    Signed-off-by: Laurent Pinchart
    Signed-off-by: Paul Mundt

    Laurent Pinchart
     
  • When probing fails, the driver must not try to cleanup resources that
    have not been initialized. Fix this.

    Signed-off-by: Laurent Pinchart
    Signed-off-by: Paul Mundt

    Laurent Pinchart
     
  • We had a boot regression in Ux500 in the merge window because
    two orthogonal pin control schemes for the PL011 were merged
    at the same time:

    - One using the .init() and .exit() hooks into the platform
    for Ux500 putting the pins into default vs sleep state
    respectively as the port was started/stopped.
    commit a09806607fd20bed2f8c41fe22793386790a14aa
    "ARM: ux500: switch to using pinctrl for uart0"

    - One hogging the default setting at PL011 probe()
    commit 258e055111d3cde2607e0d04eb91da2f7a59b591
    "serial: amba-pl011: adopt pinctrl support"

    To get a solution that works for both let's scrap the stuff
    in the platform callbacks, instead have the driver itself
    select default and sleep states when the port is
    started/stopped. Hopefully this works for all clients.
    Platform callbacks are bad for device tree migration anyway,
    so this rids us of another problem in Ux500.

    Cc: Shawn Guo
    Cc: Russell King
    Reported-by: Lee Jones
    Signed-off-by: Linus Walleij
    Tested-by: Shawn Guo
    Signed-off-by: Greg Kroah-Hartman

    Linus Walleij
     
  • Fix kconfig symbol test to use "defined":

    drivers/tty/serial/serial_txx9.c: warning: "CONFIG_CONSOLE_POLL" is not defined [-Wundef]

    Reported-by: Geert Uytterhoeven
    Signed-off-by: Randy Dunlap
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     
  • Fix kernel-doc warnings in drivers/tty/serial/8250/8250.c:

    Warning(drivers/tty/serial/8250/8250.c:3128): No description found for parameter 'up'
    Warning(drivers/tty/serial/8250/8250.c:3128): Excess function parameter 'port' description in 'serial8250_register_8250_port'

    Signed-off-by: Randy Dunlap
    Acked-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     

03 Jun, 2012

1 commit

  • This reverts the tty layer change to use per-tty locking, because it's
    not correct yet, and fixing it will require some more deep surgery.

    The main revert is d29f3ef39be4 ("tty_lock: Localise the lock"), but
    there are several smaller commits that built upon it, they also get
    reverted here. The list of reverted commits is:

    fde86d310886 - tty: add lockdep annotations
    8f6576ad476b - tty: fix ldisc lock inversion trace
    d3ca8b64b97e - pty: Fix lock inversion
    b1d679afd766 - tty: drop the pty lock during hangup
    abcefe5fc357 - tty/amiserial: Add missing argument for tty_unlock()
    fd11b42e3598 - cris: fix missing tty arg in wait_event_interruptible_tty call
    d29f3ef39be4 - tty_lock: Localise the lock

    The revert had a trivial conflict in the 68360serial.c staging driver
    that got removed in the meantime.

    Signed-off-by: Linus Torvalds

    Linus Torvalds