1. 22 Sep, 2012 14 commits
    • Vaibhav Hiremath's avatar
      ARM: AM33XX: cm: Add bit-field width values · a86c0b98
      Vaibhav Hiremath authored
      The new common clk framework includes basic definitions for mux and
      divider clocks.  These definitions depend on shift and width values
      instead of the pre-computed masks that the OMAP/AM33XX clk framework
      has traditionally used when accessing the register to control the
      mux or divisor.
      
      To ease this transition the masks are left intact and
      the width field is simply added alongside the shift and mask data.
      Signed-off-by: default avatarVaibhav Hiremath <hvaibhav@ti.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Mike Turquette <mturquette@ti.com>
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      a86c0b98
    • Mike Turquette's avatar
      ARM: OMAP4: cm: add bitfield width values · f19a3022
      Mike Turquette authored
      The new common clk framework includes basic definitions for mux and
      divider clocks.  These definitions depend on shift and width values
      instead of the pre-computed masks that the OMAP clk framework has
      traditionally used when accessing the register to control the mux or
      divisor.
      
      To ease this transition the masks are left intact and the width field is
      simply added alongside the shift and mask data.
      Signed-off-by: default avatarMike Turquette <mturquette@ti.com>
      Signed-off-by: default avatarRajendra Nayak <rnayak@ti.com>
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      f19a3022
    • Rajendra Nayak's avatar
      ARM: OMAP2+: clock: Remove all direct dereferencing of struct clk · 5dcc3b97
      Rajendra Nayak authored
      While we move to Common Clk Framework (CCF), direct deferencing of struct
      clk wouldn't be possible anymore. Hence get rid of all such instances
      in the current clock code and use macros/helpers similar to the ones that
      are provided by CCF.
      
      While here also concatenate some strings split across multiple lines
      which seem to be needed anyway.
      Signed-off-by: default avatarRajendra Nayak <rnayak@ti.com>
      [paul@pwsan.com: simplified some compound expressions; reformatted some
       messages]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Mike Turquette <mturquette@linaro.org>
      5dcc3b97
    • Rajendra Nayak's avatar
      ARM: OMAP2+: hwmod: get rid of all omap_clk_get_by_name usage · 6ea74cb9
      Rajendra Nayak authored
      Moving to Common clk framework for OMAP would mean we no longer use
      internal lookup mechanism like omap_clk_get_by_name().
      get rid of all its usage mostly from hwmod and omap_device
      code.
      
      Moving to clk_get() also means the respective platforms
      need the clkdev tables updated with an entry for all clocks
      used by hwmod to have clock name same as the alias.
      
      Based on original changes from Mike Turquette.
      Signed-off-by: default avatarRajendra Nayak <rnayak@ti.com>
      Cc: Russell King - ARM Linux <linux@arm.linux.org.uk>
      [paul@pwsan.com: removed IS_ERR_OR_NULL() conversion (rmk comment);
       restricted omap_96m_alwon_fck_3630 to OMAP36xx; added missing AM35xx
       clock aliases for emac_fck, emac_ick, vpfe_ick, vpfe_fck; added
       aliases rng_ick and several emulation clocks]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      6ea74cb9
    • Rajendra Nayak's avatar
      ARM: omap: clk: add clk_prepare and clk_unprepare · 4d7cb45e
      Rajendra Nayak authored
      As part of Common Clk Framework (CCF) the clk_enable() operation
      was split into a clk_prepare() which could sleep, and a clk_enable()
      which should never sleep. Similarly the clk_disable() was
      split into clk_disable() and clk_unprepare(). This was
      needed to handle complex cases where in a clk gate/ungate
      would require a slow and a fast part to be implemented.
      None of the clocks below seem to be in the 'complex' clocks
      category and are just simple clocks which are enabled/disabled
      through simple register writes.
      Most of the instances also seem to be called in non-atomic
      context which means its safe to move all of those from
      using a clk_enable() to clk_prepare_enable() and clk_disable() to
      clk_disable_unprepare().
      
      For some others, mainly the ones handled through the hwmod framework
      there is a possibility that they get called in either an atomic
      or a non-atomic context.
      
      The way these get handled below work only as long as clk_prepare
      is implemented as a no-op (which is the case today) since this gets
      called very early at boot while most subsystems are unavailable.
      Hence these are marked with a *HACK* comment, which says we need
      to re-visit these once we start doing something meaningful with
      clk_prepare/clk_unprepare like doing voltage scaling or something
      that involves i2c.
      
      This is in preparation of OMAP moving to CCF.
      
      Based on initial changes from Mike Turquette.
      Signed-off-by: default avatarRajendra Nayak <rnayak@ti.com>
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      4d7cb45e
    • Paul Walmsley's avatar
      SPI: OMAP: remove unnecessary includes of plat/clock.h · a04bcc23
      Paul Walmsley authored
      Remove unnecessary includes of plat/clock.h from the OMAP SPI
      controller drivers.  These need to be removed to build multi-subarch
      ARM kernels which include these drivers.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Acked-by: default avatarGrant Likely <grant.likely@secretlab.ca>
      a04bcc23
    • Jon Hunter's avatar
      ARM: OMAP4: Add timer clock aliases for device-tree · fabcf41f
      Jon Hunter authored
      For OMAP4, the dmtimers are located in the Wake-up, ABE and Peripheral (PER)
      power domains. Hence, when the dmtimer is configured to use the "timer_sys_ck"
      as its functional clock the actual clock used is different depending on whether
      the clock is in the Wake-up, ABE or PER domain. So when we look-up the dmtimer's
      "timer_sys_ck" we need to specify the timer device name as well as clock alias
      to find the right clock.
      
      Currently, the device names for the timers have the format "omap_timer.X" where
      X is the timer instance number. When using to device tree, the format of the
      device name created by device-tree is different and has the format
      "<reg-address>.<device-name>" (this is assuming that the device-tree "reg"
      property is specified). This causes the look-up for the OMAP4 "timer_sys_ck" to
      fail. To fix this add new timer clock alias for using device-tree.
      
      Please note that adding a 2nd set of clock aliases for the same clocks to only
      temporary until device-tree migration is complete. Then we can remove the legacy
      aliases. Hence, I have marked the legacy aliases with a "TODO" to remove them.
      Signed-off-by: default avatarJon Hunter <jon-hunter@ti.com>
      [paul@pwsan.com: updated to apply]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      fabcf41f
    • AnilKumar Ch's avatar
      ARM: OMAP2+: AM33XX: clock data: Add clkdev alias for cpu0 · 4236bd0d
      AnilKumar Ch authored
      Add AM335x cpu0 clock entry to the corresponding clock data file. This
      is useful in getting the correct mpu clock pointer to change the cpu
      frequency in cpufreq driver.
      Signed-off-by: default avatarAnilKumar Ch <anilkumar@ti.com>
      [paul@pwsan.com: changed patch subject]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      4236bd0d
    • Paul Walmsley's avatar
      ARM: OMAP2+: clock data: add some aliases for use by CPUFreq only · c810fde2
      Paul Walmsley authored
      These clkdev aliases should make it possible to remove the
      cpu_is_omap*() calls and the omap_device*() call from
      drivers/cpufreq/omap-cpufreq.c during the next merge window.  Those
      are interfering with multi-subarch ARM kernels.
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Rafael J. Wysocki <rjw@sisk.pl>
      Acked-by: default avatarKevin Hilman <khilman@ti.com>
      c810fde2
    • Paul Walmsley's avatar
      ARM: OMAP3: clock data: Add the USB TLL clocks device name · 8fde3afb
      Paul Walmsley authored
      The platform device name "usbhs_tll" is added for the functional,
      interface and channel clocks of the TLL module.
      Signed-off-by: default avatarKeshava Munegowda <keshava_mgowda@ti.com>
      Reviewed-by: default avatarPartha Basak <parthab@india.ti.com>
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      8fde3afb
    • Jon Hunter's avatar
      ARM: OMAP2420: Cosmetic fix for timer clock aliases · f84c3782
      Jon Hunter authored
      In commit c59b537d (ARM: OMAP2+: Simplify dmtimer clock aliases) new clock
      aliases were added for OMAP2+ devices. For OMAP2420, I incorrectly set the
      clock flag as CK_243X instead of CK_242X. This did not introduce a regression
      as the clock flags are not checked for OMAP2 devices. This also explains why
      I did not catch this when testing on OMAP2420.
      
      Fix the clock flags for these aliases for correctness.
      Signed-off-by: default avatarJon Hunter <jon-hunter@ti.com>
      f84c3782
    • Michael Jones's avatar
      ARM: OMAP3: clock data: remove obsolete comment · e5e70453
      Michael Jones authored
      The file is currently called 'clock3xxx_data.c', so this comment is
      out of date.
      Signed-off-by: default avatarMichael Jones <michael.jones@matrix-vision.de>
      [paul@pwsan.com: wrote changelog]
      Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
      e5e70453
    • Paul Walmsley's avatar
      Merge tag 'omap-devel-am33xx-for-v3.7' into test_v3.6-rc6_cff3.7_odaf3.7 · 9fe0624e
      Paul Walmsley authored
      From Paul Walmsley <paul@pwsan.com>:
      
      AM33xx hwmod data and miscellaneous clock and hwmod fixes.  AM33xx
      should now boot on mainline after this is applied, according to
      Vaibhav.
      9fe0624e
    • Paul Walmsley's avatar
      Merge tag 'cleanup-fixes-for-v3.7' into test_v3.6-rc6_cff3.7_odaf3.7 · 5dbd6535
      Paul Walmsley authored
      These fixes are needed to fix non-omap build breakage for
      twl-core driver and to fix omap1_defconfig compile when
      led driver changes and omap sparse IRQ changes are merged
      together. Also fix warnings for omaps not using pinctrl
      framework yet.
      5dbd6535
  2. 17 Sep, 2012 3 commits
  3. 16 Sep, 2012 8 commits
    • Linus Torvalds's avatar
      Linux 3.6-rc6 · 5698bd75
      Linus Torvalds authored
      5698bd75
    • Linus Torvalds's avatar
      Merge tag 'mfd-for-linus-3.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 · 73f8be29
      Linus Torvalds authored
      Pull mfd fixes from Samuel Ortiz:
       "This is the remaining MFD fixes for 3.6, with 5 pending fixes:
      
         - A tps65217 build error fix.
         - A lcp_ich regression fix caused by the MFD driver failing to
           initialize the watchdog sub device due to ACPI conflicts.
         - 2 MAX77693 interrupt handling bug fixes.
         - An MFD core fix, adding an IRQ domain argument to the MFD device
           addition API in order to prevent silent and potentially harmful
           remapping behaviour changes for drivers supporting non-DT
           platforms."
      
      * tag 'mfd-for-linus-3.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6:
        mfd: MAX77693: Fix NULL pointer error when initializing irqs
        mfd: MAX77693: Fix interrupt handling bug
        mfd: core: Push irqdomain mapping out into devices
        mfd: lpc_ich: Fix a 3.5 kernel regression for iTCO_wdt driver
        mfd: Move tps65217 regulator plat data handling to regulator
      73f8be29
    • Linus Torvalds's avatar
      Merge tag 'for-3.6-rc6' of git://gitorious.org/linux-pwm/linux-pwm · c500ce38
      Linus Torvalds authored
      Pull pwm fixes from Thierry Reding:
       "While this comes a bit later than I had wished, both patches are
        rather minor and touch only new drivers so I think these are still
        safe for merging."
      
      * tag 'for-3.6-rc6' of git://gitorious.org/linux-pwm/linux-pwm:
        pwm: pwm-tiehrpwm: Fix conflicting channel period setting
        pwm: pwm-tiecap: Disable APWM mode after configure
      c500ce38
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 76e77daf
      Linus Torvalds authored
      Pull scsi target fixes from Nicholas Bellinger:
       "Here is the current set of target-pending fixes headed for v3.6-final
      
        The main parts of this series include bug-fixes from Paolo Bonzini to
        address an use-after-free bug in pSCSI sense exception handling, along
        with addressing some long-standing bugs wrt the handling of zero-
        length SCSI CDB payloads also specific to pSCSI pass-through device
        backends."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: go through normal processing for zero-length REQUEST_SENSE
        target: support zero allocation length in REQUEST SENSE
        target: support zero-size allocation lengths in transport_kmap_data_sg
        target: fail REPORT LUNS with less than 16 bytes of payload
        target: report too-small parameter lists everywhere
        target: go through normal processing for zero-length PSCSI commands
        target: fix use-after-free with PSCSI sense data
        target: simplify code around transport_get_sense_data
        target: move transport_get_sense_data
        target: Check idr_get_new return value in iscsi_login_zero_tsih_s1
        target: Fix ->data_length re-assignment bug with SCSI overflow
      76e77daf
    • Linus Torvalds's avatar
      Merge tag 'pm-for-3.6-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 9bc67590
      Linus Torvalds authored
      Pull power management fixes from Rafael J. Wysocki:
       "Three ACPI device power management fixes related to checking and
        setting device power states."
      
      * tag 'pm-for-3.6-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / PM: Use KERN_DEBUG when no power resources are found
        ACPI / PM: Fix resource_lock dead lock in acpi_power_on_device
        ACPI / PM: Infer parent power state from child if unknown, v2
      9bc67590
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 6167f81f
      Linus Torvalds authored
      Pull a btrfs revert from Chris Mason:
       "My for-linus branch has one revert in the new quota code.
      
        We're building up more fixes at etc for the next merge window, but I'm
        keeping them out unless they are bigger regressions or have a huge
        impact."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Revert "Btrfs: fix some error codes in btrfs_qgroup_inherit()"
      6167f81f
    • Linus Torvalds's avatar
      Merge tag 'sound-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · a34689d9
      Linus Torvalds authored
      Pull more sound fixes from Takashi Iwai:
       "Yet more (a bunch of) small fixes that slipped from the previous pull
        request.  Most of commits are pending ASoC fixes, all of which are
        fairly trivial commits."
      
      * tag 'sound-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ASoC: wm8904: correct the index
        ALSA: hda - Yet another position_fix quirk for ASUS machines
        ASoC: tegra: fix maxburst settings in dmaengine code
        ASoC: samsung dma - Don't indicate support for pause/resume.
        ASoC: mc13783: Remove mono support
        ASoC: arizona: Fix typo in 44.1kHz rates
        ASoC: spear: correct the check for NULL dma_buffer pointer
        sound: tegra_alc5632: remove HP detect GPIO inversion
        ASoC: atmel-ssc: include linux/io.h for raw io
        ASoC: dapm: Don't force card bias level to be updated
        ASoC: dapm: Make sure we update the bias level for CODECs with no op
        ASoC: am3517evm: fix error return code
        ASoC: ux500_msp_i2s: better use devm functions and fix error return code
        ASoC: imx-sgtl5000: fix error return code
      a34689d9
    • Linus Torvalds's avatar
      Revert "sched: Improve scalability via 'CPU buddies', which withstand random perturbations" · 37407ea7
      Linus Torvalds authored
      This reverts commit 970e1789.
      
      Nikolay Ulyanitsky reported thatthe 3.6-rc5 kernel has a 15-20%
      performance drop on PostgreSQL 9.2 on his machine (running "pgbench").
      
      Borislav Petkov was able to reproduce this, and bisected it to this
      commit 970e1789 ("sched: Improve scalability via 'CPU buddies' ...")
      apparently because the new single-idle-buddy model simply doesn't find
      idle CPU's to reschedule on aggressively enough.
      
      Mike Galbraith suspects that it is likely due to the user-mode spinlocks
      in PostgreSQL not reacting well to preemption, but we don't really know
      the details - I'll just revert the commit for now.
      
      There are hopefully other approaches to improve scheduler scalability
      without it causing these kinds of downsides.
      Reported-by: default avatarNikolay Ulyanitsky <lystor@gmail.com>
      Bisected-by: default avatarBorislav Petkov <bp@alien8.de>
      Acked-by: default avatarMike Galbraith <efault@gmx.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      37407ea7
  4. 15 Sep, 2012 15 commits