)]}'
{
  "log": [
    {
      "commit": "5906215bab9fccf7aa2c4305accf0716c4634d69",
      "tree": "e5646569126c01d256582f91d4b29fbdebd867d9",
      "parents": [
        "a53535014b7af750df3d8eda471dce21b2aa339c"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:09 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:10:10 2011 +0100"
      },
      "message": "HID: wiimote: Parse classic controller data\n\nNintendo Classic Controller extension reports lots of keys, two analog sticks\nand two analog buttons. We report all data through extension input device to\nuserspace.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a53535014b7af750df3d8eda471dce21b2aa339c",
      "tree": "66cd66019376ce9acafcf589de558c589613b56c",
      "parents": [
        "b17b57a5d0fcfc1d6ba582a086b3a22510aef03d"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:08 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:09:56 2011 +0100"
      },
      "message": "HID: wiimote: Parse nunchuck data\n\nThe Nintendo Nunchuck extension reports accelerometer values, one analog stick\nand two buttons. See inline comments for data layout.\nWe report all data to userspace through extension input device.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "b17b57a5d0fcfc1d6ba582a086b3a22510aef03d",
      "tree": "7f15f6289c72ab1dc2a8ea5dc311102e08457230",
      "parents": [
        "0b6815d75d8bf214998455d94061a40f3b4a77f3"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:07 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:09:45 2011 +0100"
      },
      "message": "HID: wiimote: Parse motion+ data\n\nMotion+ reports rotation gyro data which we report to userspace as ABS_RX/Y/Z\nvalues. The device reports them either in fast or slow mode. We adjust the\nvalues to get a linear scale so userspace does not need to know about slow and\nfast mode.\n\nThe motion+ also reports whether an extension is connected to it. We keep track\nof this value and reinitialize the extensions if an extension is plugged or\nunplugged.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "0b6815d75d8bf214998455d94061a40f3b4a77f3",
      "tree": "fd8e5bca1ed7a805546f204faad80e3b91fc72b6",
      "parents": [
        "479901ba1847902623cc348b1d09c7d8979a9683"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:06 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:09:34 2011 +0100"
      },
      "message": "HID: wiimote: Add extension handler stubs\n\nAll supported extensions report data as 6 byte block. All DRMs with extension\ndata provide at least 6 extension bytes. Hence a generic handler for all\nextension bytes is sufficient and can be called on all DRMs.\n\nThe handler distinguishes the input and passes it to the right handler. Motion+\npasses data interleaved so we can have Motion+ and a regular extension enabled\nsimultaneously.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "479901ba1847902623cc348b1d09c7d8979a9683",
      "tree": "199014c6f16db32187973c6b1a573533f3628ce5",
      "parents": [
        "c1e51398a14bd74c58a838e9e76e8f726c5643b9"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:05 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:09:23 2011 +0100"
      },
      "message": "HID: wiimote: Register input devices for extensions\n\nMotion+ and regular extensions are physical adapters for the wiimote so create\none input device for each of them. This also allows to enable only opened\nextensions and turn unused extenions off to save battery power.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "c1e51398a14bd74c58a838e9e76e8f726c5643b9",
      "tree": "d3ec6055d7c564570b74d54a8e1d63b0ec28a218",
      "parents": [
        "492ba955c1f7b8fdc3d87b6e4765c7a5db5f7657"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:04 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:09:08 2011 +0100"
      },
      "message": "HID: wiimote: Add extension sysfs attribute\n\nAdd new sysfs attribute \"extension\" which returns the currently connected and\ninitialized extensions.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "492ba955c1f7b8fdc3d87b6e4765c7a5db5f7657",
      "tree": "6b05bf3d6958eef58c59ab9e4f61ae624b34c3ec",
      "parents": [
        "82fb1b39581e7cdd71a6ce3cf12996711a583df2"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:03 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:08:55 2011 +0100"
      },
      "message": "HID: wiimote: Add extension initializers\n\nThe wiimote extension registers are not fully understood, so we always disable\nall extensions on extension-port events. Then we reinitialize and reidentify\nthem and activate all requested extensions.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "82fb1b39581e7cdd71a6ce3cf12996711a583df2",
      "tree": "fa2da049edd46c8ed1866c220581c4e2f2b68f42",
      "parents": [
        "cb99221ba74bb16576a9c3b7e49357b6b12ff3ea"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:02 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:08:40 2011 +0100"
      },
      "message": "HID: wiimote: Add extension initializer stubs\n\nAdd stub functions to read and identify extensions and then initialize all\nconnected extensions.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "cb99221ba74bb16576a9c3b7e49357b6b12ff3ea",
      "tree": "3aee851b0643491ba0208b022c92335e0e9550dd",
      "parents": [
        "fad8c0e34323eb7789f93750258a2cf02dc6cf69"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Nov 17 14:12:01 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 22 23:08:28 2011 +0100"
      },
      "message": "HID: wiimote: Add extension support stub\n\nThe wiimote supports several extensions. This adds a separate source file which\nhandles all extensions and can be disabled at compile-time.\n\nThe driver reacts on \"plug\"-events on the extension port and starts a worker\nwhich initializes or deinitializes the extensions.\n\nCurrently, the initialization logic is not fully understood and we can only\ndetect and enable all extensions when all extensions are deactivated. Therefore,\nwe need to disable all extensions, then detect and activate them again to react\non \"plug\"-events.\nHowever, deactivating extensions will generate a new \"plug\"-event and we will\nnever leave that loop. Hence, we only support extensions if they are plugged\nbefore the wiimote is connected (or before the ext-input device is opened). In\nthe future we may support full extension hotplug support, but\nreverse-engineering this may take a while.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    }
  ]
}
