26 Nov, 2013

10 commits

  • This reverts commit c284ee2cf12b55fa8496b2d098bf0938688f1c1c. Turns out
    the locking was incorrect.

    Reported-by: Fengguang Wu
    Cc: Chao Bi
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • With multiple, concurrent readers (each waiting to acquire the
    atomic_read_lock mutex), a departing reader may mistakenly reset
    minimum_to_wake after a new reader has already set a new value.

    Protect the minimum_to_wake reset with the atomic_read_lock critical
    section.

    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • A common security idiom is to hangup the current tty (via vhangup())
    after forking but before execing a root shell. This hangs up any
    existing opens which other processes may have and ensures subsequent
    opens have the necessary permissions to open the root shell tty/pty.

    Reset the TTY_HUPPED state after the driver has successfully
    returned the opened tty (perform the reset while the tty is locked
    to avoid racing with concurrent hangups).

    Reported-by: Heorhi Valakhanovich
    Signed-off-by: Peter Hurley
    Cc: stable # 3.12
    Tested-by: Heorhi Valakhanovich
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • When booting a multi-platform m68k kernel on a non-Amiga with
    "console=ttyS0" on the kernel command line, it crashes with:

    Unable to handle kernel access at virtual address 81dff01c
    Oops: 00000000
    PC: [] serial_console_write+0xc/0x70

    Add the missing platform check to amiserial_console_init() to fix this.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Greg Kroah-Hartman

    Geert Uytterhoeven
     
  • When booting a multi-platform m68k kernel on a non-Mac with "console=ttyS0"
    on the kernel command line, it crashes with:

    Unable to handle kernel NULL pointer dereference at virtual address (null)
    Oops: 00000000
    PC: [] __pmz_startup+0x32/0x2a0
    ...
    Call Trace: [] pmz_console_setup+0x64/0xe4

    The normal tty driver doesn't crash, because init_pmz() checks
    pmz_ports_count again after calling pmz_probe().

    In the serial console initialization path, pmz_console_init() doesn't do
    this, causing the driver to crash later.

    Add a check for pmz_ports_count to fix this.

    Signed-off-by: Geert Uytterhoeven
    Cc: Finn Thain
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Greg Kroah-Hartman

    Geert Uytterhoeven
     
  • ttyA has ld associated to n_gsm, when ttyA is closing, it triggers
    to release gsmttyB's ld data dlci[B], then race would happen if gsmttyB
    is opening in parallel.

    Here are race cases we found recently in test:

    CASE #1
    ====================================================================
    releasing dlci[B] race with gsmtty_install(gsmttyB), then panic
    in gsmtty_open(gsmttyB), as below:

    tty_release(ttyA) tty_open(gsmttyB)
    | |
    ----- gsmtty_install(gsmttyB)
    | |
    ----- gsm_dlci_alloc(gsmttyB) => alloc dlci[B]
    tty_ldisc_release(ttyA) -----
    | |
    gsm_dlci_release(dlci[B]) -----
    | |
    gsm_dlci_free(dlci[B]) -----
    | |
    ----- gsmtty_open(gsmttyB)

    gsmtty_open()
    {
    struct gsm_dlci *dlci = tty->driver_data; => here it uses dlci[B]
    ...
    }

    In gsmtty_open(gsmttyA), it uses dlci[B] which was release, so hit a panic.
    =====================================================================

    CASE #2
    =====================================================================
    releasing dlci[0] race with gsmtty_install(gsmttyB), then panic
    in gsmtty_open(), as below:

    tty_release(ttyA) tty_open(gsmttyB)
    | |
    ----- gsmtty_install(gsmttyB)
    | |
    ----- gsm_dlci_alloc(gsmttyB) => alloc dlci[B]
    | |
    ----- gsmtty_open(gsmttyB) fail
    | |
    ----- tty_release(gsmttyB)
    | |
    ----- gsmtty_close(gsmttyB)
    | |
    ----- gsmtty_detach_dlci(dlci[B])
    | |
    ----- dlci_put(dlci[B])
    | |
    tty_ldisc_release(ttyA) -----
    | |
    gsm_dlci_release(dlci[0]) -----
    | |
    gsm_dlci_free(dlci[0]) -----
    | |
    ----- dlci_put(dlci[0])

    In gsmtty_detach_dlci(dlci[B]), it tries to use dlci[0] which was released,
    then hit panic.
    =====================================================================

    IMHO, n_gsm tty operations would refer released ldisc, as long as
    gsm_dlci_release() has chance to release ldisc data when some gsmtty operations
    are not completed..

    This patch is try to avoid it by:

    1) in n_gsm driver, use a global gsm spin lock to avoid gsm_dlci_release() run in
    parallel with gsmtty_install();

    2) Increase dlci's ref count in gsmtty_install() instead of in gsmtty_open(), the
    purpose is to prevent gsm_dlci_release() releasing dlci after gsmtty_install()
    allocats dlci but before gsmtty_open increases dlci's ref count;

    3) Decrease dlci's ref count in gsmtty_remove(), which is a tty framework api, and
    this is the opposite process of step 2).

    Signed-off-by: Chao Bi
    Signed-off-by: Greg Kroah-Hartman

    Chao Bi
     
  • Commit 9326b047e4fd4a8da72e59d913214a1803e9709c includes a typo
    of "8350_core" instead of "8250_core", so correct it.

    Fixes kernel bugzilla #60724:
    https://bugzilla.kernel.org/show_bug.cgi?id=60724

    Reported-by: Christoph Biedl
    Signed-off-by: Randy Dunlap
    Cc: Jiri Slaby
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     
  • Although the maximum allowable canonical line is specified to
    be 255 bytes (MAX_CANON), the practical limit has actually been
    the size of the line discipline read buffer (N_TTY_BUF_SIZE == 4096).

    Commit 32f13521ca68bc624ff6effc77f308a52b038bf0,
    n_tty: Line copy to user buffer in canonical mode, limited the
    line copy to 4095 bytes. With a completely full line discipline
    read buffer and a userspace buffer > 4095, _no_ data was copied,
    and the read() syscall returned 0, indicating EOF.

    Fix the interval arithmetic to compute the correct number of bytes
    to copy to userspace in the range [1..4096].

    Cc: # 3.12.x
    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • Commit cbfd0340ae1993378fd47179db949e050e16e697,
    'n_tty: Process echoes in blocks', introduced an error when
    consuming the echo buffer tail to prevent buffer overrun, where
    the incorrect operation code byte is checked to determine how
    far to advance the tail to the next echo byte.

    Check the correct byte for the echo operation code byte.

    Cc: # 3.12.x : c476f65 tty: incorrect test of echo_buf() result for ECHO_OP_START
    Cc: # 3.12.x
    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     
  • A departing reader must restart a flush_to_ldisc() worker _before_
    the next reader enters the read loop; this is to avoid the new reader
    concluding no more i/o is available and prematurely exiting, when the
    old reader simply hasn't re-started the worker yet.

    Cc: stable # 3.12
    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     

21 Nov, 2013

1 commit

  • Pull slave-dmaengine changes from Vinod Koul:
    "This brings for slave dmaengine:

    - Change dma notification flag to DMA_COMPLETE from DMA_SUCCESS as
    dmaengine can only transfer and not verify validaty of dma
    transfers

    - Bunch of fixes across drivers:

    - cppi41 driver fixes from Daniel

    - 8 channel freescale dma engine support and updated bindings from
    Hongbo

    - msx-dma fixes and cleanup by Markus

    - DMAengine updates from Dan:

    - Bartlomiej and Dan finalized a rework of the dma address unmap
    implementation.

    - In the course of testing 1/ a collection of enhancements to
    dmatest fell out. Notably basic performance statistics, and
    fixed / enhanced test control through new module parameters
    'run', 'wait', 'noverify', and 'verbose'. Thanks to Andriy and
    Linus [Walleij] for their review.

    - Testing the raid related corner cases of 1/ triggered bugs in
    the recently added 16-source operation support in the ioatdma
    driver.

    - Some minor fixes / cleanups to mv_xor and ioatdma"

    * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (99 commits)
    dma: mv_xor: Fix mis-usage of mmio 'base' and 'high_base' registers
    dma: mv_xor: Remove unneeded NULL address check
    ioat: fix ioat3_irq_reinit
    ioat: kill msix_single_vector support
    raid6test: add new corner case for ioatdma driver
    ioatdma: clean up sed pool kmem_cache
    ioatdma: fix selection of 16 vs 8 source path
    ioatdma: fix sed pool selection
    ioatdma: Fix bug in selftest after removal of DMA_MEMSET.
    dmatest: verbose mode
    dmatest: convert to dmaengine_unmap_data
    dmatest: add a 'wait' parameter
    dmatest: add basic performance metrics
    dmatest: add support for skipping verification and random data setup
    dmatest: use pseudo random numbers
    dmatest: support xor-only, or pq-only channels in tests
    dmatest: restore ability to start test at module load and init
    dmatest: cleanup redundant "dmatest: " prefixes
    dmatest: replace stored results mechanism, with uniform messages
    Revert "dmatest: append verify result to results"
    ...

    Linus Torvalds
     

15 Nov, 2013

2 commits

  • Pull Xen updates from Konrad Rzeszutek Wilk:
    "This has tons of fixes and two major features which are concentrated
    around the Xen SWIOTLB library.

    The short is that the tracing facility (just one function) has
    been added to SWIOTLB to make it easier to track I/O progress.
    Additionally under Xen and ARM (32 & 64) the Xen-SWIOTLB driver
    "is used to translate physical to machine and machine to physical
    addresses of foreign[guest] pages for DMA operations" (Stefano) when
    booting under hardware without proper IOMMU.

    There are also bug-fixes, cleanups, compile warning fixes, etc.

    The commit times for some of the commits is a bit fresh - that is b/c
    we wanted to make sure we have the Ack's from the ARM folks - which
    with the string of back-to-back conferences took a bit of time. Rest
    assured - the code has been stewing in #linux-next for some time.

    Features:
    - SWIOTLB has tracing added when doing bounce buffer.
    - Xen ARM/ARM64 can use Xen-SWIOTLB. This work allows Linux to
    safely program real devices for DMA operations when running as a
    guest on Xen on ARM, without IOMMU support. [*1]
    - xen_raw_printk works with PVHVM guests if needed.

    Bug-fixes:
    - Make memory ballooning work under HVM with large MMIO region.
    - Inform hypervisor of MCFG regions found in ACPI DSDT.
    - Remove deprecated IRQF_DISABLED.
    - Remove deprecated __cpuinit.

    [*1]:
    "On arm and arm64 all Xen guests, including dom0, run with second
    stage translation enabled. As a consequence when dom0 programs a
    device for a DMA operation is going to use (pseudo) physical
    addresses instead machine addresses. This work introduces two trees
    to track physical to machine and machine to physical mappings of
    foreign pages. Local pages are assumed mapped 1:1 (physical address
    == machine address). It enables the SWIOTLB-Xen driver on ARM and
    ARM64, so that Linux can translate physical addresses to machine
    addresses for dma operations when necessary. " (Stefano)"

    * tag 'stable/for-linus-3.13-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (32 commits)
    xen/arm: pfn_to_mfn and mfn_to_pfn return the argument if nothing is in the p2m
    arm,arm64/include/asm/io.h: define struct bio_vec
    swiotlb-xen: missing include dma-direction.h
    pci-swiotlb-xen: call pci_request_acs only ifdef CONFIG_PCI
    arm: make SWIOTLB available
    xen: delete new instances of added __cpuinit
    xen/balloon: Set balloon's initial state to number of existing RAM pages
    xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas.
    xen: remove deprecated IRQF_DISABLED
    x86/xen: remove deprecated IRQF_DISABLED
    swiotlb-xen: fix error code returned by xen_swiotlb_map_sg_attrs
    swiotlb-xen: static inline xen_phys_to_bus, xen_bus_to_phys, xen_virt_to_bus and range_straddles_page_boundary
    grant-table: call set_phys_to_machine after mapping grant refs
    arm,arm64: do not always merge biovec if we are running on Xen
    swiotlb: print a warning when the swiotlb is full
    swiotlb-xen: use xen_dma_map/unmap_page, xen_dma_sync_single_for_cpu/device
    xen: introduce xen_dma_map/unmap_page and xen_dma_sync_single_for_cpu/device
    tracing/events: Fix swiotlb tracepoint creation
    swiotlb-xen: use xen_alloc/free_coherent_pages
    xen: introduce xen_alloc/free_coherent_pages
    ...

    Linus Torvalds
     
  • Use this new function to make code more comprehensible, since we are
    reinitialzing the completion, not initializing.

    [akpm@linux-foundation.org: linux-next resyncs]
    Signed-off-by: Wolfram Sang
    Acked-by: Linus Walleij (personally at LCE13)
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wolfram Sang
     

12 Nov, 2013

2 commits

  • Pull devicetree updates from Rob Herring:
    "DeviceTree updates for 3.13. This is a bit larger pull request than
    usual for this cycle with lots of clean-up.

    - Cross arch clean-up and consolidation of early DT scanning code.
    - Clean-up and removal of arch prom.h headers. Makes arch specific
    prom.h optional on all but Sparc.
    - Addition of interrupts-extended property for devices connected to
    multiple interrupt controllers.
    - Refactoring of DT interrupt parsing code in preparation for
    deferred probe of interrupts.
    - ARM cpu and cpu topology bindings documentation.
    - Various DT vendor binding documentation updates"

    * tag 'devicetree-for-3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (82 commits)
    powerpc: add missing explicit OF includes for ppc
    dt/irq: add empty of_irq_count for !OF_IRQ
    dt: disable self-tests for !OF_IRQ
    of: irq: Fix interrupt-map entry matching
    MIPS: Netlogic: replace early_init_devtree() call
    of: Add Panasonic Corporation vendor prefix
    of: Add Chunghwa Picture Tubes Ltd. vendor prefix
    of: Add AU Optronics Corporation vendor prefix
    of/irq: Fix potential buffer overflow
    of/irq: Fix bug in interrupt parsing refactor.
    of: set dma_mask to point to coherent_dma_mask
    of: add vendor prefix for PHYTEC Messtechnik GmbH
    DT: sort vendor-prefixes.txt
    of: Add vendor prefix for Cadence
    of: Add empty for_each_available_child_of_node() macro definition
    arm/versatile: Fix versatile irq specifications.
    of/irq: create interrupts-extended property
    microblaze/pci: Drop PowerPC-ism from irq parsing
    of/irq: Create of_irq_parse_and_map_pci() to consolidate arch code.
    of/irq: Use irq_of_parse_and_map()
    ...

    Linus Torvalds
     
  • Pull powerpc updates from Benjamin Herrenschmidt:
    "The bulk of this is LE updates. One should now be able to build an LE
    kernel and even run some things in it.

    I'm still sitting on a handful of patches to enable the new ABI that I
    *might* still send this merge window around, but due to the
    incertainty (they are pretty fresh) I want to keep them separate.

    Other notable changes are some infrastructure bits to better handle
    PCI pass-through under KVM, some bits and pieces added to the new
    PowerNV platform support such as access to the CPU SCOM bus via sysfs,
    and support for EEH error handling on PHB3 (Power8 PCIe).

    We also grew arch_get_random_long() for both pseries and powernv when
    running on P7+ and P8, exploiting the HW rng.

    And finally various embedded updates from freescale"

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (154 commits)
    powerpc: Fix fatal SLB miss when restoring PPR
    powerpc/powernv: Reserve the correct PE number
    powerpc/powernv: Add PE to its own PELTV
    powerpc/powernv: Add support for indirect XSCOM via debugfs
    powerpc/scom: Improve debugfs interface
    powerpc/scom: Enable 64-bit addresses
    powerpc/boot: Properly handle the base "of" boot wrapper
    powerpc/bpf: Support MOD operation
    powerpc/bpf: Fix DIVWU instruction opcode
    of: Move definition of of_find_next_cache_node into common code.
    powerpc: Remove big endianness assumption in of_find_next_cache_node
    powerpc/tm: Remove interrupt disable in __switch_to()
    powerpc: word-at-a-time optimization for 64-bit Little Endian
    powerpc/bpf: BPF JIT compiler for 64-bit Little Endian
    powerpc: Only save/restore SDR1 if in hypervisor mode
    powerpc/pmu: Fix ADB_PMU_LED_IDE dependencies
    powerpc/nvram: Fix endian issue when using the partition length
    powerpc/nvram: Fix endian issue when reading the NVRAM size
    powerpc/nvram: Scan partitions only once
    powerpc/mpc512x: remove unnecessary #if
    ...

    Linus Torvalds
     

09 Nov, 2013

1 commit

  • Linux 3.12-rc5

    Because the Stefano branch (for SWIOTLB ARM changes) is based on that.

    Signed-off-by: Konrad Rzeszutek Wilk

    * tag 'v3.12-rc5': (550 commits)
    Linux 3.12-rc5
    watchdog: sunxi: Fix section mismatch
    watchdog: kempld_wdt: Fix bit mask definition
    watchdog: ts72xx_wdt: locking bug in ioctl
    ARM: exynos: dts: Update 5250 arch timer node with clock frequency
    parisc: let probe_kernel_read() capture access to page zero
    parisc: optimize variable initialization in do_page_fault
    parisc: fix interruption handler to respect pagefault_disable()
    parisc: mark parisc_terminate() noreturn and cold.
    parisc: remove unused syscall_ipi() function.
    parisc: kill SMP single function call interrupt
    parisc: Export flush_cache_page() (needed by lustre)
    vfs: allow O_PATH file descriptors for fstatfs()
    ext4: fix memory leak in xattr
    ARC: Ignore ptrace SETREGSET request for synthetic register "stop_pc"
    ALSA: hda - Sony VAIO Pro 13 (haswell) now has a working headset jack
    ALSA: hda - Add a headset mic model for ALC269 and friends
    ALSA: hda - Fix microphone for Sony VAIO Pro 13 (Haswell model)
    compiler/gcc4: Add quirk for 'asm goto' miscompilation bug
    Revert "i915: Update VGA arbiter support for newer devices"
    ...

    Konrad Rzeszutek Wilk
     

08 Nov, 2013

2 commits

  • Pull s390 updates from Martin Schwidefsky:
    "The bulk of the patches for the 3.13 merge window.

    Heiko spent quite a bit of work to improve the code generation for the
    kernel. That includes the exploitation of the interlocked-access
    facility for the atomics and bitops implementation and the improvement
    for the -march and -mtune compiler settings.

    Another important change is the removal of the user_mode=home option,
    user processes now always run in primary space. The storage keys are
    not initialized at system startup any more, with that the storage key
    removal work is complete. For the PCI support the hibernation hooks
    have been implemented.

    And as usual cleanup and fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (62 commits)
    s390/scm_blk: fix endless loop for requests != REQ_TYPE_FS
    s390/mm,tlb: correct tlb flush on page table upgrade
    s390/mm: page_table_realloc returns failure
    s390: allow to set gcc -mtune flag
    s390/percpu: remove this_cpu_xor() implementation
    s390/vtime: correct idle time calculation
    s390/time: fix get_tod_clock_ext inline assembly
    tty/hvc_iucv: remove redundant NULL check
    s390/dasd: Write to profile data area only if it is available
    s390: convert use of typedef ctl_table to struct ctl_table
    s390/pci: cleanup function information block
    s390/pci: remove CONFIG_PCI_DEBUG dependancy
    s390/pci: message cleanup
    Update default configuration
    s390: add a couple of useful defconfigs
    s390/percpu: make use of interlocked-access facility 1 instructions
    s390/percpu: use generic percpu ops for CONFIG_32BIT
    s390/compat: make psw32_user_bits a constant value again
    s390: fix handling of runtime instrumentation psw bit
    s390: fix save and restore of the floating-point-control register
    ...

    Linus Torvalds
     
  • Rob Herring
     

07 Nov, 2013

1 commit

  • Pull tty/serial driver updates from Greg KH:
    "Here's the big tty/serial driver update for 3.13-rc1.

    There's some more minor n_tty work here, but nothing like previous
    kernel releases. Also some new driver ids, driver updates for new
    hardware, and other small things.

    All of this has been in linux-next for a while with no issues"

    * tag 'tty-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (84 commits)
    serial: omap: fix missing comma
    serial: sh-sci: Enable the driver on all ARM platforms
    serial: mfd: Staticize local symbols
    serial: omap: fix a few checkpatch warnings
    serial: omap: improve RS-485 performance
    mrst_max3110: fix unbalanced IRQ issue during resume
    serial: omap: Add support for optional wake-up
    serial: sirf: remove duplicate defines
    tty: xuartps: Fix build error when COMMON_CLK is not set
    tty: xuartps: Fix build error due to missing forward declaration
    tty: xuartps: Fix "may be used uninitialized" build warning
    serial: 8250_pci: add Pericom PCIe Serial board Support (12d8:7952/4/8) - Chip PI7C9X7952/4/8
    tty: xuartps: Update copyright information
    tty: xuartps: Implement suspend/resume callbacks
    tty: xuartps: Dynamically adjust to input frequency changes
    tty: xuartps: Updating set_baud_rate()
    tty: xuartps: Force enable the UART in xuartps_console_write
    tty: xuartps: support 64 byte FIFO size
    tty: xuartps: Add polled mode support for xuartps
    tty: xuartps: Implement BREAK detection, add SYSRQ support
    ...

    Linus Torvalds
     

01 Nov, 2013

1 commit


30 Oct, 2013

11 commits

  • Vinod Koul
     
  • Renesas ARM platforms are transitioning from single-platform to
    multi-platform kernels using the new ARCH_SHMOBILE_MULTI. Make the
    driver available on all ARM platforms to enable it on both ARCH_SHMOBILE
    and ARCH_SHMOBILE_MULTI, and increase build testing coverage with
    COMPILE_TEST.

    Signed-off-by: Laurent Pinchart
    Signed-off-by: Greg Kroah-Hartman

    Laurent Pinchart
     
  • These local symbols are used only in this file.
    Fix the following sparse warnings:

    drivers/tty/serial/mfd.c:296:6: warning: symbol 'hsu_dma_tx' was not declared. Should it be static?
    drivers/tty/serial/mfd.c:343:6: warning: symbol 'hsu_dma_start_rx_chan' was not declared. Should it be static?
    drivers/tty/serial/mfd.c:389:6: warning: symbol 'hsu_dma_rx' was not declared. Should it be static?
    drivers/tty/serial/mfd.c:1186:17: warning: symbol 'serial_hsu_pops' was not declared. Should it be static?

    Signed-off-by: Jingoo Han
    Signed-off-by: Greg Kroah-Hartman

    Jingoo Han
     
  • Signed-off-by: Philippe Proulx
    Signed-off-by: Greg Kroah-Hartman

    Philippe Proulx
     
  • If RS-485 is enabled, make the OMAP UART fire THR interrupts when both
    TX FIFO and TX shift register are empty instead of polling the
    equivalent status bit. This removes the burst of interrupt requests
    seen at every end of transmission.

    Also: the comment said that the TX FIFO trigger level was set at 16
    characters when it's 32 in reality.

    Signed-off-by: Philippe Proulx
    Signed-off-by: Greg Kroah-Hartman

    Philippe Proulx
     
  • During resume, a startup will request_irq again, meantime resume function's
    enable_irq will cause unbalanced IRQ issue.
    Fix this issue by moving request_irq to probe function.

    Signed-off-by: David Cohen
    Signed-off-by: Chen, Jie
    Signed-off-by: Greg Kroah-Hartman

    Chen, Jie
     
  • With the recent pinctrl-single changes, omaps can treat
    wake-up events from deeper idle states as interrupts.

    There's a separate "io chain" controller on most omaps
    that stays enabled when the device hits off-idle and the
    regular interrupt controller is powered off.

    Let's add support for the optional second interrupt for
    wake-up events. And then serial-omap can manage the
    wake-up interrupt from it's runtime PM calls to avoid
    spurious interrupts during runtime.

    Note that the wake interrupt is board specific as it
    uses the UART RX pin, and for omap3, there are six pin
    options for UART3 RX pin.

    Also Note that the legacy platform based booting handles
    the wake-ups in the legacy mux driver and does not need to
    pass the wake-up interrupt to the driver.

    And finally, to pass the wake-up interrupt in the dts file,
    either interrupt-map or the pending interrupts-extended
    property needs to be passed. It's probably best to use
    interrupts-extended when it's available.

    Cc: Felipe Balbi
    Cc: Kevin Hilman
    Cc: Linus Walleij
    Reviewed-by: Felipe Balbi
    Reviewed-by: Roger Quadros
    Signed-off-by: Tony Lindgren
    Signed-off-by: Greg Kroah-Hartman

    Tony Lindgren
     
  • This patch removes duplicate defines in drivers/tty/serial/sirfsoc_uart.h

    Signed-off-by: Michael Opdenacker
    Signed-off-by: Greg Kroah-Hartman

    Michael Opdenacker
     
  • Clock notifiers are only available when CONFIG_COMMON_CLK is enabled.
    Hence all notifier related code has to be protected by corresponsing
    ifdefs.

    Signed-off-by: Soren Brinkmann
    Reported-by: kbuild test robot
    Signed-off-by: Greg Kroah-Hartman

    Soren Brinkmann
     
  • If CONFIG_PM_SLEEP is enabled and CONFIG_SERIAL_XILINX_PS_UART_CONSOLE
    is not, a forward declaration of the uart_driver struct is not
    included, leading to a build error due to an undeclared variable.
    Fixing this by moving the definition of the struct uart_driver before
    the definition of the suspend/resume callbacks.

    Signed-off-by: Soren Brinkmann
    Reported-by: kbuild test robot
    Signed-off-by: Greg Kroah-Hartman

    Soren Brinkmann
     
  • Initialize varibles for which a 'may be used uninitalized' warning is
    issued.

    Signed-off-by: Soren Brinkmann
    Reported-by: kbuild test robot
    Signed-off-by: Greg Kroah-Hartman

    Soren Brinkmann
     

28 Oct, 2013

1 commit


25 Oct, 2013

1 commit


24 Oct, 2013

1 commit

  • Replace some instances of of_irq_map_one()/irq_create_of_mapping() and
    of_irq_to_resource() by the simpler equivalent irq_of_parse_and_map().

    Signed-off-by: Thierry Reding
    Acked-by: Rob Herring
    [grant.likely: resolved conflicts with core code renames]
    Signed-off-by: Grant Likely

    Thierry Reding
     

20 Oct, 2013

6 commits