1. 30 3月, 2013 1 次提交
  2. 27 3月, 2013 2 次提交
  3. 04 3月, 2013 2 次提交
  4. 11 2月, 2013 1 次提交
  5. 29 1月, 2013 2 次提交
  6. 14 1月, 2013 2 次提交
  7. 02 1月, 2013 1 次提交
    • M
      regmap: flat: Add flat cache type · 2ac902ce
      Mark Brown 提交于
      While for I2C and SPI devices the overhead of using rbtree for devices with
      only one block of registers is negligible the same isn't always going to
      be true for MMIO devices where the I/O costs are very much lower. Cater
      for these devices by adding a simple flat array type for them where the
      lookups are simple array accesses, taking us right back to the original
      ASoC cache implementation.
      
      Thanks to Magnus Damm for the discussion which prompted this.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      2ac902ce
  8. 11 12月, 2012 1 次提交
    • M
      regmap: debugfs: Cache offsets of valid regions for dump · 5166b7c0
      Mark Brown 提交于
      Avoid doing a linear scan of the entire register map for each read() of
      the debugfs register dump by recording the offsets where valid registers
      exist when we first read the registers file. This assumes the set of
      valid registers never changes, if this is not the case invalidation of
      the cache will be required.
      
      This could be further improved for large blocks of contiguous registers
      by calculating the register we will read from within the block - currently
      we do a linear scan of the block. An rbtree may also be worthwhile.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      5166b7c0
  9. 06 12月, 2012 1 次提交
  10. 21 11月, 2012 1 次提交
  11. 17 10月, 2012 1 次提交
  12. 15 10月, 2012 2 次提交
  13. 18 6月, 2012 1 次提交
    • K
      regmap: Add support for register indirect addressing. · 6863ca62
      Krystian Garbaciak 提交于
      Devices with register paging or indirectly accessed registers can configure
      register mapping to map those on virtual address range. During access to
      virtually mapped register range, indirect addressing is processed
      automatically, in following steps:
        1. selector for page or indirect register is updated (when needed);
        2. register in data window is accessed.
      
      Configuration should provide minimum and maximum register for virtual range,
      details of selector field for page selection, minimum and maximum register of
      data window for indirect access.
      
      Virtual range registers are managed by cache as well as direct access
      registers. In order to make indirect access more efficient, selector register
      should be declared as non-volatile, if possible.
      
      struct regmap_config is extended with the following:
      struct regmap_range_cfg	*ranges;
      unsigned int		n_ranges;
      
      [Also reordered debugfs init to later on since the cleanup code was
      conflicting with the new cleanup code for ranges anyway -- broonie]
      Signed-off-by: NKrystian Garbaciak <krystian.garbaciak@diasemi.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      6863ca62
  14. 09 5月, 2012 1 次提交
  15. 01 5月, 2012 1 次提交
  16. 13 4月, 2012 6 次提交
  17. 10 4月, 2012 3 次提交
  18. 06 4月, 2012 2 次提交
  19. 01 4月, 2012 1 次提交
  20. 24 2月, 2012 1 次提交
    • M
      regmap: Supply ranges to the sync operations · ac8d91c8
      Mark Brown 提交于
      In order to allow us to support partial sync operations add minimum and
      maximum register arguments to the sync operation and update the rbtree
      and lzo caches to use this new information. The LZO implementation is
      obviously not good, we could exit the iteration earlier, but there may
      be room for more wide reaching optimisation there.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      ac8d91c8
  21. 07 2月, 2012 1 次提交
  22. 23 1月, 2012 1 次提交
    • M
      regmap: Support register patch sets · 22f0d90a
      Mark Brown 提交于
      Device manufacturers frequently provide register sequences, usually not
      fully documented, to be run at startup in order to provide better defaults
      for devices (for example, improving performance in the light of silicon
      evaluation). Support such updates by allowing drivers to register update
      sets with the core. These updates will be written to the device immediately
      and will also be rewritten when the cache is synced.
      
      The assumption is that the reason for resyncing the cache will always be
      that the device has been powered off. If this turns out to not be the case
      then a separate operation can be provided.
      
      Currently the implementation only allows a single set of updates to be
      specified for a device, this could be extended in future.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      22f0d90a
  23. 20 1月, 2012 1 次提交
  24. 13 12月, 2011 1 次提交
  25. 21 11月, 2011 1 次提交
  26. 17 11月, 2011 1 次提交
  27. 08 11月, 2011 1 次提交