1. 23 Aug, 2012 12 commits
    • Arnd Bergmann's avatar
      Merge branch 'randconfig/mach' into fixes · 57f0b201
      Arnd Bergmann authored
      Small platform specific bug fixes for problems found in randconfig builds.
      
      * randconfig/mach:
        ARM: ux500: don't select LEDS_GPIO for snowball
        ARM: imx: build i.MX6 functions only when needed
        ARM: imx: select CPU_FREQ_TABLE when needed
        ARM: imx: fix ksz9021rn_phy_fixup
        ARM: imx: build pm-imx5 code only when PM is enabled
        ARM: omap: allow building omap44xx without SMP
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      57f0b201
    • Arnd Bergmann's avatar
      ARM: ux500: don't select LEDS_GPIO for snowball · db43b184
      Arnd Bergmann authored
      Using 'select' in Kconfig is hard, a platform cannot just
      enable a driver without also making sure that its subsystem
      is there. Also, there is no actual code dependency between
      the platform and the gpio leds driver.
      
      Without this patch, building without LEDS_CLASS esults in:
      
      drivers/built-in.o: In function `create_gpio_led.part.2':
      governor_userspace.c:(.devinit.text+0x5a58): undefined reference to `led_classdev_register'
      drivers/built-in.o: In function `gpio_led_remove':
      governor_userspace.c:(.devexit.text+0x6b8): undefined reference to `led_classdev_unregister'
      
      This reverts 8733f53c "ARM: ux500: Kconfig: Compile in leds-gpio
      support for Snowball" that introduced the regression and did not
      provide a helpful explanation.
      
      In order to leave the GPIO LED code still present in normal
      builds, this also enables the symbol in u8500_defconfig, in addition
      to the other LED drivers that are already selected there.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Lee Jones <lee.jones@linaro.org>
      db43b184
    • Arnd Bergmann's avatar
      ARM: imx: build i.MX6 functions only when needed · 1fc593fe
      Arnd Bergmann authored
      The head-v7.S contains a call to the generic cpu_suspend function,
      which is only available when selected by the i.MX6 code. As
      pointed out by Shawn Guo, i.MX5 does not actually use any
      functions defined in head-v7.S. It is also needed only for
      the i.MX6 power management code and for the SMP code, so
      we can restrict building this file to situations in which
      at least one of those two is present.
      
      Finally, other platforms with a similar file call it headsmp.S,
      so we can rename it to the same for consistency.
      
      Without this patch, building imx5 standalone results in:
      
      arch/arm/mach-imx/built-in.o: In function `v7_cpu_resume':
      arch/arm/mach-imx/head-v7.S:104: undefined reference to `cpu_resume'
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Cc: Eric Miao <eric.miao@linaro.org>
      Cc: stable@vger.kernel.org
      1fc593fe
    • Arnd Bergmann's avatar
      ARM: imx: select CPU_FREQ_TABLE when needed · f637c4c9
      Arnd Bergmann authored
      The i.MX cpufreq implementation uses the CPU_FREQ_TABLE helpers,
      so it needs to select that code to be built. This problem has
      apparently existed since the i.MX cpufreq code was first merged
      in v2.6.37.
      
      Building IMX without CPU_FREQ_TABLE results in:
      
      arch/arm/plat-mxc/built-in.o: In function `mxc_cpufreq_exit':
      arch/arm/plat-mxc/cpufreq.c:173: undefined reference to `cpufreq_frequency_table_put_attr'
      arch/arm/plat-mxc/built-in.o: In function `mxc_set_target':
      arch/arm/plat-mxc/cpufreq.c:84: undefined reference to `cpufreq_frequency_table_target'
      arch/arm/plat-mxc/built-in.o: In function `mxc_verify_speed':
      arch/arm/plat-mxc/cpufreq.c:65: undefined reference to `cpufreq_frequency_table_verify'
      arch/arm/plat-mxc/built-in.o: In function `mxc_cpufreq_init':
      arch/arm/plat-mxc/cpufreq.c:154: undefined reference to `cpufreq_frequency_table_cpuinfo'
      arch/arm/plat-mxc/cpufreq.c:162: undefined reference to `cpufreq_frequency_table_get_attr'
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Yong Shen <yong.shen@linaro.org>
      Cc: stable@vger.kernel.org
      f637c4c9
    • Arnd Bergmann's avatar
      ARM: imx: fix ksz9021rn_phy_fixup · 9f9ba0fd
      Arnd Bergmann authored
      The ksz9021rn_phy_fixup and mx6q_sabrelite functions try to
      set up an ethernet phy if they can. They do check whether
      phylib is enabled, but unfortunately the functions can only
      be called from platform code if phylib is builtin, not
      if it is a module
      
      Without this patch, building with a modular phylib results in:
      
      arch/arm/mach-imx/mach-imx6q.c: In function 'imx6q_sabrelite_init':
      arch/arm/mach-imx/mach-imx6q.c:120:5: error: 'ksz9021rn_phy_fixup' undeclared (first use in this function)
      arch/arm/mach-imx/mach-imx6q.c:120:5: note: each undeclared identifier is reported only once for each function it appears in
      
      The bug was originally reported by Artem Bityutskiy but only
      partially fixed in ef441806 "ARM: imx6q: register phy fixup only when
      CONFIG_PHYLIB is enabled".
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Cc: Artem Bityutskiy <dedekind1@gmail.com>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      9f9ba0fd
    • Arnd Bergmann's avatar
      ARM: imx: build pm-imx5 code only when PM is enabled · a28eecef
      Arnd Bergmann authored
      This moves the imx5 pm code out of the list of unconditionally
      compiled files for imx5, mirroring what we already do for imx6
      and how it was done before the code was move from mach-mx5 to
      mach-imx in v3.3.
      
      Without this patch, building with CONFIG_PM disabled results in:
      
      arch/arm/mach-imx/pm-imx5.c:202:116: error: redefinition of 'imx51_pm_init'
      arch/arm/mach-imx/include/mach-imx/common.h:154:91: note: previous definition of 'imx51_pm_init' was here
      arch/arm/mach-imx/pm-imx5.c:209:116: error: redefinition of 'imx53_pm_init'
      arch/arm/mach-imx/include/mach-imx/common.h:155:91: note: previous definition of 'imx53_pm_init' was here
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: stable@vger.kernel.org
      a28eecef
    • Arnd Bergmann's avatar
      ARM: omap: allow building omap44xx without SMP · c7a9b09b
      Arnd Bergmann authored
      The new omap4 cpuidle implementation currently requires
      ARCH_NEEDS_CPU_IDLE_COUPLED, which only works on SMP.
      
      This patch makes it possible to build a non-SMP kernel
      for that platform. This is not normally desired for
      end-users but can be useful for testing.
      
      Without this patch, building rand-0y2jSKT results in:
      
      drivers/cpuidle/coupled.c: In function 'cpuidle_coupled_poke':
      drivers/cpuidle/coupled.c:317:3: error: implicit declaration of function '__smp_call_function_single' [-Werror=implicit-function-declaration]
      
      It's not clear if this patch is the best solution for
      the problem at hand. I have made sure that we can now
      build the kernel in all configurations, but that does
      not mean it will actually work on an OMAP44xx.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
      Tested-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      c7a9b09b
    • Arnd Bergmann's avatar
      Merge tag 'ux500-fixes-v3.6-rc2' of... · 5f870baa
      Arnd Bergmann authored
      Merge tag 'ux500-fixes-v3.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into fixes
      
      From Linus Walleij <linus.walleij@linaro.org>:
      Here are two audio fixes for the ux500 found by Lee Jones.
      
      * tag 'ux500-fixes-v3.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
        ARM: ux500: Ensure probing of Audio devices when Device Tree is enabled
        ARM: ux500: Fix merge error, no matching driver name for 'snd_soc_u8500'
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      5f870baa
    • Arnd Bergmann's avatar
      Merge branch 'v3.6-samsung-fixes-1' of... · 8917da43
      Arnd Bergmann authored
      Merge branch 'v3.6-samsung-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes
      
      From Kukjin Kim <kgene.kim@samsung.com>:
      
      For HDMI, already HDMI support for EXYNOS in mainline kernel is broken
      because its configuration moved to platform data but regarding platform
      data didn't support yet. And others are for fix warnings.
      
      * 'v3.6-samsung-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        ARM: EXYNOS: Set HDMI platform data in Origen board
        ARM: EXYNOS: Set HDMI platform data in SMDKV310
        ARM: SAMSUNG: Add API to set platform data for s5p-tv driver
        ARM: SAMSUNG: Set HDMI platform data for Exynos4x12 SoCs
        ARM: Samsung: Make uart_save static in pm.c file
        ARM: S3C24XX: Fix s3c2410_dma_enqueue parameters
        ARM: S3C24XX: Add missing DMACH_DT_PROP
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      8917da43
    • Arnd Bergmann's avatar
      Merge branch 'imx/fixes-for-3.6' of git://git.linaro.org/people/shawnguo/linux-2.6 into fixes · 1e72fe1f
      Arnd Bergmann authored
      * 'imx/fixes-for-3.6' of git://git.linaro.org/people/shawnguo/linux-2.6:
        ARM: dts: imx51-babbage: fix esdhc cd/wp properties
        ARM: imx6: spin the cpu until hardware takes it down
        ARM i.MX6q: Add virtual 1/3.5 dividers in the LDB clock path
      
      Also updates to Linux 3.6-rc2
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      1e72fe1f
    • Shawn Guo's avatar
      ARM: dts: imx51-babbage: fix esdhc cd/wp properties · a46d2619
      Shawn Guo authored
      The binding doc and dts use properties "fsl,{cd,wp}-internal" while
      esdhc driver uses "fsl,{cd,wp}-controller".  Fix binding doc and dts
      to get them match driver code.
      Reported-by: default avatarChris Ball <cjb@laptop.org>
      Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Cc: <stable@vger.kernel.org>
      Acked-by: default avatarChris Ball <cjb@laptop.org>
      a46d2619
    • Shawn Guo's avatar
      ARM: imx6: spin the cpu until hardware takes it down · c944b0b9
      Shawn Guo authored
      Though commit 602bf409 (ARM: imx6: exit coherency when shutting down
      a cpu) improves the stability of imx6q cpu hotplug a lot, there are
      still hangs seen with a more stressful hotplug testing.
      
      It's expected that once imx_enable_cpu(cpu, false) is called, the cpu
      will be taken down by hardware immediately, and the code after that
      will not get any chance to execute.  However, this is not always the
      case from the testing.  The cpu could possibly be alive for a few
      cycles before hardware actually takes it down.  So rather than letting
      cpu execute some code that could cause a hang in these cycles, let's
      make the cpu spin there and wait for hardware to take it down.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
      c944b0b9
  2. 17 Aug, 2012 3 commits
  3. 16 Aug, 2012 12 commits
  4. 15 Aug, 2012 8 commits
  5. 14 Aug, 2012 5 commits
    • Chris Wilson's avatar
      drm/i915: Apply post-sync write for pipe control invalidates · 7d54a904
      Chris Wilson authored
      When invalidating the TLBs it is documentated as requiring a post-sync
      write. Failure to do so seems to result in a GPU hang.
      
      Exposure to this hang on IVB seems to be a result of removing the extra
      stalls required for SNB pipecontrol workarounds:
      
      commit 6c6cf5aa
      Author: Chris Wilson <chris@chris-wilson.co.uk>
      Date:   Fri Jul 20 18:02:28 2012 +0100
      
          drm/i915: Only apply the SNB pipe control w/a to gen6
      
      Note: Manually switch the pipe_control cmd to 4 dwords to avoid a
      (silent) functional conflict with -next. This way will get a loud (but
      conflict with next (since the scratch_addr has been deleted there).
      
      Reported-and-tested-by: yex.tian@intel.com
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53322Acked-by: default avatarBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      [danvet: added note about merge conflict with -next.]
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      7d54a904
    • Daniel Vetter's avatar
      drm/i915: reorder edp disabling to fix ivb MacBook Air · 35a38556
      Daniel Vetter authored
      eDP is tons of fun. It turns out that at least the new MacBook Air 5,1
      model absolutely doesn't like the new force vdd dance we've introduced
      in
      
      commit 6cb49835
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Sun May 20 17:14:50 2012 +0200
      
          drm/i915: enable vdd when switching off the eDP panel
      
      But that patch also tried to fix some neat edp sequence issue with the
      force_vdd timings. Closer inspection reveals that we've raised
      force_vdd only to do the aux channel communication dp_sink_dpms. If we
      move the edp_panel_off below that, we don't need any force_vdd for the
      disable sequence, which makes the Air happy.
      
      Unfortunately the reporter of the original bug that the above commit
      fixed is travelling, so we can't test whether this regresses things.
      But my theory is that since we don't check for any power-off ->
      force_vdd-on delays in edp_panel_vdd_on, this was the actual
      root-cause of this failure. With that force_vdd dance completely
      eliminated, I'm hopeful the original bug stays fixed, too.
      
      For reference the old bug, which hopefully doesn't get broken by this:
      
      https://bugzilla.kernel.org/show_bug.cgi?id=43163
      
      In any case, regression fixers win over plain bugfixes, so this needs
      to go in asap.
      
      v2: The crucial pieces seems to be to clear the force_vdd flag
      uncoditionally, too, in edp_panel_off. Looks like this is left behind
      by the firmware somehow.
      
      v3: The Apple firmware seems to switch off the panel on it's own, hence
      we still need to keep force_vdd on, but properly clear it when switching
      the panel off.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=45671Tested-by: default avatarRoberto Romer <sildurin@gmail.com>
      Tested-by: default avatarDaniel Wagner <wagi@monom.org>
      Tested-by: default avatarKeith Packard <keithp@keithp.com>
      Cc: stable@vger.kernel.org
      Cc: Keith Packard <keithp@keithp.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      35a38556
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · ddf343f6
      Linus Torvalds authored
      Pull s390 patches from Martin Schwidefsky:
       "Included are bug fixes and a patch to enable system call filtering
        with BPF."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/compat: fix mmap compat system calls
        s390/compat: fix compat wrappers for process_vm system calls
        s390: do not clobber personality flags in sys_32_personality()
        s390/seccomp: add support for system call filtering using BPF
        s390/sclp_sdias: Add missing break and "fall through"
        s390/mm: remove MAX_PHYSADDR_BITS define
      ddf343f6
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 930a93a5
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Radeon and intel fixes mostly, one fix to the mgag200 driver to not
        hang on certain server variants."
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (32 commits)
        drm/radeon: fix typo in function header comment
        drm/radeon/kms: implement timestamp userspace query (v2)
        drm/radeon/kms: add MSAA texture support for r600-evergreen
        drm/radeon/kms: reorder code in r600_check_texture_resource
        drm/radeon: fence virtual address and free it once idle v4
        drm/radeon: fix some missing parens in asic macros
        drm/radeon: add some new SI pci ids
        drm/radeon: fix ordering in pll picking on dce4+
        drm/radeon: do not reenable crtc after moving vram start address
        drm/radeon: fix bank tiling parameters on cayman
        drm/radeon: fix bank tiling parameters on evergreen
        drm/radeon: fix bank tiling parameters on SI
        drm/radeon: properly handle crtc powergating
        drm/radeon: properly handle SS overrides on TN (v2)
        drm/radeon/dce4+: set a more reasonable cursor watermark
        drm/radeon: fix handling for ddc type 5 on combios
        drm/mgag200: fix G200ER pll picking algorithm
        drm/edid: Fix potential memory leak in edid_load()
        drm/udl: Use ERR_CAST inlined function instead of ERR_PTR(PTR_ERR(.. [1]
        drm/radeon/kms: allow "invalid" DB formats as a means to disable DB
        ...
      930a93a5
    • Arnd Bergmann's avatar
      GPIO: gpio-pxa: fix building without CONFIG_OF · f43e04ec
      Arnd Bergmann authored
      Commit 72121572 ("GPIO: gpio-pxa: fix devicetree functions") added an
      "xlate" function pointer to the irq_domain_ops, but this function is nor
      declared or defined anywhere when CONFIG_OF is disabled, causing the
      build error:
      
        drivers/gpio/gpio-pxa.c:532:11: error: 'irq_domain_xlate_twocell' undeclared here (not in a function)
      
      Extending the DT-only code section to cover the irq_domain_ops and the
      pxa_gpio_dt_ids solves this problem and makes it clearer which code is
      actually used without DT.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f43e04ec