)]}'
{
  "commit": "711be5ccfe9a02ba560aa918a008c31ea4760163",
  "tree": "b54cba04944a5ae0cb8a2d8ecd4d8efd14f2e495",
  "parents": [
    "e09d02e123fb6944af23a0697369ebcfc15acf73"
  ],
  "author": {
    "name": "Eric Miao",
    "email": "eric.y.miao@gmail.com",
    "time": "Wed Jul 18 11:38:45 2007 +0100"
  },
  "committer": {
    "name": "Russell King",
    "email": "rmk+kernel@arm.linux.org.uk",
    "time": "Fri Jul 20 17:25:10 2007 +0100"
  },
  "message": "[ARM] 4488/1: pxa: move pxa25x/pxa27x specific code out of pm.c\n\n1. introduce a structure pxa_cpu_pm_fns for pxa25x/pxa27x specific\n   operations as follows:\n\n\tstruct pxa_cpu_pm_fns {\n\t\tint\tsave_size;\n\t\tvoid\t(*save)(unsigned long *);\n\t\tvoid\t(*restore)(unsigned long *);\n\t\tint\t(*valid)(suspend_state_t state);\n\t\tvoid\t(*enter)(suspend_state_t state);\n\t}\n\n2. processor specific registers saving and restoring are performed\n   by calling the corresponding (*save) and (*restore)\n\n3. pxa_cpu_pm_fns-\u003esave_size should be initialized to the required\n   size for processor specific registers saving, the allocated\n   memory address will be passed to (*save) and (*restore)\n\n   memory allocation happens early in pxa_pm_init(), and save_size\n   should be assigned prior to this (which is usually true, since\n   pxa_pm_init() happens in device_initcall()\n\n4. there\u0027re some redundancies for those SLEEP_SAVE_XXX and related\n   macros, will be fixed later, one way possible is for the system\n   devices to handle the specific registers saving and restoring\n\nSigned-off-by: eric miao \u003ceric.y.miao@gmail.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e66dbc26add1f1f8291e4461b3b2f9a000e86d3c",
      "old_mode": 33188,
      "old_path": "arch/arm/mach-pxa/pm.c",
      "new_id": "b59a81a8e7d32d35d1ad9c3b1ce4cc833bf7eb7b",
      "new_mode": 33188,
      "new_path": "arch/arm/mach-pxa/pm.c"
    },
    {
      "type": "modify",
      "old_id": "9d9422e2f75c6895c4d94244e72ee4bdd27e2b47",
      "old_mode": 33188,
      "old_path": "arch/arm/mach-pxa/pxa25x.c",
      "new_id": "1ec4bf1ff2492c5540538761ef00758dc0564c28",
      "new_mode": 33188,
      "new_path": "arch/arm/mach-pxa/pxa25x.c"
    },
    {
      "type": "modify",
      "old_id": "c85f0b01c3268ca658a813466911c9e642fdd89f",
      "old_mode": 33188,
      "old_path": "arch/arm/mach-pxa/pxa27x.c",
      "new_id": "9240d37e23fac85c2677426326794b67094bd7f5",
      "new_mode": 33188,
      "new_path": "arch/arm/mach-pxa/pxa27x.c"
    },
    {
      "type": "modify",
      "old_id": "52243a62c4e76de36fbe21f8aa10d4846684e283",
      "old_mode": 33188,
      "old_path": "include/asm-arm/arch-pxa/pm.h",
      "new_id": "62b69004819d8c51d6154942cbf9768d6eefa894",
      "new_mode": 33188,
      "new_path": "include/asm-arm/arch-pxa/pm.h"
    }
  ]
}
