1. 02 2月, 2015 2 次提交
  2. 26 1月, 2015 1 次提交
  3. 17 1月, 2015 3 次提交
  4. 15 1月, 2015 3 次提交
  5. 03 12月, 2014 1 次提交
  6. 02 12月, 2014 3 次提交
  7. 27 11月, 2014 3 次提交
  8. 04 11月, 2014 1 次提交
  9. 22 9月, 2014 1 次提交
  10. 15 9月, 2014 1 次提交
  11. 03 9月, 2014 2 次提交
  12. 25 8月, 2014 3 次提交
  13. 02 12月, 2013 1 次提交
    • B
      ARM: at91: add Kconfig options for common clk support · c8a8c630
      Boris BREZILLON 提交于
      This patch adds the following Kconfig options to prepare the transition to
      common clk framework:
      
      - AT91_USE_OLD_CLK: this option is selected by every SoC which does not
        support new at91 clks based on common clk framework (SoC which does not
        define the clock tree in its device tree).
        This options is also selected when the user choose non dt boards support
        (new at91 clks can only be registered from a device tree definition).
      
      - COMMON_CLK_AT91: this option cannot be selected directly. Instead it is
        enabled if these 3 conditions are met:
         * at least one of the selected SoCs have a PMC (Power Management
           Controller) Unit
         * device tree support is enabled
         * the old at91 clk implementation is disabled (every selected SoC define
           its clks in its device tree and non dt boards support is disabled)
      
      - OLD_CLK_AT91: this option cannot be selected directly. Instead it is
        enabled if these 2 conditions are met:
         * at least one of the selected SoCs have a PMC (Power Management
           Controller) Unit
         * at least one of the selected SoCs does not define its clks in its
           device tree or non dt-boards support is enabled
      
      This patch selects AT91_USE_OLD_CLK in all currently supported SoCs. These
      selects will be removed after clk definitions are properly added in each
      soc's device tree.
      It also selects AT91_USE_OLD_CLK in all non-dt boards support.
      
      AT91_PMC_UNIT references are replaced by OLD_CLK_AT91, because PMC Unit is
      enabled for both old and common clk implementations, and old clk
      implementation should not be compiled if COMMON_CLK is enabled.
      
      To avoid future link errors, a new stub is created for at91_dt_clock_init
      function if OLD_CLK_AT91 is disabled.
      
      A new check is added in dt init functions (setup.c) to prepare for SoCs
      supporting new clk implementation. These SoCs won't setup the
      register_clocks callback (clk registration is done using of_clk_init).
      Signed-off-by: NBoris BREZILLON <b.brezillon@overkiz.com>
      Acked-by: NMike Turquette <mturquette@linaro.org>
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      c8a8c630
  14. 15 11月, 2013 2 次提交
    • J
      ARM: at91: fix hanged boot due to early rtt-interrupt · 94c4c79f
      Johan Hovold 提交于
      Make sure the RTT-interrupts are masked at boot by adding a new helper
      function to be used at SOC-init.
      
      This fixes hanged boot on all AT91 SOCs with an RTT, for example, if an
      RTT-alarm goes off after a non-clean shutdown (e.g. when using RTC
      wakeup).
      
      The RTC and RTT-peripherals are powered by backup power (VDDBU) (on all
      AT91 SOCs but RM9200) and are not reset on wake-up, user, watchdog or
      software reset. This means that their interrupts may be enabled during
      early boot if, for example, they where not disabled during a previous
      shutdown (e.g. due to a buggy driver or a non-clean shutdown such as a
      user reset). Furthermore, an RTC or RTT-alarm may also be active.
      
      The RTC and RTT-interrupts use the shared system-interrupt line, which
      is also used by the PIT, and if an interrupt occurs before a handler
      (e.g. RTC-driver) has been installed this leads to the system interrupt
      being disabled and prevents the system from booting.
      
      Note that when boot hangs due to an early RTC or RTT-interrupt, the only
      way to get the system to start again is to remove the backup power (e.g.
      battery) or to disable the interrupt manually from the bootloader. In
      particular, a user reset is not sufficient.
      Signed-off-by: NJohan Hovold <jhovold@gmail.com>
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      Cc: stable@vger.kernel.org # 3.11.x
      94c4c79f
    • J
      ARM: at91: fix hanged boot due to early rtc-interrupt · 6de714c2
      Johan Hovold 提交于
      Make sure the RTC-interrupts are masked at boot by adding a new helper
      function to be used at SOC-init.
      
      This fixes hanged boot on all AT91 SOCs with an RTC (but RM9200), for
      example, after a reset during an RTC-update or if an RTC-alarm goes off
      after shutdown (e.g. when using RTC wakeup).
      
      The RTC and RTT-peripherals are powered by backup power (VDDBU) (on all
      AT91 SOCs but RM9200) and are not reset on wake-up, user, watchdog or
      software reset. This means that their interrupts may be enabled during
      early boot if, for example, they where not disabled during a previous
      shutdown (e.g. due to a buggy driver or a non-clean shutdown such as a
      user reset). Furthermore, an RTC or RTT-alarm may also be active.
      
      The RTC and RTT-interrupts use the shared system-interrupt line, which
      is also used by the PIT, and if an interrupt occurs before a handler
      (e.g. RTC-driver) has been installed this leads to the system interrupt
      being disabled and prevents the system from booting.
      
      Note that when boot hangs due to an early RTC or RTT-interrupt, the only
      way to get the system to start again is to remove the backup power (e.g.
      battery) or to disable the interrupt manually from the bootloader. In
      particular, a user reset is not sufficient.
      Signed-off-by: NJohan Hovold <jhovold@gmail.com>
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      Cc: stable@vger.kernel.org # 3.11.x
      6de714c2
  15. 10 7月, 2013 1 次提交
  16. 21 6月, 2013 1 次提交
  17. 25 12月, 2012 1 次提交
  18. 19 11月, 2012 1 次提交
  19. 25 10月, 2012 1 次提交
  20. 02 7月, 2012 1 次提交
    • L
      ARM: at91: add AIC5 support · c4b68520
      Ludovic Desroches 提交于
      The number of lines of AIC5 has increased from 32 to 128. Due to this
      increase, a source select register has been introduced for the interrupt
      line selection. Moreover, register mapping has been changed. For that reasons,
      we need some dedicated callbacks for AIC5.
      Power management is also concerned by these changes. On suspend, we can't get
      the whole interrupt mask register as before, we have to read this register 128
      times. To reduce this overhead, a snapshot of the whole IMR is maintained.
      Signed-off-by: NLudovic Desroches <ludovic.desroches@atmel.com>
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      c4b68520
  21. 17 4月, 2012 1 次提交
  22. 15 3月, 2012 2 次提交
  23. 01 3月, 2012 1 次提交
    • N
      ARM: at91: AIC and GPIO IRQ device tree initialization · 8014d6f4
      Nicolas Ferre 提交于
      Both AIC and GPIO controllers are now using the standard of_irq_init()
      function to initialize IRQs in case of DT use.
      The DT specific initialization functions are now separated from the
      non-DT case and are now using "linear" irq domains.
      The .map() irqdomain operation is responsible for positioning the IRQ
      handlers. In AIC case, the Linux IRQ number is directly programmed in
      the hardware to avoid an additional reverse mapping operation.
      The AIC position its irq domain as the "default" irq domain.
      
      For DT case, the priority is not yet filled in the SMR. It will be the
      subject of another patch.
      Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com>
      8014d6f4
  24. 23 2月, 2012 3 次提交