17 Nov, 2009

1 commit


13 Nov, 2009

5 commits

  • The DAPM widgets are now insntantiated by the core when creating the card
    so there is no need for the individual CODEC drivers to do so.

    Signed-off-by: Mark Brown

    Mark Brown
     
  • The jack_status_check callback function is the interface to check the
    status of the jack. Some target provides the method to distinguish what
    is the jack inserted - headphone jack, microphone jack, tvout jack, etc,
    so we can implement it using the jack_status_check function.

    Signed-off-by: Joonyoung Shim
    Acked-by: Liam Girdwood
    Signed-off-by: Mark Brown

    Joonyoung Shim
     
  • While probing, AC97 codec drivers and soc-core generically execute the
    following sequence:
    snd_soc_new_ac97_codec -> snd_soc_new_pcms -> reset ac-link/read AC97 ID
    to detect ->... -> set platform_data to ac97 by soc-core

    commit 474828a40f6ddab6e2a3475a19c5c84aa3ec7d60 adds platform_data to
    snd_ac97 instance. But ac97 platform data hasn't given to snd_ac97
    before actual ac97 operations. Then while ac97_read access platform_data
    of snd_ac97 for detecting, NULL pointer oops will fire. That means old
    platform_data patch doesn't work in real-life cases.

    This patch moves the operation of setting ac97 platform_data earlier
    than ac97 reading/writing operations. Then it makes platform_data of
    AC97 become practically useful.

    Signed-off-by: Barry Song
    Acked-by: Liam Girdwood
    Signed-off-by: Mark Brown

    Barry Song
     
  • Corrected the order of 'source' and 'pll_id' arguments.

    Signed-off-by: Jassi Brar
    Signed-off-by: Mark Brown

    Jassi Brar
     
  • Many devices need to calculate the bit clock rate desired to
    work out the clock configuration required for the device.
    Provide utility functions to do this using both hw_params
    structures and raw numbers.

    Signed-off-by: Mark Brown
    Acked-by: Liam Girdwood

    Mark Brown
     

10 Nov, 2009

7 commits


09 Nov, 2009

1 commit

  • Upcoming change to omap-mcbsp.c require that machine drivers using OMAP
    as a DAI master to pass sample rate generator input clock frequency to
    the omap-mcbsp.c DAI driver.

    Pandora is using 256*Fs output from the TWL4030 codec as an input clock to
    the McBSP sample rate generator.

    Signed-off-by: Jarkko Nikula
    Tested-by: Grazvydas Ignotas
    Acked-by: Liam Girdwood
    Signed-off-by: Mark Brown

    Jarkko Nikula
     

07 Nov, 2009

6 commits


06 Nov, 2009

3 commits

  • Mark Brown
     
  • Added the missing clk_enable after acquiring the 'audio-bus' clock.

    Signed-off-by: Jassi Brar
    Signed-off-by: Mark Brown

    Jassi Brar
     
  • After DMA burst mode has been introduced in sound/soc/omap/omap-pcm.c,
    omap_pcm_prepare() unconditionally calls:

    omap_set_dma_src_burst_mode(prtd->dma_ch, OMAP_DMA_DATA_BURST_16);
    omap_set_dma_dest_burst_mode(prtd->dma_ch, OMAP_DMA_DATA_BURST_16);

    Current implementation of those two functions found in
    arch/arm/plat-ompa/dma.c doesn't support OMAP_DMA_DATA_BURST_16 on OMAP1 at
    all, so they both end with BUG() on that machine. That results in
    ASoC being completely unusable, at least on my OMAP5910 based Amstrad Delta.

    The patch corrects the problem by not calling those two functions when run on
    OMAP1 class based machines.

    Created against linux-2.6.32-rc5.
    Tested on Amstrad Delta.

    Signed-off-by: Janusz Krzysztofik
    Acked-by: Jarkko Nikula
    Signed-off-by: Mark Brown

    Janusz Krzysztofik
     

04 Nov, 2009

8 commits

  • snd_soc_init_card() is always called as the last part of the CODEC probe
    function so we can factor it out into the core card setup rather than
    have each CODEC replicate the code to do the initialiastation. This will
    be required to support multiple CODECs per card.

    Signed-off-by: Mark Brown

    Mark Brown
     
  • A fairly hefty change in diff terms but no actual code changes, will be
    used by the next commit.

    Signed-off-by: Mark Brown

    Mark Brown
     
  • Signed-off-by: Mark Brown

    Mark Brown
     
  • Linus Torvalds
     
  • * 'for-linus' of git://github.com/at91linux/linux-2.6-at91:
    at91: at91sam9g45 family: identify several chip versions
    avr32: add two new at91 to cpu.h definition

    Linus Torvalds
     
  • cpu_is_xxx() macros are identifying generic at91sam9g45 chip. This patch adds
    the capacity to differentiate Engineering Samples and final lots through the
    inclusion of at91_cpu_fully_identify() and the related chip IDs with chip
    version field preserved.

    Signed-off-by: Nicolas Ferre
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Hans-Christian Egtvedt

    Nicolas Ferre
     
  • Somme common drivers will need those at91 cpu_is_xxx() definitions. As
    at91sam9g10 and at91sam9g45 are on the way to linus' tree, here is the patch
    that adds those chips to cpu.h in AVR32 architecture.

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Haavard Skinnemoen

    Nicolas Ferre
     
  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (38 commits)
    MIPS: O32: Fix ppoll
    MIPS: Oprofile: Rename cpu_type from godson2 to loongson2
    MIPS: Alchemy: Fix hang with high-frequency edge interrupts
    MIPS: TXx9: Fix spi-baseclk value
    MIPS: bcm63xx: Set the correct BCM3302 CPU name
    MIPS: Loongson 2: Set cpu_has_dc_aliases and cpu_icache_snoops_remote_store
    MIPS: Avoid potential hazard on Context register
    MIPS: Octeon: Use lockless interrupt controller operations when possible.
    MIPS: Octeon: Use write_{un,}lock_irq{restore,save} to set irq affinity
    MIPS: Set S-cache linesize to 64-bytes for MTI's S-cache
    MIPS: SMTC: Avoid queing multiple reschedule IPIs
    MIPS: GCMP: Avoid accessing registers when they are not present
    MIPS: GIC: Random fixes and enhancements.
    MIPS: CMP: Fix memory barriers for correct operation of amon_cpu_start
    MIPS: Fix abs.[sd] and neg.[sd] emulation for NaN operands
    MIPS: SPRAM: Clean up support code a little
    MIPS: 1004K: Enable SPRAM support.
    MIPS: Malta: Enable PCI 2.1 compatibility in PIIX4
    MIPS: Kconfig: Fix duplicate default value for MIPS_L1_CACHE_SHIFT.
    MIPS: MTI: Fix accesses to device registers on MIPS boards
    ...

    Linus Torvalds
     

03 Nov, 2009

9 commits

  • * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
    PM: Remove some debug messages producing too much noise
    PM: Fix warning on suspend errors
    PM / Hibernate: Add newline to load_image() fail path
    PM / Hibernate: Fix error handling in save_image()
    PM / Hibernate: Fix blkdev refleaks
    PM / yenta: Split resume into early and late parts (rev. 4)

    Linus Torvalds
     
  • nr_processes() returns the sum of the per cpu counter process_counts for
    all online CPUs. This counter is incremented for the current CPU on
    fork() and decremented for the current CPU on exit(). Since a process
    does not necessarily fork and exit on the same CPU the process_count for
    an individual CPU can be either positive or negative and effectively has
    no meaning in isolation.

    Therefore calculating the sum of process_counts over only the online
    CPUs omits the processes which were started or stopped on any CPU which
    has since been unplugged. Only the sum of process_counts across all
    possible CPUs has meaning.

    The only caller of nr_processes() is proc_root_getattr() which
    calculates the number of links to /proc as
    stat->nlink = proc_root.nlink + nr_processes();

    You don't have to be all that unlucky for the nr_processes() to return a
    negative value leading to a negative number of links (or rather, an
    apparently enormous number of links). If this happens then you can get
    failures where things like "ls /proc" start to fail because they got an
    -EOVERFLOW from some stat() call.

    Example with some debugging inserted to show what goes on:
    # ps haux|wc -l
    nr_processes: CPU0: 90
    nr_processes: CPU1: 1030
    nr_processes: CPU2: -900
    nr_processes: CPU3: -136
    nr_processes: TOTAL: 84
    proc_root_getattr. nlink 12 + nr_processes() 84 = 96
    84
    # echo 0 >/sys/devices/system/cpu/cpu1/online
    # ps haux|wc -l
    nr_processes: CPU0: 85
    nr_processes: CPU2: -901
    nr_processes: CPU3: -137
    nr_processes: TOTAL: -953
    proc_root_getattr. nlink 12 + nr_processes() -953 = -941
    75
    # stat /proc/
    nr_processes: CPU0: 84
    nr_processes: CPU2: -901
    nr_processes: CPU3: -137
    nr_processes: TOTAL: -954
    proc_root_getattr. nlink 12 + nr_processes() -954 = -942
    File: `/proc/'
    Size: 0 Blocks: 0 IO Block: 1024 directory
    Device: 3h/3d Inode: 1 Links: 4294966354
    Access: (0555/dr-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
    Access: 2009-11-03 09:06:55.000000000 +0000
    Modify: 2009-11-03 09:06:55.000000000 +0000
    Change: 2009-11-03 09:06:55.000000000 +0000

    I'm not 100% convinced that the per_cpu regions remain valid for offline
    CPUs, although my testing suggests that they do. If not then I think the
    correct solution would be to aggregate the process_count for a given CPU
    into a global base value in cpu_down().

    This bug appears to pre-date the transition to git and it looks like it
    may even have been present in linux-2.6.0-test7-bk3 since it looks like
    the code Rusty patched in http://lwn.net/Articles/64773/ was already
    wrong.

    Signed-off-by: Ian Campbell
    Cc: Andrew Morton
    Cc: Rusty Russell
    Signed-off-by: Linus Torvalds

    Ian Campbell
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: gpio-keys - use IRQF_SHARED
    Input: winbond-cir - select LEDS_TRIGGERS
    Input: i8042 - try to get stable CTR value when initializing
    Input: atkbd - add a quirk for OQO 01+ multimedia keys

    Linus Torvalds
     
  • * 'fixes-s3c-2632-rc5' of git://git.fluff.org/bjdooks/linux:
    ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c
    ARM: S3C2440: mini2440: Fix spare warnings
    ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c
    ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST
    ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test
    ARM: S3C: Fix adc function exports
    ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set
    ARM: S3C24XX: Introduce S3C2442B CPU
    ARM: S3C24XX: Define a macro to avoid compilation error
    ARM: S3C: Add info for supporting circular DMA buffers
    ARM: S3C64XX: Set rate of crystal mux
    ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value

    Linus Torvalds
     
  • * 'i2c-fixes' of git://git.fluff.org/bjdooks/linux:
    i2c-mpc: Do not generate STOP after read.
    i2c: imx: disable clock when it's possible to save power.
    i2c: imx: only imx1 needs disable delay
    i2c: imx: check busy bit when START/STOP

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:
    nilfs2: add zero-fill for new btree node buffers
    nilfs2: fix irregular checkpoint creation due to data flush
    nilfs2: fix dirty page accounting leak causing hang at write

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
    mac80211: check interface is down before type change
    cfg80211: fix NULL ptr deref
    libertas if_usb: Fix crash on 64-bit machines
    mac80211: fix reason code output endianness
    mac80211: fix addba timer
    ath9k: fix misplaced semicolon on rate control
    b43: Fix DMA TX bounce buffer copying
    mac80211: fix BSS leak
    rt73usb.c : more ids
    ipw2200: fix oops on missing firmware
    gre: Fix dev_addr clobbering for gretap
    sky2: set carrier off in probe
    net: fix sk_forward_alloc corruption
    pcnet_cs: add cis of PreMax PE-200 ethernet pcmcia card
    r8169: Fix card drop incoming VLAN tagged MTU byte large jumbo frames
    ibmtr: possible Read buffer overflow?
    net: Fix RPF to work with policy routing
    net: fix kmemcheck annotations
    e1000e: rework disable K1 at 1000Mbps for 82577/82578
    e1000e: config PHY via software after resets
    ...

    Linus Torvalds
     
  • pm_runtime_idle() is somewhat noisy. Remove debug prints.

    Signed-off-by: Pavel Machek
    Signed-off-by: Rafael J. Wysocki

    Pavel Machek
     
  • Fixes the point where we need to complete the power transition when
    device suspend fails, so that we don't print warnings about devices
    added to the device hierarchy after a failing suspend.

    [rjw: Modified changelog.]

    Signed-off-by: Romit Dasgupta
    Signed-off-by: Rafael J. Wysocki

    Romit Dasgupta