1. Nov 09, 2013
  2. Nov 08, 2013
  3. Nov 07, 2013
  4. Nov 05, 2013
  5. Nov 04, 2013
  6. Oct 29, 2013
    • Grant Likely's avatar
      arm/versatile: Fix versatile irq specifications. · 0976c946
      Grant Likely authored
      
      
      Two of the versatile irq definitions are incorrect, mostly because two
      devices have connections to more than one interrupt controller. Fix them
      by using the new interrupts-extended property to fan out without using
      an awful interrupt-map nexus node.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      0976c946
    • Grant Likely's avatar
      of/irq: create interrupts-extended property · 79d97015
      Grant Likely authored
      
      
      The standard interrupts property in device tree can only handle
      interrupts coming from a single interrupt parent. If a device is wired
      to multiple interrupt controllers, then it needs to be attached to a
      node with an interrupt-map property to demux the interrupt specifiers
      which is confusing. It would be a lot easier if there was a form of the
      interrupts property that allows for a separate interrupt phandle for
      each interrupt specifier.
      
      This patch does exactly that by creating a new interrupts-extended
      property which reuses the phandle+arguments pattern used by GPIOs and
      other core bindings.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      Acked-by: default avatarTony Lindgren <tony@atomide.com>
      Acked-by: default avatarKumar Gala <galak@codeaurora.org>
      [grant.likely: removed versatile platform hunks into separate patch]
      Cc: Rob Herring <rob.herring@calxeda.com>
      79d97015
  7. Oct 24, 2013
  8. Oct 16, 2013
    • Tomasz Figa's avatar
      of/irq: Pass trigger type in IRQ resource flags · 4a43d686
      Tomasz Figa authored
      
      
      Some drivers might rely on availability of trigger flags in IRQ
      resource, for example to configure the hardware for particular interrupt
      type. However current code creating IRQ resources from data in device
      tree does not configure trigger flags in resulting resources.
      
      This patch tries to solve the problem, based on the fact that
      irq_of_parse_and_map() configures the trigger based on DT interrupt
      specifier and IRQD_TRIGGER_* flags are consistent with IORESOURCE_IRQ_*,
      and we can get correct trigger flags by calling irqd_get_trigger_type()
      after mapping the interrupt.
      
      Signed-off-by: default avatarTomasz Figa <tomasz.figa@gmail.com>
      [grant.likely: Merged the two assignments to r->flags]
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      4a43d686
    • Grant Likely's avatar
      of: Fix dereferencing node name in debug output to be safe · 8804827b
      Grant Likely authored
      
      
      Several locations in the of_address and of_irq code dereference the
      full_name parameter from a device_node pointer without checking if the
      pointer is valid.  This patch switches to use of_node_full_name() which
      always checks the pointer.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      8804827b
    • Grant Likely's avatar
      of: Fix iteration bug over CPU reg properties · f3cea45a
      Grant Likely authored
      
      
      The size of each hwid in a cpu nodes 'reg' property is defined by the
      parents #address-cells property in the normal way. The cpu parsing code
      has a bug where it will overrun the end of the property if
      address-cells is greater than one. This commit fixes the problem by
      adjusting the array size by the number of address cells. It also makes
      sure address-cells isn't zero for that would cause an infinite loop.
      
      v2: bail if #address-cells is zero instead of forcing to
          OF_ROOT_NODE_ADDR_CELLS_DEFAULT. Forcing it will cause the reg
          property to be parsed incorrectly.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      Cc: Rob Herring <rob.herring@calxeda.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      f3cea45a
    • David Miller's avatar
      of: Make cpu node handling more portable. · d1cb9d1a
      David Miller authored
      
      
      Use for_each_node_by_type() to iterate all cpu nodes in the
      system.
      
      Provide and overridable function arch_find_n_match_cpu_physical_id,
      which sees if the given device node matches 'cpu' and if so sets
      '*thread' when non-NULL to the cpu thread number within the core.
      
      The default implementation behaves the same as the existing code.
      
      Add a sparc64 implementation.
      
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Tested-by: default avatarSudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com>
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      d1cb9d1a
  9. Oct 14, 2013
    • Grant Likely's avatar
      of: fix unnecessary warning on missing /cpus node · 444c91e5
      Grant Likely authored
      Not all DT platforms have all the cpus collected under a /cpus node.
      That just happens to be a details of FDT, ePAPR and PowerPC platforms.
      Sparc does something different, but unfortunately the current code
      complains with a warning if /cpus isn't there. This became a problem
      with commit f86e4718
      
      , "driver/core cpu: initialize of_node in cpu's
      device structure", which caused the function to get called for all
      architectures.
      
      This commit is a temporary fix to fail silently if the cpus node isn't
      present. A proper fix will come later to allow arch code to provide a
      custom mechanism for decoding the CPU hwid if the 'reg' property isn't
      appropriate.
      
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      Cc: David Miller <davem@davemloft.net>
      Cc: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com>
      Cc: Rob Herring <rob.herring@calxeda.com>
      444c91e5
    • Linus Torvalds's avatar
      Linux 3.12-rc5 · 61e6cfa8
      Linus Torvalds authored
      61e6cfa8
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 73cac03d
      Linus Torvalds authored
      Pull watchdog fixes from Wim Van Sebroeck:
       "This will fix a deadlock on the ts72xx_wdt driver, fix bitmasks in the
        kempld_wdt driver and fix a section mismatch in the sunxi_wdt driver"
      
      * git://www.linux-watchdog.org/linux-watchdog:
        watchdog: sunxi: Fix section mismatch
        watchdog: kempld_wdt: Fix bit mask definition
        watchdog: ts72xx_wdt: locking bug in ioctl
      73cac03d
    • Maxime Ripard's avatar
      watchdog: sunxi: Fix section mismatch · 1d5898b4
      Maxime Ripard authored
      
      
      This driver has a section mismatch, for probe and remove functions,
      leading to the following warning during the compilation.
      
      WARNING: drivers/watchdog/built-in.o(.data+0x24): Section mismatch in
      reference from the variable sunxi_wdt_driver to the function
      .init.text:sunxi_wdt_probe()
      The variable sunxi_wdt_driver references
      the function __init sunxi_wdt_probe()
      
      Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      1d5898b4
    • Jingoo Han's avatar
      watchdog: kempld_wdt: Fix bit mask definition · 4c4e4566
      Jingoo Han authored
      
      
      STAGE_CFG bits are defined as [5:4] bits. However, '(((x) & 0x30) << 4)'
      handles [9:8] bits. Thus, it should be fixed in order to handle
      [5:4] bits.
      
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      4c4e4566
    • Dan Carpenter's avatar
      watchdog: ts72xx_wdt: locking bug in ioctl · 8612ed0d
      Dan Carpenter authored
      
      
      Calling the WDIOC_GETSTATUS & WDIOC_GETBOOTSTATUS and twice will cause a
      interruptible deadlock.
      
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      8612ed0d
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 3552570a
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "A small batch of fixes this week, mostly OMAP related.  Nothing stands
        out as particularly controversial.
      
        Also a fix for a 3.12-rc1 timer regression for Exynos platforms,
        including the Chromebooks"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: exynos: dts: Update 5250 arch timer node with clock frequency
        ARM: OMAP2: RX-51: Add missing max_current to rx51_lp5523_led_config
        ARM: mach-omap2: board-generic: fix undefined symbol
        ARM: dts: Fix pinctrl mask for omap3
        ARM: OMAP3: Fix hardware detection for omap3630 when booted with device tree
        ARM: OMAP2: gpmc-onenand: fix sync mode setup with DT
      3552570a
    • Yuvaraj Kumar C D's avatar
      ARM: exynos: dts: Update 5250 arch timer node with clock frequency · 4d594dd3
      Yuvaraj Kumar C D authored
      
      
      Without the "clock-frequency" property in arch timer node, could able
      to see the below crash dump.
      
      [<c0014e28>] (unwind_backtrace+0x0/0xf4) from [<c0011808>] (show_stack+0x10/0x14)
      [<c0011808>] (show_stack+0x10/0x14) from [<c036ac1c>] (dump_stack+0x7c/0xb0)
      [<c036ac1c>] (dump_stack+0x7c/0xb0) from [<c01ab760>] (Ldiv0_64+0x8/0x18)
      [<c01ab760>] (Ldiv0_64+0x8/0x18) from [<c0062f60>] (clockevents_config.part.2+0x1c/0x74)
      [<c0062f60>] (clockevents_config.part.2+0x1c/0x74) from [<c0062fd8>] (clockevents_config_and_register+0x20/0x2c)
      [<c0062fd8>] (clockevents_config_and_register+0x20/0x2c) from [<c02b8e8c>] (arch_timer_setup+0xa8/0x134)
      [<c02b8e8c>] (arch_timer_setup+0xa8/0x134) from [<c04b47b4>] (arch_timer_init+0x1f4/0x24c)
      [<c04b47b4>] (arch_timer_init+0x1f4/0x24c) from [<c04b40d8>] (clocksource_of_init+0x34/0x58)
      [<c04b40d8>] (clocksource_of_init+0x34/0x58) from [<c049ed8c>] (time_init+0x20/0x2c)
      [<c049ed8c>] (time_init+0x20/0x2c) from [<c049b95c>] (start_kernel+0x1e0/0x39c)
      
      THis is because the Exynos u-boot, for example on the Chromebooks, doesn't set
      up the CNTFRQ register as expected by arch_timer. Instead, we have to specify
      the frequency in the device tree like this.
      
      Signed-off-by: default avatarYuvaraj Kumar C D <yuvaraj.cd@samsung.com>
      [olof: Changed subject, added comment, elaborated on commit message]
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      4d594dd3
    • Olof Johansson's avatar
      Merge tag 'fixes-against-v3.12-rc3-take2' of... · 98ead6e0
      Olof Johansson authored
      Merge tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
      
      From Tony Lindgren:
      
      Few fixes for omap3 related hangs and errors that people have
      noticed now that people are actually using the device tree
      based booting for omap3.
      
      Also one regression fix for timer compile for dra7xx when
      omap5 is not selected, and a LED regression fix for n900.
      
      * tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap
      
      :
        ARM: OMAP2: RX-51: Add missing max_current to rx51_lp5523_led_config
        ARM: mach-omap2: board-generic: fix undefined symbol
        ARM: dts: Fix pinctrl mask for omap3
        ARM: OMAP3: Fix hardware detection for omap3630 when booted with device tree
        ARM: OMAP2: gpmc-onenand: fix sync mode setup with DT
      
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      98ead6e0