1. 29 5月, 2014 18 次提交
    • H
      serial: imx: remove the DMA wait queue · e2f27866
      Huang Shijie 提交于
      The DMA wait queue makes the code very complicated:
        For RX, the @->stop_rx hook does not really stop the RX;
        For TX, the @->stop_tx hook does not really stop the TX.
      
      The above make the imx_shutdown has to wait the RX/TX DMA to be finished.
      
      In order to make code more simple, this patch removes the DMA wait queue.
      By calling the dmaengine_terminate_all, this patch makes the RX stops
      immediately after we call the @->stop_rx hook, so does the TX.
      Signed-off-by: NHuang Shijie <b32955@freescale.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      e2f27866
    • H
      serial: imx: remove the redundant code · 8eccd0cd
      Huang Shijie 提交于
      In the imx_startup(), we will reset the uart port which will reset all
      the FIFOs, including the URXD.
      
      So the code to clear the RX FIFO is redundant. Just remove it.
      Signed-off-by: NHuang Shijie <b32955@freescale.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8eccd0cd
    • H
      serial: imx: reset the uart port all the time · 772f8991
      Huang Shijie 提交于
      Current code resets the uart port only when it supports the irda mode.
      In actually, we also need to reset the uart port in the non-irda mode.
      A hang was caught in the following case:
      
          UART A transmits data to the other end. But the transmission maybe
          terminated. In some corner case, the TX FIFO maybe not empty.
      
      The kernel will hang at the imx_set_termios():
      	............................................................
      	while (!(readl(sport->port.membase + USR2) & USR2_TXDC))
      		barrier();
      	............................................................
      
      This patch resets the uart port all the time in the imx_startup().
      And fix the hang.
      Signed-off-by: NHuang Shijie <b32955@freescale.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      772f8991
    • T
      serial: Add support for Advantech PCM-3614I/PCM-3618I serial expansion cards · 0c6d774c
      Thomee Wright 提交于
      Add support for Advantech PCM-3614I/PCM-3618I serial expansion cards
      
      Advantech makes a variety of serial port expansion cards, including the
      PCM-3614 and PCM-3618
      (http://www.advantech.com/products/1-2JKLU5/PCM-3618/mod_5DF8DE5A-6B49-4429-BB2F-CB35FE1D168D.aspx).
      They have a driver available which was forked from the kernel driver
      ages ago and has not been maintained in quite some time, available at
      http://support.advantech.com.tw/Support/DownloadSRDetail_New.aspx?SR_ID=1-1W8FZ5&Doc_Source=Download
      Their driver added several features to aid in communications at higher
      baud rates, but at normal serial port speeds, the standard 8250_pci
      driver functions just fine. This patch adds the necessary PCI IDs to
      recognize this card.
      
      See bug 75681 (https://bugzilla.kernel.org/show_bug.cgi?id=75681)
      Signed-off-by: NThomee Wright <TWright@TMCDesign.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      0c6d774c
    • F
      serial: imx: Disable new features of autobaud detection · b38cb7d2
      Fabio Estevam 提交于
      Bit 7 of UCR3 is described in the i.MX reference manuals (with the exception
      of i.MX1) as follows:
      
      ADNIMP: Autobaud Detection Not Improved-. Disables new features of
      	autobaud detection (See Baud Rate Automatic Detection
      	Protocol, for more details).
      
      	0 Autobaud detection new features selected
      	1 Keep old autobaud detection mechanism
      
      The "new features" mechanism occasionally cause the receiver to get out of sync
      and continuously produce received characters of '\xff'.
      
      In order to reproduce the problem:
      
      $ stty -F /dev/ttymxc0 19200
      
      - Change the terminal baudrate to 19200
      
      - Type in the console and it should look good
      
      - Change the terminal baudrate back to 115200
      
      - Type 'b' in the console, then a stream of garbage characters is seen.
      
      Also rename the bit definition as per the reference manual.
      
      Tested on mx6q, mx6dl, mx6solo and mx53.
      
      Based on a patch from Eric Nelson for U-boot.
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Tested-by: NEric Nelson <eric.nelson@boundarydevices.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      b38cb7d2
    • S
      serial: sh-sci: Add device tree support for r8a7779 · 81bd1eb7
      Simon Horman 提交于
      Simply document a new compat string.
      There appears to be no need for a driver updates.
      Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NSimon Horman <horms+renesas@verge.net.au>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      81bd1eb7
    • E
      parport: Add support for the WCH353 1S/1P multi-IO card · feb58142
      Ezequiel Garcia 提交于
      This Multi-IO card has one serial 16550-like and one parallel port connector.
      Here's the lspci output, after this commit is applied:
      
      03:07.0 Serial controller: Device 4348:5053 (rev 10) (prog-if 02 [16550])
      	Subsystem: Device 4348:5053
      	Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
      	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
      	Interrupt: pin A routed to IRQ 21
      	Region 0: I/O ports at cf00 [size=8]
      	Region 1: I/O ports at ce00 [size=8]
      	Kernel driver in use: parport_serial
      	Kernel modules: 8250_pci, parport_serial
      
      This commit adds an entry with the device ID to the blacklist declared in
      8250_pci to prevent the driver from taking ownership. Also, and as was done
      for the 2S/1P variant, add a quirk to skip autodetection and set the correct
      type to 16550A clone.
      
      Proper entries are added to parport_serial, to support the device parallel
      and serial ports.
      
      Cc: Gianluca Anzolin <gianluca@sottospazio.it>
      Cc: Alan Cox <alan@linux.intel.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      feb58142
    • V
      serial: efm32: add module_exit · c67f866d
      Vincent Stehlé 提交于
      Add missing specification of efm32_uart_exit as module_exit.
      
      This fixes the following compilation warning:
      
        drivers/tty/serial/efm32-uart.c:840:123: warning: ‘efm32_uart_exit’ defined but not used [-Wunused-function]
      Signed-off-by: NVincent Stehlé <vincent.stehle@laposte.net>
      Cc: Jiri Slaby <jslaby@suse.cz>
      Acked-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      c67f866d
    • J
      serial: samsung: Neaten dbg uses · e4ac92df
      Joe Perches 提交于
      Add format and argument checking and fix misuses in the dbg macro.
      
      Add __printf
      Use %pR for resource
      Add #include guard to samsung.h
      Move static functions from .h to .c
      Use vscnprintf instead of length unguarded vsprintf
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      e4ac92df
    • J
      tty: serial: men_z135_uart: Don't activate TX Space available IRQ on startup · 10389e66
      Johannes Thumshirn 提交于
      Don't activate the TX Space available IRQ on startup, or a simple
      $ cat /dev/ttyHSU0
      will cause an endless amount of IRQs, as there is always space in
      the TX FIFO available if no data is going to be sent.
      
      Also correct comments for IRQ names (RX and TX swapped).
      Signed-off-by: NJohannes Thumshirn <johannes.thumshirn@men.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      10389e66
    • D
      serial: st-asc: Fix data corruption during long console bursts · 1ffcd67d
      Daniel Thompson 提交于
      On my test platform (B2020/STiH416) the serial port issues bad characters
      during the initial message avalanche as the console comes up. The problem
      also occurs when dense(ish) I/O is done using the polled I/O interface.
      
      The problem is fixed for me by using the FIFO half-empty bit rather than
      FIFO full bit. Note that using the half-empty bit causes the FIFO to be
      managed in a similar way to interrupt based I/O (i.e. where the hardware
      gets best test coverage).
      
      Running the FIFO half full will have no impact (good or bad) on console
      performance. The UART will still remain fully saturated and the busy-wait
      until the FIFO is empty in asc_console_write() will complete at the same
      time.
      Signed-off-by: NDaniel Thompson <daniel.thompson@linaro.org>
      Acked-by: NMaxime Coquelin <maxime.coquelin@st.com>
      Acked-by: NSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      1ffcd67d
    • M
      tty: serial: uartlite: Specify time for sending chars · d3352154
      Michal Simek 提交于
      Xilinx MDM (Microblaze Debug Module) also contains
      uart interface via JTAG which is compatible with
      uartlite driver. This interface is really slow
      that's why timeout is setup to 1s.
      
      Make this time delay not to be cpu speed dependent.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      Acked-by: NPeter Korsgaard <peter@korsgaard.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d3352154
    • G
      serial: SERIAL_FSL_LPUART should depend on HAS_DMA · ac623914
      Geert Uytterhoeven 提交于
      If NO_DMA=y:
      
      drivers/built-in.o: In function `lpuart_dma_rx_free':
      fsl_lpuart.c:(.text+0x7da28): undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `lpuart_dma_tx_free':
      fsl_lpuart.c:(.text+0x7da60): undefined reference to `dma_unmap_single'
      drivers/built-in.o: In function `lpuart_dma_rx':
      fsl_lpuart.c:(.text+0x7dab8): undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `lpuart_dma_tx':
      fsl_lpuart.c:(.text+0x7db7e): undefined reference to `dma_sync_single_for_cpu'
      drivers/built-in.o: In function `lpuart_copy_rx_to_tty':
      fsl_lpuart.c:(.text+0x7dcd4): undefined reference to `dma_sync_single_for_cpu'
      make[3]: *** [vmlinux] Error 1
      Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      ac623914
    • Q
      serial: sirf: fix spinlock deadlock issue · 07d410e0
      Qipan Li 提交于
      commit fb78b811 provide a workaround for
      kernel panic, but bring potential deadlock risk. that is in
      sirfsoc_rx_tmo_process_tl while enter into sirfsoc_uart_pio_rx_chars
      cpu hold uart_port->lock, if uart interrupt comes cpu enter into
      sirfsoc_uart_isr and deadlock occurs in getting uart_port->lock.
      
      the patch replace spin_lock version to spin_lock_irq* version to avoid
      spinlock dead lock issue. let function tty_flip_buffer_push in tasklet
      outof spin_lock_irq* protect area to avoid add the pair of spin_lock and
      spin_unlock for tty_flip_buffer_push.
      BTW drop self defined unused spinlock protect of tx_lock/rx_lock.
      
      56274.220464] BUG: spinlock lockup suspected on CPU#0, swapper/0/0
      [56274.223648]  lock: 0xc05d9db0, .magic: dead4ead, .owner: swapper/0/0,
      	.owner_cpu: 0
      	[56274.231278] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G
      	O 3.10.35 #1
      	[56274.238241] [<c0015530>] (unwind_backtrace+0x0/0xf4) from
      	[<c00120d8>] (show_stack+0x10/0x14)
      	[56274.246742] [<c00120d8>] (show_stack+0x10/0x14) from
      	[<c01b11b0>] (do_raw_spin_lock+0x110/0x184)
      	[56274.255501] [<c01b11b0>] (do_raw_spin_lock+0x110/0x184) from
      	[<c02124c8>] (sirfsoc_uart_isr+0x20/0x42c)
      	[56274.264874] [<c02124c8>] (sirfsoc_uart_isr+0x20/0x42c) from
      	[<c0075790>] (handle_irq_event_percpu+0x54/0x17c)
      	[56274.274758] [<c0075790>] (handle_irq_event_percpu+0x54/0x17c)
      	from [<c00758f4>] (handle_irq_event+0x3c/0x5c)
      	[56274.284561] [<c00758f4>] (handle_irq_event+0x3c/0x5c) from
      	[<c0077fa0>] (handle_level_irq+0x98/0xfc)
      	[56274.293670] [<c0077fa0>] (handle_level_irq+0x98/0xfc) from
      	[<c0074f44>] (generic_handle_irq+0x2c/0x3c)
      	[56274.302952] [<c0074f44>] (generic_handle_irq+0x2c/0x3c) from
      	[<c000ef80>] (handle_IRQ+0x40/0x90)
      	[56274.311706] [<c000ef80>] (handle_IRQ+0x40/0x90) from
      	[<c000dc80>] (__irq_svc+0x40/0x70)
      	[56274.319697] [<c000dc80>] (__irq_svc+0x40/0x70) from
      	[<c038113c>] (_raw_spin_unlock_irqrestore+0x10/0x48)
      	[56274.329158] [<c038113c>]
      	(_raw_spin_unlock_irqrestore+0x10/0x48) from [<c0200034>]
      	(tty_port_tty_get+0x58/0x90)
      	[56274.339213] [<c0200034>] (tty_port_tty_get+0x58/0x90) from
      	[<c0212008>] (sirfsoc_uart_pio_rx_chars+0x1c/0xc8)
      	[56274.349097] [<c0212008>]
      	(sirfsoc_uart_pio_rx_chars+0x1c/0xc8) from [<c0212ef8>]
      	(sirfsoc_rx_tmo_process_tl+0xe4/0x1fc)
      	[56274.359853] [<c0212ef8>]
      	(sirfsoc_rx_tmo_process_tl+0xe4/0x1fc) from [<c0027c04>]
      	(tasklet_action+0x84/0x114)
      	[56274.369739] [<c0027c04>] (tasklet_action+0x84/0x114) from
      	[<c0027db4>] (__do_softirq+0x120/0x200)
      	[56274.378585] [<c0027db4>] (__do_softirq+0x120/0x200) from
      	[<c0027f44>] (do_softirq+0x54/0x5c)
      	[56274.386998] [<c0027f44>] (do_softirq+0x54/0x5c) from
      	[<c00281ec>] (irq_exit+0x9c/0xd0)
      	[56274.394899] [<c00281ec>] (irq_exit+0x9c/0xd0) from
      	[<c000ef84>] (handle_IRQ+0x44/0x90)
      	[56274.402790] [<c000ef84>] (handle_IRQ+0x44/0x90) from
      	[<c000dc80>] (__irq_svc+0x40/0x70)
      	[56274.410774] [<c000dc80>] (__irq_svc+0x40/0x70) from
      	[<c0288af4>] (cpuidle_enter_state+0x50/0xe0)
      	[56274.419532] [<c0288af4>] (cpuidle_enter_state+0x50/0xe0) from
      	[<c0288c34>] (cpuidle_idle_call+0xb0/0x148)
      	[56274.429080] [<c0288c34>] (cpuidle_idle_call+0xb0/0x148) from
      	[<c000f3ac>] (arch_cpu_idle+0x8/0x38)
      	[56274.438016] [<c000f3ac>] (arch_cpu_idle+0x8/0x38) from
      	[<c0059344>] (cpu_startup_entry+0xfc/0x140)
      	[56274.446956] [<c0059344>] (cpu_startup_entry+0xfc/0x140) from
      	[<c04a3a54>] (start_kernel+0x2d8/0x2e4)
      Signed-off-by: NQipan Li <Qipan.Li@csr.com>
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      07d410e0
    • B
      serial: sirf: move to writel for TXFIFO instead of writeb · 205c384f
      Barry Song 提交于
      All SiRFSoC UART registers are in 32-bits. If we use writeb for
      TXFIFO, actually all of 32-bits are still written, for TXTIFO,
      only low 8-bits are valid, so in prima2&atlas6, this causes no
      problem.
      But in the new atlas7, using writeb to write UART registers will
      cause an imprecise data abort as HW does check the "wrong" writeb.
      So move to writel and this also makes the code consistent with
      sirfsoc_uart_pio_tx_chars() in which we use writel.
      Signed-off-by: NBarry Song <Baohua.Song@csr.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      205c384f
    • A
      serial: add missing SERIAL_CORE dependencies · 717e1cb2
      Arnd Bergmann 提交于
      Two new drivers have been added since 3.14, the MEN 16z135 uart, and
      the ARM semihosting console. Both are missing an explicit 'select
      SERIAL_CORE', which can leads build errors when no other driver
      selects the core, as found during ARM randconfig testing.
      In case of the ARM semihosting console, we also have to select
      SERIAL_CORE_CONSOLE.
      
      This adds the missing 'select' statements.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      717e1cb2
    • J
      serial: sc16is7xx: dynamically allocate tx/rx buffer · beb04a9f
      Jon Ringle 提交于
      This fixes the warnings:
      
         drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_handle_rx':
      >> drivers/tty/serial/sc16is7xx.c:548:1: warning: 'sc16is7xx_handle_rx' uses dynamic stack allocation [enabled by default]
         drivers/tty/serial/sc16is7xx.c: In function 'sc16is7xx_handle_tx':
      >> drivers/tty/serial/sc16is7xx.c:589:1: warning: 'sc16is7xx_handle_tx' uses dynamic stack allocation [enabled by default]
      Signed-off-by: NJon Ringle <jringle@gridpoint.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      beb04a9f
    • J
      serial: sc16is7xx: compile I2C when REGMAP_I2C is module · 3df5adb2
      Jan Moskyto Matejka 提交于
      drivers/tty/serial/sc16is7xx.c:1060:12: warning: 'sc16is7xx_probe' defined but not used [-Wunused-function]
       static int sc16is7xx_probe(struct device *dev,
                  ^
      drivers/tty/serial/sc16is7xx.c:1176:12: warning: 'sc16is7xx_remove' defined but not used [-Wunused-function]
       static int sc16is7xx_remove(struct device *dev)
                  ^
      drivers/tty/serial/sc16is7xx.c:1215:29: warning: 'regcfg' defined but not used [-Wunused-variable]
       static struct regmap_config regcfg = {
                                   ^
      
      Fixed these warnings by removing the `#ifdef CONFIG_REGMAP_I2C' around their
      calls as this driver selects REGMAP_I2C in Kconfig. This part of driver just
      didn't compile at all when REGMAP_I2C configured as module (CONFIG_REGMAP_I2C
      is not defined, just CONFIG_REGMAP_I2C_MODULE).
      Signed-off-by: NJan Moskyto Matejka <mq@suse.cz>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3df5adb2
  2. 28 5月, 2014 2 次提交
  3. 04 5月, 2014 2 次提交
  4. 28 4月, 2014 13 次提交
    • G
      Merge 3.15-rc3 into tty-next · f379a071
      Greg Kroah-Hartman 提交于
      f379a071
    • L
      Linux 3.15-rc3 · d1db0eea
      Linus Torvalds 提交于
      d1db0eea
    • W
      word-at-a-time: avoid undefined behaviour in zero_bytemask macro · ec6931b2
      Will Deacon 提交于
      The asm-generic, big-endian version of zero_bytemask creates a mask of
      bytes preceding the first zero-byte by left shifting ~0ul based on the
      position of the first zero byte.
      
      Unfortunately, if the first (top) byte is zero, the output of
      prep_zero_mask has only the top bit set, resulting in undefined C
      behaviour as we shift left by an amount equal to the width of the type.
      As it happens, GCC doesn't manage to spot this through the call to fls(),
      but the issue remains if architectures choose to implement their shift
      instructions differently.
      
      An example would be arch/arm/ (AArch32), where LSL Rd, Rn, #32 results
      in Rd == 0x0, whilst on arch/arm64 (AArch64) LSL Xd, Xn, #64 results in
      Xd == Xn.
      
      Rather than check explicitly for the problematic shift, this patch adds
      an extra shift by 1, replacing fls with __fls. Since zero_bytemask is
      never called with a zero argument (has_zero() is used to check the data
      first), we don't need to worry about calling __fls(0), which is
      undefined.
      
      Cc: <stable@vger.kernel.org>
      Cc: Victor Kamensky <victor.kamensky@linaro.org>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ec6931b2
    • L
      Merge branch 'safe-dirty-tlb-flush' · ac6c9e2b
      Linus Torvalds 提交于
      This merges the patch to fix possible loss of dirty bit on munmap() or
      madvice(DONTNEED).  If there are concurrent writers on other CPU's that
      have the unmapped/unneeded page in their TLBs, their writes to the page
      could possibly get lost if a third CPU raced with the TLB flush and did
      a page_mkclean() before the page was fully written.
      
      Admittedly, if you unmap() or madvice(DONTNEED) an area _while_ another
      thread is still busy writing to it, you deserve all the lost writes you
      could get.  But we kernel people hold ourselves to higher quality
      standards than "crazy people deserve to lose", because, well, we've seen
      people do all kinds of crazy things.
      
      So let's get it right, just because we can, and we don't have to worry
      about it.
      
      * safe-dirty-tlb-flush:
        mm: split 'tlb_flush_mmu()' into tlb flushing and memory freeing parts
      ac6c9e2b
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 33c0022f
      Linus Torvalds 提交于
      Pull btrfs fixes from Chris Mason.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: limit the path size in send to PATH_MAX
        Btrfs: correctly set profile flags on seqlock retry
        Btrfs: use correct key when repeating search for extent item
        Btrfs: fix inode caching vs tree log
        Btrfs: fix possible memory leaks in open_ctree()
        Btrfs: avoid triggering bug_on() when we fail to start inode caching task
        Btrfs: move btrfs_{set,clear}_and_info() to ctree.h
        btrfs: replace error code from btrfs_drop_extents
        btrfs: Change the hole range to a more accurate value.
        btrfs: fix use-after-free in mount_subvol()
      33c0022f
    • L
      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · 2b9d1c05
      Linus Torvalds 提交于
      Pull arm fixes from Russell King:
       "A number of fixes for the PJ4/iwmmxt changes which arm-soc forced me
        to take during the merge window.  This stuff should have been better
        tested and sorted out *before* the merge window"
      
      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: 8042/1: iwmmxt: allow to build iWMMXt on Marvell PJ4B
        ARM: 8041/1: pj4: fix cpu_is_pj4 check
        ARM: 8040/1: pj4: properly detect existence of iWMMXt coprocessor
        ARM: 8039/1: pj4: enable iWMMXt only if CONFIG_IWMMXT is set
        ARM: 8038/1: iwmmxt: explicitly check for supported architectures
      2b9d1c05
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · afa3cad7
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
       - compat renameat2 syscall wiring and __NR_compat_syscalls fix
       - TLB fix for transparent huge pages following switch to generic
         mmu_gather
       - spinlock initialisation for init_mm's context
       - move of_clk_init() earlier
       - Kconfig duplicate entry fix
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: init: Move of_clk_init to time_init
        arm64: initialize spinlock for init_mm's context
        arm64: debug: remove noisy, pointless warning
        arm64: mm: Add THP TLB entries to general mmu_gather
        arm64: add renameat2 compat syscall
        ARM64: Remove duplicated Kconfig entry for "kernel/power/Kconfig"
        arm64: __NR_compat_syscalls fix
      afa3cad7
    • L
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d9e9e8e2
      Linus Torvalds 提交于
      Pull irq fixes from Thomas Gleixner:
       "A slighlty large fix for a subtle issue in the CPU hotplug code of
        certain ARM SoCs, where the not yet online cpu needs to setup the cpu
        local timer and needs to set the interrupt affinity to itself.
        Setting interrupt affinity to a not online cpu is prohibited and
        therefor the timer interrupt ends up on the wrong cpu, which leads to
        nasty complications.
      
        The SoC folks tried to hack around that in the SoC code in some more
        than nasty ways.  The proper solution is to have a way to enforce the
        affinity setting to a not online cpu.  The core patch to the genirq
        code provides that facility and the follow up patches make use of it
        in the GIC interrupt controller and the exynos timer driver.
      
        The change to the core code has no implications to existing users,
        except for the rename of the locked function and therefor the
        necessary fixup in mips/cavium.  Aside of that, no runtime impact is
        possible, as none of the existing interrupt chips implements anything
        which depends on the force argument of the irq_set_affinity()
        callback"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource: Exynos_mct: Register clock event after request_irq()
        clocksource: Exynos_mct: Use irq_force_affinity() in cpu bringup
        irqchip: Gic: Support forced affinity setting
        genirq: Allow forcing cpu affinity of interrupts
      d9e9e8e2
    • L
      Merge tag 'tty-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · a8d70698
      Linus Torvalds 提交于
      Pull tty/serial fixes from Greg KH:
       "Here are a few tty/serial fixes for 3.15-rc3 that resolve a number of
        reported issues in the 8250 and samsung serial drivers, as well as a
        character loss fix for the tty core that was caused by the lock
        removal patches a release ago"
      
      * tag 'tty-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        serial_core: fix uart PORT_UNKNOWN handling
        serial: samsung: Change barrier() to cpu_relax() in console output
        serial: samsung: don't check config for every character
        serial: samsung: Use the passed in "port", fixing kgdb w/ no console
        serial: 8250: Fix thread unsafe __dma_tx_complete function
        8250_core: Fix unwanted TX chars write
        tty: Fix race condition between __tty_buffer_request_room and flush_to_ldisc
      a8d70698
    • L
      Merge tag 'staging-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · d0c15ad7
      Linus Torvalds 提交于
      Pull staging / IIO driver fixes from Greg KH:
       "Here are some small staging and IIO driver fixes for 3.15-rc3.
      
        Nothing major at all, just some assorted issues that people have
        reported"
      
      * tag 'staging-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: comedi: usbdux: bug fix for accessing 'ao_chanlist' in private data
        iio: adc: mxs-lradc: fix warning when buidling on avr32
        iio: cm36651: Fix i2c client leak and possible NULL pointer dereference
        iio: querying buffer scan_mask should return 0/1
        staging:iio:ad2s1200 fix a missing break
        iio: adc: at91_adc: correct default shtim value
        ARM: at91: at91sam9260: change at91_adc name
        ARM: at91: at91sam9g45: change at91_adc name
        iio: cm32181: Fix read integration time function
        iio: adc: at91_adc: Repair broken platform_data support
      d0c15ad7
    • L
      Merge tag 'driver-core-3.15-rc3' of... · 005fbcd0
      Linus Torvalds 提交于
      Merge tag 'driver-core-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fixes from Greg KH:
       "Here are some kernfs fixes for 3.15-rc3 that resolve some reported
        problems.  Nothing huge, but all needed"
      
      * tag 'driver-core-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        s390/ccwgroup: Fix memory corruption
        kernfs: add back missing error check in kernfs_fop_mmap()
        kernfs: fix a subdir count leak
      005fbcd0
    • L
      Merge tag 'usb-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · fefb8275
      Linus Torvalds 提交于
      Pull USB fixes from Greg KH:
       "Here are a number of USB fixes for 3.15-rc3.  The majority are gadget
        fixes, as we didn't get any of those in for 3.15-rc2.  The others are
        all over the place, and there's a number of new device id addtions as
        well."
      
      * tag 'usb-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (35 commits)
        usb: option: add and update a number of CMOTech devices
        usb: option: add Alcatel L800MA
        usb: option: add Olivetti Olicard 500
        usb: qcserial: add Sierra Wireless MC7305/MC7355
        usb: qcserial: add Sierra Wireless MC73xx
        usb: qcserial: add Sierra Wireless EM7355
        USB: io_ti: fix firmware download on big-endian machines
        usb/xhci: fix compilation warning when !CONFIG_PCI && !CONFIG_PM
        xhci: extend quirk for Renesas cards
        xhci: Switch Intel Lynx Point ports to EHCI on shutdown.
        usb: xhci: Prefer endpoint context dequeue pointer over stopped_trb
        phy: core: make NULL a valid phy reference if !CONFIG_GENERIC_PHY
        phy: fix kernel oops in phy_lookup()
        phy: restore OMAP_CONTROL_PHY dependencies
        phy: exynos: fix building as a module
        USB: serial: fix sysfs-attribute removal deadlock
        usb: wusbcore: fix panic in wusbhc_chid_set
        usb: wusbcore: convert nested lock to use spin_lock instead of spin_lock_irq
        uwb: don't call spin_unlock_irq in a USB completion handler
        usb: chipidea: coordinate usb phy initialization for different phy type
        ...
      fefb8275
    • L
      Merge tag 'pm+acpi-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · e9dba837
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
       "These include a fix for a recent ACPI regression related to device
        notifications, intel_idle fix related to IvyTown support, fix for a
        buffer size issue in ACPICA, PM core fix related to the "freeze" sleep
        state, four fixes for various types of breakage in cpufreq drivers, a
        PNP workaround for a wrong memory region size in ACPI tables, and a
        fix and cleanup for the ACPI tools Makefile.
      
        Specifics:
      
         - Fix for broken ACPI notifications on some systems caused by a
           recent ACPI hotplug commit that blocked the propagation of unknown
           type notifications to device drivers inadvertently.
      
         - intel_idle fix to make the IvyTown C-states handling (added
           recently) work as intended which now is broken due to missing
           braces.  From Christoph Jaeger.
      
         - ACPICA fix to make it allocate buffers of the right sizes for the
           Generic Serial Bus operation region access.  From Lv Zheng.
      
         - PM core fix unblocking cpuidle before entering the "freeze" sleep
           state which causes that state to be able to actually save more
           energy than runtime idle.
      
         - Configuration and build fixes for the highbank and powernv cpufreq
           drivers from Kefeng Wang and Srivatsa S Bhat.
      
         - Coccinelle warning fix related to error pointers for the unicore32
           cpufreq driver from Duan Jiong.
      
         - Integer overflow fix for the ppc-corenet cpufreq driver from Geert
           Uytterhoeven.
      
         - Workaround for BIOSes that don't report the entire Intel MCH area
           in their ACPI tables from Bjorn Helgaas.
      
         - ACPI tools Makefile fix and cleanup from Thomas Renninger"
      
      * tag 'pm+acpi-3.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / notify: Do not block unknown type notifications in root handler
        PNP: Work around BIOS defects in Intel MCH area reporting
        cpufreq: highbank: fix ARM_HIGHBANK_CPUFREQ dependency warning
        cpufreq: ppc: Fix integer overflow in expression
        cpufreq, powernv: Fix build failure on UP
        cpufreq: unicore32: replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO
        PM / suspend: Make cpuidle work in the "freeze" state
        intel_idle: fix IVT idle state table setting
        ACPICA: Fix buffer allocation issue for generic_serial_bus region accesses.
        tools/power/acpi: Minor bugfixes
      e9dba837
  5. 26 4月, 2014 5 次提交