1. 10 7月, 2008 1 次提交
  2. 03 6月, 2008 1 次提交
  3. 19 5月, 2008 2 次提交
    • R
      [ARM] pxa: separate PXA25x and PXA27x UDC register definitions · 284d115e
      Russell King 提交于
      The PXA25x and PXA27x USB device controller register definitions are
      different.  Currently, they live side by side in pxa-regs.h, but only
      one set is available depending on the setting of PXA25x or PXA27x.
      
      This means that if we build to support both PXA25x and PXA27x, the
      PXA27x definitions are unavailable, even to PXA27x specific code.
      
      Remove these definitions from pxa-regs.h, and place them in separate
      files.  Include these files where appropriate.
      
      Note: according to the dependencies in drivers/usb/gadget/Kconfig,
      we do not support the UDC on PXA27x nor PXA3xx CPUs, so remove the
      platform devices from pxa27x.c and pxa3xx.c.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      284d115e
    • E
      [ARM] pxa: Add PXA support for PWM API · 75540c1a
      eric miao 提交于
      Patch mainly from Eric Miao, with minor edits by rmk.
      
      Note: PWM0 and PWM2 share the same register I/O space and clock gating
      on pxa{27x, 3xx}, thus PWM2 is treated in the driver as a child PWM of
      PWM0. And this is also true for PWM1/3.
      Signed-off-by: Neric miao <eric.miao@marvell.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      75540c1a
  4. 09 5月, 2008 1 次提交
  5. 04 5月, 2008 1 次提交
  6. 19 4月, 2008 6 次提交
  7. 04 2月, 2008 2 次提交
  8. 28 1月, 2008 1 次提交
  9. 26 1月, 2008 6 次提交
  10. 26 11月, 2007 1 次提交
  11. 19 10月, 2007 1 次提交
    • R
      PM: Move definition of struct pm_ops to suspend.h · 95d9ffbe
      Rafael J. Wysocki 提交于
      Move the definition of 'struct pm_ops' and related functions from <linux/pm.h>
      to <linux/suspend.h> .
      
      There are, at least, the following reasons to do that:
      * 'struct pm_ops' is specifically related to suspend and not to the power
        management in general.
      * As long as 'struct pm_ops' is defined in <linux/pm.h>, any modification of it
        causes the entire kernel to be recompiled, which is unnecessary and annoying.
      * Some suspend-related features are already defined in <linux/suspend.h>, so it
        is logical to move the definition of 'struct pm_ops' into there.
      * 'struct hibernation_ops', being the hibernation-related counterpart of
        'struct pm_ops', is defined in <linux/suspend.h> .
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NPavel Machek <pavel@ucw.cz>
      Cc: Len Brown <lenb@kernel.org>
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      95d9ffbe
  12. 13 10月, 2007 6 次提交
  13. 21 7月, 2007 2 次提交
    • E
      [ARM] 4489/1: pxa: split pxa_cpu_suspend to processor specific ones · b750a093
      Eric Miao 提交于
      1. split pxa_cpu_suspend to pxa25x_cpu_suspend and pxa27x_cpu_suspend
         and make pxa25x_cpu_pm_enter() and pxa27x_cpu_pm_enter() to invoke
         the corresponding _suspend functions, thus remove all those ugly
         #ifdef .. #endif out of sleep.S
      
      2. move the declarations of those suspend functions to pm.h
      
      note: this is not a clean enough solution until all the pxa25x and
      pxa27x specific part is further removed out of sleep.S, sleep.S is
      supposed to contain generic code only
      Signed-off-by: Neric miao <eric.y.miao@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      b750a093
    • E
      [ARM] 4488/1: pxa: move pxa25x/pxa27x specific code out of pm.c · 711be5cc
      Eric Miao 提交于
      1. introduce a structure pxa_cpu_pm_fns for pxa25x/pxa27x specific
         operations as follows:
      
      	struct pxa_cpu_pm_fns {
      		int	save_size;
      		void	(*save)(unsigned long *);
      		void	(*restore)(unsigned long *);
      		int	(*valid)(suspend_state_t state);
      		void	(*enter)(suspend_state_t state);
      	}
      
      2. processor specific registers saving and restoring are performed
         by calling the corresponding (*save) and (*restore)
      
      3. pxa_cpu_pm_fns->save_size should be initialized to the required
         size for processor specific registers saving, the allocated
         memory address will be passed to (*save) and (*restore)
      
         memory allocation happens early in pxa_pm_init(), and save_size
         should be assigned prior to this (which is usually true, since
         pxa_pm_init() happens in device_initcall()
      
      4. there're some redundancies for those SLEEP_SAVE_XXX and related
         macros, will be fixed later, one way possible is for the system
         devices to handle the specific registers saving and restoring
      Signed-off-by: Neric miao <eric.y.miao@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      711be5cc
  14. 20 7月, 2007 1 次提交
  15. 12 7月, 2007 6 次提交
  16. 02 7月, 2007 1 次提交
  17. 22 4月, 2007 1 次提交
    • E
      [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX · 7053acbd
      Eric Miao 提交于
      This patch removes the unnecessary bit number from CKENnn_XXXX
      definitions for PXA, so that
      
      	CKEN0_PWM0 --> CKEN_PWM0
      	CKEN1_PWM1 --> CKEN_PWM1
      	...
      	CKEN24_CAMERA --> CKEN_CAMERA
      
      The reasons for the change of these defitions are:
      
      1. they do not scale - they are currently valid for pxa2xx, but
      definitely not valid for pxa3xx, e.g., pxa3xx has bit 3 for camera
      instead of bit 24
      
      2. they are unnecessary - the peripheral name within the definition
      has already announced its usage, we don't need those bit numbers
      to know which peripheral we are going to enable/disable clock for
      
      3. they are inconvenient - think about this: a driver programmer
      for pxa has to remember which bit in the CKEN register to turn
      on/off
      
      Another change in the patch is to make the definitions equal to its
      clock bit index, so that
      
         #define CKEN_CAMERA  (24)
      
      instead of
      
         #define CKEN_CAMERA  (1 << 24)
      
      this change, however, will add a run-time bit shift operation in
      pxa_set_cken(), but the benefit of this change is that it scales
      when bit index exceeds 32, e.g., pxa3xx has two registers CKENA
      and CKENB, totally 64 bit for this, suppose CAMERA clock enabling
      bit is CKENB:10, one can simply define CKEN_CAMERA to be (32 + 10)
      and so that pxa_set_cken() need minimum change to adapt to that.
      Signed-off-by: Neric miao <eric.y.miao@gmail.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      7053acbd