)]}'
{
  "commit": "4d27e9dcff00a6425d779b065ec8892e4f391661",
  "tree": "6602f1dcfad3e3065a1c081cf89f2d020976600d",
  "parents": [
    "fafc9929c668f8bae6dd1f109f33a86d2cb3c460"
  ],
  "author": {
    "name": "Rafael J. Wysocki",
    "email": "rjw@sisk.pl",
    "time": "Fri Apr 29 00:35:50 2011 +0200"
  },
  "committer": {
    "name": "Rafael J. Wysocki",
    "email": "rjw@sisk.pl",
    "time": "Fri Apr 29 00:35:50 2011 +0200"
  },
  "message": "PM: Make power domain callbacks take precedence over subsystem ones\n\nChange the PM core\u0027s behavior related to power domains in such a way\nthat, if a power domain is defined for a given device, its callbacks\nwill be executed instead of and not in addition to the device\nsubsystem\u0027s PM callbacks.\n\nThe idea behind the initial implementation of power domains handling\nby the PM core was that power domain callbacks would be executed in\naddition to subsystem callbacks, so that it would be possible to\nextend the subsystem callbacks by using power domains.  It turns out,\nhowever, that this wouldn\u0027t be really convenient in some important\nsituations.\n\nFor example, there are systems in which power can only be removed\nfrom entire power domains.  On those systems it is not desirable to\nexecute device drivers\u0027 PM callbacks until it is known that power is\ngoing to be removed from the devices in question, which means that\nthey should be executed by power domain callbacks rather then by\nsubsystem (e.g. bus type) PM callbacks, because subsystems generally\nhave no information about what devices belong to which power domain.\nThus, for instance, if the bus type in question is the platform bus\ntype, its PM callbacks generally should not be called in addition to\npower domain callbacks, because they run device drivers\u0027 callbacks\nunconditionally if defined.\n\nWhile in principle the default subsystem PM callbacks, or a subset of\nthem, may be replaced with different functions, it doesn\u0027t seem\ncorrect to do so, because that would change the subsystem\u0027s behavior\nwith respect to all devices in the system, regardless of whether or\nnot they belong to any power domains.  Thus, the only remaining\noption is to make power domain callbacks take precedence over\nsubsystem callbacks.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Kevin Hilman \u003ckhilman@ti.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "abe3ab709e87ffe3340757b6ae80bad694caf2d8",
      "old_mode": 33188,
      "old_path": "drivers/base/power/main.c",
      "new_id": "3b354560f30607b1f96dd62fb70e8e1331cad901",
      "new_mode": 33188,
      "new_path": "drivers/base/power/main.c"
    },
    {
      "type": "modify",
      "old_id": "3172c60d23a96e0e2d910219deed3b40bc2f6c79",
      "old_mode": 33188,
      "old_path": "drivers/base/power/runtime.c",
      "new_id": "0d4587b15c5599372e7b9f917fcea636404bf8d9",
      "new_mode": 33188,
      "new_path": "drivers/base/power/runtime.c"
    }
  ]
}
