01 Feb, 2008

2 commits

  • A userspace program may wish to set the mark for each packets its send
    without using the netfilter MARK target. Changing the mark can be used
    for mark based routing without netfilter or for packet filtering.

    It requires CAP_NET_ADMIN capability.

    Signed-off-by: Laszlo Attila Toth
    Acked-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Laszlo Attila Toth
     
  • This header file exists only for some hacks to adapt alsa-driver
    tree. It's useless for building in the kernel. Let's move a few
    lines in it to sound/core.h and remove it.
    With this patch, sound/driver.h isn't removed but has just a single
    compile warning to include it. This should be really killed in
    future.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Jaroslav Kysela

    Takashi Iwai
     

29 Jan, 2008

1 commit


28 Jan, 2008

30 commits

  • * pxa-plat: (53 commits)
    [ARM] 4762/1: Basic support for Toradex Colibri module
    [ARM] pxa: fix mci_init functions returning -1
    [ARM] 4737/1: Refactor corgi_lcd to improve readability + bugfix
    [ARM] 4747/1: pcm027: support for pcm990 baseboard for phyCORE-PXA270
    [ARM] 4746/1: pcm027: network support for phyCORE-PXA270
    [ARM] 4745/1: pcm027: default configuration
    [ARM] 4744/1: pcm027: add support for phyCORE-PXA270 CPU module
    [NET] smc91x: Make smc91x use IRQ resource trigger flags
    [ARM] pxa: add default config for littleton
    [ARM] pxa: add basic support for Littleton (PXA3xx Form Factor Platform)
    [ARM] 4664/1: Add basic support for HTC Magician PDA phones
    [ARM] 4649/1: Base support for pxa-based Toshiba e-series PDAs.
    [ARM] pxa: skip registers saving/restoring if entering standby mode
    [ARM] pxa: fix PXA27x resume
    [ARM] pxa: Avoid fiddling with CKEN register on suspend
    [ARM] pxa: Add PXA3 standby code hooked into the IRQ wake scheme
    [ARM] pxa: Add zylonite MFP wakeup configurations
    [ARM] pxa: program MFPs for low power mode when suspending
    [ARM] pxa: make MFP configuration processor independent
    [ARM] pxa: remove un-used pxa3xx_mfp_set_xxx() functions
    ...

    Conflicts:

    arch/arm/mach-pxa/ssp.c

    Signed-off-by: Russell King

    Russell King
     
  • * orion: (26 commits)
    [ARM] Orion: implement power-off method for QNAP TS-109/209
    [ARM] Orion: add support for QNAP TS-109/TS-209
    [ARM] Orion: I2C support
    [I2C] i2c-mv64xxx: Don't set i2c_adapter.retries
    [I2C] Split mv643xx I2C platform support
    [ARM] Orion: enable CONFIG_RTC_DRV_M41T80 for D-Link DNS-323
    [ARM] Orion defconfig
    [ARM] Orion: add support for Orion/MV88F5181 based D-Link DNS-323
    [ARM] Orion: MV88F5181 support bits
    [ARM] Orion: Buffalo/Revogear Kurobox Pro support
    [ARM] OrionNAS RD board support
    [ARM] Orion: support for Marvell Orion-2 (88F5281) Development Board
    [ARM] Orion: common platform setup for Gigabit Ethernet port
    [ARM] Orion: platform device registration for UART, USB and NAND
    [ARM] Orion: system timer support
    [ARM] Orion edge GPIO IRQ support
    [ARM] Orion: IRQ support
    [ARM] Orion: provide GPIO method for enabling hardware assisted blinking
    [ARM] Orion: GPIO support
    [ARM] Orion: programable address map support
    ...

    Conflicts:

    arch/arm/Kconfig
    arch/arm/Makefile

    Signed-off-by: Russell King

    Russell King
     
  • …2410', 'sa1100' and 'vfp' into devel

    * at91: (24 commits)
    [ARM] 4615/4: sam926[13]ek buttons updated
    [ARM] 4765/1: [AT91] AT91CAP9A-DK board support
    [ARM] 4764/1: [AT91] AT91CAP9 core support
    [ARM] 4738/1: at91sam9261: Remove udc pullup enabling in board initialisation
    [ARM] 4761/1: [AT91] Board-support for NEW_LEDs
    [ARM] 4760/1: [AT91] SPI CS0 errata on AT91RM9200
    [ARM] 4759/1: [AT91] Buttons on CSB300
    [ARM] 4758/1: [AT91] LEDs
    [ARM] 4757/1: [AT91] UART initialization
    [ARM] 4756/1: [AT91] Makefile cleanup
    [ARM] 4755/1: [AT91] NAND update
    [ARM] 4754/1: [AT91] SSC library support
    [ARM] 4753/1: [AT91] Use DMA_BIT_MASK
    [ARM] 4752/1: [AT91] RTT, RTC and WDT peripherals on SAM9
    [ARM] 4751/1: [AT91] ISI peripheral on SAM9263
    [ARM] 4750/1: [AT91] STN LCD displays on SAM9261
    [ARM] 4734/1: at91sam9263ek: include IRQ for Ethernet PHY
    [ARM] 4646/1: AT91: configurable HZ, default to 128
    [ARM] 4688/1: at91: speed-up irq processing
    [ARM] 4657/1: AT91: Header definition update
    ...

    * ep93xx:
    [ARM] 4671/1: ep93xx: remove obsolete gpio_line_* operations
    [ARM] 4670/1: ep93xx: implement IRQT_BOTHEDGE gpio irq sense type
    [ARM] 4669/1: ep93xx: simplify GPIO code and cleanups
    [ARM] 4668/1: ep93xx: implement new GPIO API

    * iop:
    [ARM] 4770/1: GLAN Tank: correct physmap_flash_data width field
    [ARM] 4732/1: GLAN Tank: register rtc-rs5c372 i2c device
    [ARM] 4708/1: iop: update defconfigs for 2.6.24

    * kprobes:
    ARM kprobes: let's enable it
    ARM kprobes: special hook for the kprobes breakpoint handler
    ARM kprobes: prevent some functions involved with kprobes from being probed
    ARM kprobes: don't let a single-stepped stmdb corrupt the exception stack
    ARM kprobes: add the kprobes hook to the page fault handler
    ARM kprobes: core code
    ARM kprobes: instruction single-stepping support

    * ks8695:
    [ARM] 4603/1: KS8695: debugfs interface to view pin state
    [ARM] 4601/1: KS8695: PCI support

    * misc:
    [ARM] remove duplicate includes
    [ARM] CONFIG_DEBUG_STACK_USAGE
    [ARM] 4689/1: small comment wrap fix
    [ARM] 4687/1: Trivial arch/arm/kernel/entry-common.S comment fix
    [ARM] 4666/1: ixp4xx: fix sparse warnings in include/asm-arm/arch-ixp4xx/io.h
    [ARM] remove reference to non-existent MTD_OBSOLETE_CHIPS
    [SERIAL] 21285: Report baud rate back via termios
    [ARM] Remove pointless casts from void pointers,
    [ARM] Misc minor interrupt handler cleanups
    [ARM] Remove at91_lcdc.h
    [ARM] ARRAY_SIZE() cleanup
    [ARM] Update mach-types

    * msm:
    [ARM] msm: dma support for MSM7X00A
    [ARM] msm: board file for MACH_HALIBUT (QCT MSM7200A)
    [ARM] msm: irq and timer support for ARCH_MSM7X00A
    [ARM] msm: core platform support for ARCH_MSM7X00A

    * s3c2410: (33 commits)
    [ARM] 4795/1: S3C244X: Add armclk and setparent call
    [ARM] 4794/1: S3C24XX: Comonise S3C2440 and S3C2442 clock code
    [ARM] 4793/1: S3C24XX: Add IRQ->GPIO pin mapping function
    [ARM] 4792/1: S3C24XX: Remove warnings from debug-macro.S
    [ARM] 4791/1: S3C2412: Make fclk a parent of msysclk
    [ARM] 4790/1: S3C2412: Fix parent selection for msysclk.
    [ARM] 4789/1: S3C2412: Add missing CLKDIVN register values
    [ARM] 4788/1: S3C24XX: Fix paramet to s3c2410_dma_ctrl if S3C2410_DMAF_AUTOSTART used.
    [ARM] 4787/1: S3C24XX: s3c2410_dma_request() should return the allocated channel number
    [ARM] 4786/1: S3C2412: Add SPI FIFO controll constants
    [ARM] 4785/1: S3C24XX: Add _SHIFT definitions for S3C2410_BANKCON registers
    [ARM] 4784/1: S3C24XX: Fix GPIO restore glitches
    [ARM] 4783/1: S3C24XX: Add s3c2410_gpio_getpull()
    [ARM] 4782/1: S3C24XX: Define FIQ_START for any FIQ users
    [ARM] 4781/1: S3C24XX: DMA suspend and resume support
    [ARM] 4780/1: S3C2412: Allow for seperate DMA channels for TX and RX
    [ARM] 4779/1: S3C2412: Add s3c2412_gpio_set_sleepcfg() call
    [ARM] 4778/1: S3C2412: Add armclk and init from DVS state
    [ARM] 4777/1: S3C24XX: Ensure clk_set_rate() checks the set_rate method for the clk
    [ARM] 4775/1: s3c2410: fix compilation error if only s3c2442 cpu is selected
    ...

    * sa1100:
    [ARM] sa1100: add clock source support

    * vfp:
    [ARM] 4584/2: ARMv7: Add Advanced SIMD (NEON) extension support
    [ARM] 4583/1: ARMv7: Add VFPv3 support
    [ARM] 4582/2: Add support for the common VFP subarchitecture

    Russell King
     
  • Add the reverse of s3c2410_gpio_getirq to convert
    a IRQ number into a GPIO pin number.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Remove warnings left in include/asm-arm/arch-s3c2410/debug-macro.S
    whilst these where being experimented with.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add S3C2412_CLKDIVN_DVSEN and S3C2412_CLKDIVN_HALFHCLK definitions to
    the S3C2412_CLKDIVN set.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add control constants for the S3C2412 SPI unit FIFO.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add definitions to allow easier decomposotion of the contents of
    the S3C2410_BANKON registers

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add the call s3c2410_gpio_getpull() to return the
    current state of the pin's pull-up.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Ensure FIQ_START is defined to allow anyone to use FIQ code on
    an S3C24XX based CPU.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • If an DMA channel was active at suspend, then ensure that
    it is correctly reconfigured when the system resumes.

    Note, the previous policy was for each driver to handle their
    own reconfiguration on resume. The policy has been changed to
    make the individual driver's job easier.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • The current S3C24XX DMA code does not allow for an peripheral
    that has one channel for RX and another for TX.

    This patch adds a per-cpu dma operation to select the transmit
    or receive channel, and adds support to the S3C2412 for the
    seperate DMA channels for TX and RX.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add s3c2412_gpio_set_sleepcfg() to allow the setting of the sleep
    configuration of the GPIO blocks.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • This patch fixes compilation error if only a machine with
    s3c2442 cpu is selected but without s3c2440 cpu selected.

    Signed-off-by: Krzysztof Helt
    Acked-by: Ben Dooks
    Signed-off-by: Russell King

    Krzysztof Helt
     
  • Ensure that if the RTC IRQ is not selected for wake in the
    base configuration, then the PWRCFG has the same value set
    in it.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • S3C2412_GPESLPCON does not exist in the register
    mappings, so remove it.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • The S3C2412 IIS engine differs from the previous
    SoC in the range, so add a set of register definitions
    in a seperate file for it.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • If the watchdog reset fails and we decided to take the jump
    to zero approach, allow 50ms for the UARTS to drain the FIFOs
    before calling into a bootloader that may flush the output.

    Also reduece the waits and the timeout values as 5 seconds is
    rather long.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • If the hard reset routine is using the watchdog, then
    ensure that the clock for the watchdog has been enabled
    before we try and issue a reset.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add the S3C2412_PWRCFG values for the action taken on detecting that
    the battery is flat.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • Add S3C2412 register definitions.

    Signed-off-by: Ben Dooks
    Signed-off-by: Russell King

    Ben Dooks
     
  • This patch adds support for Toradex' PXA27x based Colibri module.
    It's kept as simple as possible to only provide basic functionality.
    A default config is also included.

    Signed-off-by: Daniel Mack
    Signed-off-by: Russell King

    Daniel Mack
     
  • This patch refactors the code in corgi_lcd.c moving it to the board
    specific corgi and spitz files where appropriate instead of the
    existing ifdef mess which hinders readability.

    Fix spitz_get_hsync_len() to call get_hsync_invperiod so pxafb can be
    compiled as a module.

    The confusing variables which represent the inverse horizintal sync
    period are renamed to "invperiod" consistently.

    An incorrect comment in corgi_ts.c is also corrected.

    Signed-off-by: Richard Purdie
    Signed-off-by: Russell King

    Richard Purdie
     
  • This patch adds baseboard support for the phyCORE-PXA270 development
    kit (aka PCM-990).

    This example shows how to use some phyCORE-PXA270 CPU module features
    on a baseboard in a standard manner. It could be used as a starting
    point for custom baseboard development.

    V2:
    After comments by Eric Miao:
    - IRQ chained handler fixed
    - video/graphic support moved to separate patch
    - ifdef/endif hell reduced ;-)

    V3:
    After comments by Russell King
    - initialise the mmci platform data statically

    V4:
    After comments by Russell King
    - wrong return value in pcm990_mci_init() fixed

    Signed-off-by: Juergen Beisert
    Signed-off-by: Russell King

    Robert Schwebel
     
  • This patch adds main support for the generic phyCORE-PXA270 CPU module
    (aka PCM-027). Its as generic as possible to support any kind of baseboard.

    Note: Neither the CPU module nor the pcm027.c implementation can work without
    a baseboard support. Baseboard support can be added by the PCM-990 or any
    custom variant.

    V2:
    After comments by Eric Miao:
    - Currently unsupported devices moved into separate patch
    - direct call of baseboard initialisation

    V3:
    After comments by Russell King
    - sort include files
    - setting RTC bit for power control removed
    - style problems fixed (discovered by checkpatch.pl)

    Signed-off-by: Juergen Beisert
    Signed-off-by: Russell King

    Robert Schwebel
     
  • Signed-off-by: eric miao
    Signed-off-by: Russell King

    eric miao
     
  • This includes irda, gpio keys, pxafb, backlight, ohci and flash
    (read-only).

    Signed-off-by: Philipp Zabel
    Signed-off-by: Russell King

    Philipp Zabel
     
  • Add polling I2C transfer implementation for PXA I2C. This is needed
    for cases where I2C transactions have to occur at times interrups are
    disabled.

    Signed-off-by: Mike Rapoport
    Acked-by: eric miao
    Signed-off-by: Jean Delvare

    Mike Rapoport
     
  • Move the tps65010 header file from the OMAP arch directory to the
    more generic directory, and remove the spurious
    dependency of this driver on OMAP.

    Signed-off-by: David Brownell
    Signed-off-by: Jean Delvare

    David Brownell
     
  • This patch contains the overdue removal of three I2C drivers.

    [JD: In fact only i2c-ixp4xx can be removed at the moment, the other two
    platforms don't implement the generic GPIO layer yet.]

    Signed-off-by: Adrian Bunk
    Signed-off-by: Jean Delvare

    Adrian Bunk
     

26 Jan, 2008

7 commits

  • The kprobes code is already able to cope with reentrant probes, so its
    handler must be called outside of the region protected by undef_lock.

    If ever this lock is released when handlers are called then this commit
    could be reverted.

    Signed-off-by: Nicolas Pitre

    Nicolas Pitre
     
  • Signed-off-by: Nicolas Pitre

    Nicolas Pitre
     
  • This is a full implementation of Kprobes including Jprobes and
    Kretprobes support.

    This ARM implementation does not follow the usual kprobes double-
    exception model. The traditional model is where the initial kprobes
    breakpoint calls kprobe_handler(), which returns from exception to
    execute the instruction in its original context, then immediately
    re-enters after a second breakpoint (or single-stepping exception)
    into post_kprobe_handler(), each time the probe is hit.. The ARM
    implementation only executes one kprobes exception per hit, so no
    post_kprobe_handler() phase. All side-effects from the kprobe'd
    instruction are resolved before returning from the initial exception.
    As a result, all instructions are _always_ effectively boosted
    regardless of the type of instruction, and even regardless of whether
    or not there is a post-handler for the probe.

    Signed-off-by: Abhishek Sagar
    Signed-off-by: Quentin Barnes
    Signed-off-by: Nicolas Pitre

    Abhishek Sagar
     
  • This is the code implementing instruction single-stepping for kprobes
    on ARM.

    To get around the limitation of no Next-PC and no hardware single-
    stepping, all kprobe'd instructions are split into three camps:
    simulation, emulation, and rejected. "Simulated" instructions are
    those instructions which behavior is reproduced by straight C code.
    "Emulated" instructions are ones that are copied, slightly altered
    and executed directly in the instruction slot to reproduce their
    behavior. "Rejected" instructions are ones that could be simulated,
    but work hasn't been put into simulating them. These instructions
    should be very rare, if not unencountered, in the kernel. If ever
    needed, code could be added to simulate them.

    One might wonder why this and the ptrace singlestep facility are not
    sharing some code. Both approaches are fundamentally different because
    the ptrace code regains control after the stepped instruction by installing
    a breakpoint after the instruction itself, and possibly at the location
    where the instruction might be branching to, instead of simulating or
    emulating the target instruction.

    The ptrace approach isn't suitable for kprobes because the breakpoints
    would have to be moved back, and the icache flushed, everytime the
    probe is hit to let normal code execution resume, which would have a
    significant performance impact. It is also racy on SMP since another
    CPU could, with the right timing, sail through the probe point without
    being caught. Because ptrace single-stepping always result in a
    different process to be scheduled, the concern for performance is much
    less significant.

    On the other hand, the kprobes approach isn't (currently) suitable for
    ptrace because it has no provision for proper user space memory
    protection and translation, and even if that was implemented, the gain
    wouldn't be worth the added complexity in the ptrace path compared to
    the current approach.

    So, until kprobes does support user space, both kprobes and ptrace are
    best kept independent and separate.

    Signed-off-by: Quentin Barnes
    Signed-off-by: Abhishek Sagar
    Signed-off-by: Nicolas Pitre

    Quentin Barnes
     
  • Wakeup sources on PXA3 are enabled at two levels. First, the MFP
    configuration has to be set to enable which edges a specific pin
    will trigger a wakeup. The pin also has to be routed to a functional
    unit. Lastly, the functional unit must be enabled as a wakeup source
    in the appropriate AD*ER registers (AD2D0ER for standby resume.)

    This doesn't fit well with the IRQ wake scheme - we currently do a
    best effort conversion from IRQ numbers to functional unit wake enable
    bits. For instance, there's several USB client related enable bits but
    there's no corresponding IRQs to determine which you'd want. Conversely,
    there's a single enable bit covering several functional units.

    Signed-off-by: Russell King

    Russell King
     
  • There are two reasons for making the MFP configuration to be processor
    independent, i.e. removing the relationship of configuration bits with
    actual MFPR register settings:

    1. power management sometimes requires the MFP to be configured
    differently when in run mode or in low power mode

    2. for future integration of pxa{25x,27x} GPIO configurations

    The modifications include:

    1. introducing of processor independent MFP configuration bits, as
    defined in [include/asm-arm/arch-pxa/mfp.h]:

    bit 0.. 9 - MFP Pin Number (1024 Pins Maximum)
    bit 10..12 - Alternate Function Selection
    bit 13..15 - Drive Strength
    bit 16..18 - Low Power Mode State
    bit 19..20 - Low Power Mode Edge Detection
    bit 21..22 - Run Mode Pull State
    and so on,

    2. moving the processor dependent code from mfp.h into mfp-pxa3xx.h

    3. cleaning up of the MFPR bit definitions

    4. mapping of processor independent MFP configuration into processor
    specific MFPR register settings is now totally encapsulated within
    pxa3xx_mfp_config()

    5. using of "unsigned long" instead of invented type of "mfp_cfg_t"
    according to Documentation/CodingStyle Chapter 5, usage of this
    in platform code will be slowly removed in later patches

    Signed-off-by: eric miao
    Signed-off-by: Russell King

    eric miao
     
  • pxa3xx_mfp_set_xxx() functions are originally provided for overwriting
    MFP configurations performed by pxa3xx_mfp_config(), the usage of such
    a dirtry trick is not recommended, since there is currently no user of
    these functions, they are safely removed

    Signed-off-by: eric miao
    Signed-off-by: Russell King

    eric miao