1. 10 12月, 2011 2 次提交
    • M
      ARM: S3C64XX: Implement basic power domain support · c656c306
      Mark Brown 提交于
      The S3C64xx SoCs contain a set of gateable power domains which can be
      enabled and disabled at runtime in order to save power.  Use the generic
      power domain code to implement support for these in software, enabling
      runtime control of most domains:
      
       - ETM (not supported in mainline).
       - Domain G: 3D acceleration (no mainline support).
       - Domain V: MFC (no mainline support).
       - Domain I: JPEG and camera interface (no mainline support).
       - Domain P: 2D acceleration, TV encoder and scaler (no mainline support)
       - Domain S: Security (no mainline support).
       - Domain F: LCD (driver already uses runtime PM), post processing and
         rotation (no mainline support).
      
      The IROM domain is marked as always enabled as we should arrange for it
      to be enabled when we suspend which will need a bit more work.
      
      Due to all the conditional device registration that the platform does
      wrap s3c_pm_init() with s3c64xx_pm_init() which actually puts the device
      into the power domain after the machines have registered, looking for
      platform data to tell if the device was registered. Since currently only
      Cragganmore actually sets up PM that is the only machine updated.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Acked-by: NKukjin Kim <kgene.kim@samsung.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      c656c306
    • M
      PM / shmobile: Use common always on power domain governor · a87dc8fd
      Mark Brown 提交于
      Saves a tiny amount of code.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Acked-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      a87dc8fd
  2. 07 12月, 2011 1 次提交
  3. 02 12月, 2011 2 次提交
    • R
      PM / Domains: Add device stop governor function (v4) · b02c999a
      Rafael J. Wysocki 提交于
      Add a function deciding whether or not devices should be stopped in
      pm_genpd_runtime_suspend() depending on their PM QoS constraints
      and stop/start timing values.  Make it possible to add information
      used by this function to device objects.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      b02c999a
    • R
      PM / Domains: Make it possible to use per-device domain callbacks · d5e4cbfe
      Rafael J. Wysocki 提交于
      The current generic PM domains code requires that the same .stop(),
      .start() and .active_wakeup() device callback routines be used for
      all devices in the given domain, which is inflexible and may not
      cover some specific use cases.  For this reason, make it possible to
      use device specific .start()/.stop() and .active_wakeup() callback
      routines by adding corresponding callback pointers to struct
      generic_pm_domain_data.  Add a new helper routine,
      pm_genpd_register_callbacks(), that can be used to populate
      the new per-device callback pointers.
      
      Modify the shmobile's power domains code to allow drivers to add
      their own code to be run during the device stop and start operations
      with the help of the new callback pointers.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NMagnus Damm <damm@opensource.se>
      d5e4cbfe
  4. 29 11月, 2011 2 次提交
  5. 24 11月, 2011 10 次提交
  6. 22 11月, 2011 4 次提交
  7. 18 11月, 2011 2 次提交
  8. 17 11月, 2011 6 次提交
    • R
      ARM: imx6q: move clock register map to machine_desc.map_io · f475058f
      Richard Zhao 提交于
      map_io is the only place to call iotable_init.
      Signed-off-by: NRichard Zhao <richard.zhao@linaro.org>
      [shawn.guo: rename imx_clock_map_io() to imx6q_clock_map_io()]
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      f475058f
    • E
      ARM: pxa168/gplugd: add the correct SSP device · e4b3bbe3
      Eric Miao 提交于
      There is no SSP0, but SSP1 is used on gplugd as an I2S port.
      Acked-by: NTanmay Upadhyay <tanmay.upadhyay@einfochips.com>
      Signed-off-by: NEric Miao <eric.y.miao@gmail.com>
      e4b3bbe3
    • S
      ARM: Update mach-types to fix mxs build breakage · 9b7c547f
      Shawn Guo 提交于
      Add entry m28evk to fix the following mxs build breakage.
      
        CHK     include/generated/compile.h
        CC      arch/arm/mach-mxs/clock-mx28.o
      arch/arm/mach-mxs/clock-mx28.c: In function 'clk_misc_init':
      arch/arm/mach-mxs/clock-mx28.c:748: error: implicit declaration of
      function 'machine_is_m28evk'
      make[1]: *** [arch/arm/mach-mxs/clock-mx28.o] Error 1
      make: *** [arch/arm/mach-mxs] Error 2
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      Acked-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      9b7c547f
    • A
      ARM: SAMSUNG: include linux/types.h at gpio-cfg.h · dc2c8358
      Axel Lin 提交于
      Include linux/types.h to fix below build error:
      
        CC      drivers/power/max8903_charger.o
      In file included from arch/arm/plat-samsung/include/plat/gpio-fns.h:27,
                       from arch/arm/mach-s3c2410/include/mach/gpio-fns.h:1,
                       from arch/arm/mach-s3c2410/include/mach/gpio.h:27,
                       from /home/axel/repos/git/linux-2.6/arch/arm/include/asm/gpio.h:5,
                       from include/linux/gpio.h:30,
                       from drivers/power/max8903_charger.c:23:
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'samsung_gpio_pull_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:28: error: expected '=', ',', ';', 'asm' or '__attribute__' before 's5p_gpio_drvstr_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:55: error: expected specifier-qualifier-list before 'samsung_gpio_pull_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:146: error: expected declaration specifiers or '...' before 'samsung_gpio_pull_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:154: error: expected '=', ',', ';', 'asm' or '__attribute__' before 's3c_gpio_getpull'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:173: error: expected declaration specifiers or '...' before 'samsung_gpio_pull_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h: In function 's3c_gpio_cfgrange_nopull':
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: '__force' undeclared (first use in this function)
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: (Each undeclared identifier is reported only once
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: for each function it appears in.)
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: expected ')' before 'samsung_gpio_pull_t'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: expected ')' before numeric constant
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:178: error: too many arguments to function 's3c_gpio_cfgall_range'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h: At top level:
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:197: error: expected '=', ',', ';', 'asm' or '__attribute__' before 's5p_gpio_get_drvstr'
      arch/arm/plat-samsung/include/plat/gpio-cfg.h:208: error: expected declaration specifiers or '...' before 's5p_gpio_drvstr_t'
      make[2]: *** [drivers/power/max8903_charger.o] Error 1
      make[1]: *** [drivers/power] Error 2
      make: *** [drivers] Error 2
      Signed-off-by: NAxel Lin <axel.lin@gmail.com>
      Cc: stable@kernel.org
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      dc2c8358
    • K
      ARM: SAMSUNG: inclusion export.h instead of module.h · a69e4c28
      Kukjin Kim 提交于
      Only for THIS_MODULE, the <linux/export.h> file should be
      added instead of <linux/module.h>.
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      a69e4c28
    • K
      ARM: S5P: Fix export.h inclusion · 12b248eb
      Kukjin Kim 提交于
      Commit 32aaeffb ("Merge branch 'modsplit-Oct31 2011'...")
      breaks build like following and this fixes it to add inclusion
      <linux/export.h>.
      
      arch/arm/plat-s5p/sysmmu.c:302: error: 'THIS_MODULE' undeclared here (not in a function)
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      12b248eb
  9. 16 11月, 2011 2 次提交
  10. 15 11月, 2011 1 次提交
  11. 14 11月, 2011 1 次提交
    • H
      ARM: mmp: fix build error on gpio · 22f4cb4b
      Haojian Zhuang 提交于
      Parameters of GPIO_REG() should be assigned as volatile.
      
      arch/arm/plat-pxa/include/plat/gpio.h: In function ‘gpio_get_value’:
      arch/arm/plat-pxa/include/plat/gpio.h:12:21: error: invalid operands to
      binary & (have ‘void *’ and ‘int’)
      arch/arm/plat-pxa/include/plat/gpio.h: In function ‘gpio_set_value’:
      arch/arm/plat-pxa/include/plat/gpio.h:21:4: error: lvalue required as
      left operand of assignment
      arch/arm/plat-pxa/include/plat/gpio.h:23:4: error: lvalue required as
      left operand of assignment
      Signed-off-by: NHaojian Zhuang <haojian.zhuang@marvell.com>
      Signed-off-by: NEric Miao <eric.y.miao@gmail.com>
      22f4cb4b
  12. 12 11月, 2011 5 次提交
    • W
      ARM: 7160/1: setup: avoid overflowing {elf,arch}_name from proc_info_list · a34dbfb0
      Will Deacon 提交于
      setup_processor copies the arch_name and elf_name fields out of the
      selected proc_info_list into two fixed size buffers.
      
      Since the proc_info_list structure is defined in a proc_*.S assembly
      file, this can lead to subtle errors if the strings defined there are
      too long (for example, corrupting the machine ID).
      
      This patch uses snprintf instead of sprintf to ensure that these buffers
      are not overrun.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      a34dbfb0
    • W
      ARM: 7158/1: add new MFP implement for NUC900 · 798681bf
      wanzongshun 提交于
      This patch is to add new MFP implement in mfp.c,since nuc900 mmc driver
      needs this function support.
      Signed-off-by: NWan ZongShun <mcuos.com@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      798681bf
    • W
      ARM: 7157/1: fix a building WARNING for nuc900 · a6dc5446
      wanzongshun 提交于
      This patch is to fix a WARNING which is the "modpost: Found 1 section
      mismatch(es)" for nuc900 platform.
      Signed-off-by: NWan ZongShun <mcuos.com@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      a6dc5446
    • O
      ARM: 7156/1: l2x0: fix compile error on !CONFIG_USE_OF · e7c86c7b
      Olof Johansson 提交于
      fae2b89a (ARM: l2x0: add empty l2x0_of_init) adds a static inline
      function that returns -ENODEV, but at least on tegra cache-l2x0.h is
      included without errno.h being pulled in first, resulting in compile
      errors if OF isn't enabled:
      
      In file included from arch/arm/mach-tegra/common.c:26:
      arch/arm/include/asm/hardware/cache-l2x0.h: In function 'l2x0_of_init':
      arch/arm/include/asm/hardware/cache-l2x0.h:110: error: 'ENODEV' undeclared (first use in this function)
      arch/arm/include/asm/hardware/cache-l2x0.h:110: error: (Each undeclared identifier is reported only once
      arch/arm/include/asm/hardware/cache-l2x0.h:110: error: for each function it appears in.)
      
      Add errno.h to the include file to make it self-contained.
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      Acked-by: NRob Herring <rob.herring@calxeda.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      e7c86c7b
    • T
      ARM: OMAP: Fix reprogramming of dpll1 rate · e9b7086b
      Tony Lindgren 提交于
      Commit a66cb345 (ARM: OMAP: Map SRAM
      later on with ioremap_exec()) moved the SRAM init to happen later
      to remove a dependency to early SoC detection for map_io.
      
      This broke booting on some boards not using Kconfig option for
      OMAP_CLOCKS_SET_BY_BOOTLOADER as the dpll1 reprogramming would
      cause the following error:
      
      kernel BUG at arch/arm/plat-omap/sram.c:226!
      Internal error: Oops - undefined instruction: 0 [#1] PREEMPT
      Modules linked in:
      
      CPU: 0    Not tainted  (3.2.0-rc1-e3 #9)
      PC is at omap_sram_reprogram_clock+0x28/0x30
      LR is at omap1_select_table_rate+0x88/0xb4
      pc : [<c001b0c4>]    lr : [<c0019f54>]    psr: 600000d3
      sp : c035bf10  ip : c035bf20  fp : c035bf1c
      r10: c035bfd4  r9 : 54029252  r8 : c03f8120
      r7 : c0362b50  r6 : 00b71b00  r5 : c03873cc  r4 : c0362b40
      r3 : 00000000  r2 : c0362b40  r1 : 0000010a  r0 : 00002cb0
      Flags: nZCv  IRQs off  FIQs off  Mode SVC_32  ISA ARM  Segment kernel
      Control: 0000317f  Table: 10004000  DAC: 00000017
      Process swapper (pid: 0, stack limit = 0xc035a270)
      Stack: (0xc035bf10 to 0xc035c000)
      bf00:                                     c035bf3c c035bf20 c0019f54 c001b0ac
      bf20: 00001000 00002cb3 00000004 c035ed4c c035bf74 c035bf40 c033ea24 c0019edc
      bf40: c02f526c 00000002 00000015 bc058c9b 93111a16 c035335c 02000000 c035ed4c
      bf60: c035ed4c c03f8120 c035bf84 c035bf78 c00194c4 c033e8ec c035bfc4 c035bf88
      bf80: c033bc24 c00194a0 c035bf90 c035bf98 00000000 00000000 00000000 00000000
      bfa0: 00000001 00000000 c0354678 c035ece4 10004000 103532f4 c035bff4 c035bfc8
      bfc0: c0338574 c033b598 00000000 00000000 00000000 c035467c 0000317d c035c03c
      bfe0: c0354678 c035ece4 00000000 c035bff8 10008040 c0338508 00000000 00000000
      Backtrace:
      [<c001b09c>] (omap_sram_reprogram_clock+0x0/0x30) from [<c0019f54>] (omap1_select_table_rate+0x88/0xb4)
      [<c0019ecc>] (omap1_select_table_rate+0x0/0xb4) from [<c033ea24>] (omap1_clk_init+0x148/0x334)
       r7:c035ed4c r6:00000004 r5:00002cb3 r4:00001000
      [<c033e8dc>] (omap1_clk_init+0x0/0x334) from [<c00194c4>] (omap1_init_early+0x34/0x48)
       r8:c03f8120 r7:c035ed4c r6:c035ed4c r5:02000000 r4:c035335c
      [<c0019490>] (omap1_init_early+0x0/0x48) from [<c033bc24>] (setup_arch+0x69c/0x79c)
      [<c033b588>] (setup_arch+0x0/0x79c) from [<c0338574>] (start_kernel+0x7c/0x2f4)
      [<c03384f8>] (start_kernel+0x0/0x2f4) from [<10008040>] (0x10008040)
       r7:c035ece4 r6:c0354678 r5:c035c03c r4:0000317d
      Code: 0a000002 e1a0e00f e12fff13 e89da800 (e7f001f2)
      
      Fix this by adding omap1_clk_late_init() that only reprograms dpll1
      if the bootloader rate is less than 60MHz. This also allows removing
      of the OMAP_CLOCKS_SET_BY_BOOTLOADER option.
      Reported-by: NAaro Koskinen <aaro.koskinen@iki.fi>
      Tested-by: NAaro Koskinen <aaro.koskinen@iki.fi>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      e9b7086b
  13. 11 11月, 2011 2 次提交
    • S
      arm/imx: fix imx6q mmc error when mounting rootfs · f750ba9b
      Shawn Guo 提交于
      The following error is seen in some case when mounting rootfs from
      SD/MMC cards.
      
        Waiting for root device /dev/mmcblk0p1...
        mmc1: host does not support reading read-only switch. assuming write-enable.
        mmc1: new high speed SDHC card at address b368
        mmcblk0: mmc1:b368 SDC   3.74 GiB
         mmcblk0: p1
        mmc1: Timeout waiting for hardware interrupt.
        mmcblk0: error -110 transferring data, sector 3678224, nr 40, cmd response 0x900, card status 0xc00
        end_request: I/O error, dev mmcblk0, sector 3678225
        Buffer I/O error on device mmcblk0p1, logical block 458754
        lost page write due to I/O error on mmcblk0p1
      
      This patch fixes the problem by lowering the usdhc clock and correcting
      watermark configuration.
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      Cc: Chris Ball <cjb@laptop.org>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      f750ba9b
    • S
      arm/imx: fix AUTO_ZRELADDR selection · 1b929995
      Shawn Guo 提交于
      The AUTO_ZRELADDR selection for ARCH_IMX_V4_V5 and ARCH_MX5 should
      really be mutually exclusive to ZBOOT_ROM just like what ARCH_IMX_V6_V7
      does.
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      1b929995