1. 06 8月, 2015 1 次提交
    • R
      ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets · 44e259ac
      Russell King 提交于
      The PMU device contains an interrupt controller, power control and
      resets.  The interrupt controller is a little sub-standard in that
      there is no race free way to clear down pending interrupts, so we try
      to avoid problems by reducing the window as much as possible, and
      clearing as infrequently as possible.
      
      The interrupt support is implemented using an IRQ domain, and the
      parent interrupt referenced in the standard DT way.
      
      The power domains and reset support is closely related - there is a
      defined sequence for powering down a domain which is tightly coupled
      with asserting the reset.  Hence, it makes sense to group these two
      together, and in order to avoid any locking contention disrupting this
      sequence, we avoid the use of syscon or regmap.
      
      This patch adds the core PMU driver: power domains must be defined in
      the DT file in order to make use of them.  The reset controller can
      be referenced in the standard way for reset controllers.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NGregory CLEMENT <gregory.clement@free-electrons.com>
      44e259ac
  2. 30 7月, 2015 2 次提交
  3. 29 7月, 2015 1 次提交
  4. 07 7月, 2015 1 次提交
  5. 01 6月, 2015 1 次提交
  6. 25 9月, 2014 1 次提交
    • O
      drivers/soc: ti: fix build break with modules · b2fc3f3c
      Olof Johansson 提交于
      Fixes below build break by not switching to stubs when the driver is a module:
      
      drivers/soc/ti/knav_dma.c:418:7: error: redefinition of 'knav_dma_open_channel'
       void *knav_dma_open_channel(struct device *dev, const char *name,
             ^
      In file included from drivers/soc/ti/knav_dma.c:26:0:
      include/linux/soc/ti/knav_dma.h:165:21: note: previous definition of 'knav_dma_open_channel' was here
       static inline void *knav_dma_open_channel(struct device *dev, const char *name,
                           ^
      
      Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      b2fc3f3c
  7. 24 9月, 2014 2 次提交
    • S
      soc: ti: add Keystone Navigator DMA support · 88139ed0
      Santosh Shilimkar 提交于
      The Keystone Navigator DMA driver sets up the dma channels and flows for
      the QMSS(Queue Manager SubSystem) who triggers the actual data movements
      across clients using destination queues. Every client modules like
      NETCP(Network Coprocessor), SRIO(Serial Rapid IO) and CRYPTO
      Engines has its own instance of packet dma hardware. QMSS has also
      an internal packet DMA module which is used as an infrastructure
      DMA with zero copy.
      
      Initially this driver was proposed as DMA engine driver but since the
      hardware is not typical DMA engine and hence doesn't comply with typical
      DMA engine driver needs, that approach was naked. Link to that
      discussion -
      	https://lkml.org/lkml/2014/3/18/340
      
      As aligned, now we pair the Navigator DMA with its companion Navigator
      QMSS subsystem driver.
      
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Kumar Gala <galak@codeaurora.org>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Signed-off-by: NSandeep Nair <sandeep_n@ti.com>
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      88139ed0
    • S
      soc: ti: add Keystone Navigator QMSS driver · 41f93af9
      Sandeep Nair 提交于
      The QMSS (Queue Manager Sub System) found on Keystone SOCs is one of
      the main hardware sub system which forms the backbone of the Keystone
      Multi-core Navigator. QMSS consist of queue managers, packed-data structure
      processors(PDSP), linking RAM, descriptor pools and infrastructure
      Packet DMA.
      
      The Queue Manager is a hardware module that is responsible for accelerating
      management of the packet queues. Packets are queued/de-queued by writing or
      reading descriptor address to a particular memory mapped location. The PDSPs
      perform QMSS related functions like accumulation, QoS, or event management.
      Linking RAM registers are used to link the descriptors which are stored in
      descriptor RAM. Descriptor RAM is configurable as internal or external memory.
      
      The QMSS driver manages the PDSP setups, linking RAM regions,
      queue pool management (allocation, push, pop and notify) and descriptor
      pool management. The specifics on the device tree bindings for
      QMSS can be found in:
      	Documentation/devicetree/bindings/soc/keystone-navigator-qmss.txt
      
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Kumar Gala <galak@codeaurora.org>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Grant Likely <grant.likely@linaro.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Signed-off-by: NSandeep Nair <sandeep_n@ti.com>
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      41f93af9
新手
引导
客服 返回
顶部