)]}'
{
  "log": [
    {
      "commit": "20b4fb485227404329e41ad15588afad3df23050",
      "tree": "f3e099f0ab3da8a93b447203e294d2bb22f6dc05",
      "parents": [
        "b9394d8a657cd3c064fa432aa0905c1b58b38fe9",
        "ac3e3c5b1164397656df81b9e9ab4991184d3236"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull VFS updates from Al Viro,\n\nMisc cleanups all over the place, mainly wrt /proc interfaces (switch\ncreate_proc_entry to proc_create(), get rid of the deprecated\ncreate_proc_read_entry() in favor of using proc_create_data() and\nseq_file etc).\n\n7kloc removed.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits)\n  don\u0027t bother with deferred freeing of fdtables\n  proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h\n  proc: Make the PROC_I() and PDE() macros internal to procfs\n  proc: Supply a function to remove a proc entry by PDE\n  take cgroup_open() and cpuset_open() to fs/proc/base.c\n  ppc: Clean up scanlog\n  ppc: Clean up rtas_flash driver somewhat\n  hostap: proc: Use remove_proc_subtree()\n  drm: proc: Use remove_proc_subtree()\n  drm: proc: Use minor-\u003eindex to label things, not PDE-\u003ename\n  drm: Constify drm_proc_list[]\n  zoran: Don\u0027t print proc_dir_entry data in debug\n  reiserfs: Don\u0027t access the proc_dir_entry in r_open(), r_start() r_show()\n  proc: Supply an accessor for getting the data from a PDE\u0027s parent\n  airo: Use remove_proc_subtree()\n  rtl8192u: Don\u0027t need to save device proc dir PDE\n  rtl8187se: Use a dir under /proc/net/r8180/\n  proc: Add proc_mkdir_data()\n  proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}\n  proc: Move PDE_NET() to fs/proc/proc_net.c\n  ...\n"
    },
    {
      "commit": "07dc93dd14957dc1faba08f0aadd27b082e35ba2",
      "tree": "b81c188a4a404bb5bc19d36fa6590244f7e770b2",
      "parents": [
        "faff7f74d2f945527ef92d68e501d9e8adaca750"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Apr 19 10:14:51 2013 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Apr 19 10:31:58 2013 -0300"
      },
      "message": "Bluetooth: Fix HCI command send functions to use const specifier\n\nAll HCI command send functions that take a pointer to the command\nparameters do not need to modify the content in any way (they merely\ncopy the data to an skb). Therefore, the parameter type should be\ndeclared const. This also allows passing already const parameters to\nthese APIs which previously would have generated a compiler warning.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "76a388beaf92cc75b829d4a0b7d69afaaeaa4b0a",
      "tree": "e9c13295505d918b2918e334b1bdf23cbb582a1f",
      "parents": [
        "525e296a28561659d85a63befb694f36e6ec3429"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Thu Apr 04 20:21:02 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 01:17:27 2013 -0300"
      },
      "message": "Bluetooth: Rename LE_SCANNING_* macros\n\nThis patch renames LE_SCANNING_ENABLED and LE_SCANNING_DISABLED\nmacros to LE_SCAN_ENABLE and LE_SCAN_DISABLE in order to keep\nthe same prefix others LE scan macros have.\n\nIt also fixes le_scan_enable_req function so it uses the LE_SCAN_\nENABLE macro instead of a magic number.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "525e296a28561659d85a63befb694f36e6ec3429",
      "tree": "1c4efc907e4dd7bbd9c0f48eedb7bc222e1694d0",
      "parents": [
        "5df480b56e427d83830576862463226c8fcc95d7"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Thu Apr 04 20:21:01 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 01:17:05 2013 -0300"
      },
      "message": "Bluetooth: Add macros for filter duplicates values\n\nThis patch adds macros for filter_duplicates parameter values from\nHCI LE Set Scan Enable command. It also fixes le_scan_enable_req\nfunction so it uses the LE_SCAN_FILTER_DUP_ENABLE macro instead of\na magic number.\n\nThe LE_SCAN_FILTER_DUP_DISABLE was also defined since it will be\nrequired to properly support the GAP Observer Role.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5df480b56e427d83830576862463226c8fcc95d7",
      "tree": "e79dc6f8087391ed22260e385fe4eed36c30cf16",
      "parents": [
        "b6c7515a288485fc638f95d484d8f1dbe1b7f541"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Thu Apr 04 20:21:00 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 01:16:25 2013 -0300"
      },
      "message": "Bluetooth: Add LE scan type macros\n\nThis patch adds macros for active and passive LE scan type values.\nThe LE_SCAN_PASSIVE was also defined since it will be used in future\nby LE connection routine and GAP Observer Role support.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "d2c5d77fff6ac0f43fc36f4fde020f726f773c1d",
      "tree": "17219324bd7af41a4df3edc194f020c80777eab7",
      "parents": [
        "cad718ed2f6fd204b2c5cac6b611fc3fcde7b183"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Apr 17 15:00:52 2013 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 00:26:25 2013 -0300"
      },
      "message": "Bluetooth: Add reading of all local feature pages\n\nWith the introduction of CSA4 there is now also a features page number 2\navailable. This patch increments the maximum supported page number to 2\nand adds code for reading all available pages (as long as we have\nsupport for them - indicated by HCI_MAX_PAGES).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "cad718ed2f6fd204b2c5cac6b611fc3fcde7b183",
      "tree": "3772acb4f9dc18f9a4c5dc4687aeba039eb2a1a0",
      "parents": [
        "fa5513be2b709c8ce6ff0b11d0715760a9a70ffd"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Apr 17 15:00:51 2013 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 00:26:20 2013 -0300"
      },
      "message": "Bluetooth: Track feature pages in a single table\n\nThe local and remote features are organized by page number. Page 0\nare the LMP features, page 1 the host features, and any pages beyond 1\nfeatures that future core specification versions may define. So far\nwe\u0027ve only had the first two pages and two separate variables has been\nconvenient enough, however with the introduction of Core Specification\nAddendum 4 there are features defined on page 2.\n\nInstead of requiring the addition of a new variable each time a new page\nnumber is defined, this patch refactors the code to use a single table\nfor the features. The patch needs to update both the hci_dev and\nhci_conn structures since there are macros that depend on the features\nbeing represented in the same way in both of them.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "fa5513be2b709c8ce6ff0b11d0715760a9a70ffd",
      "tree": "8415b7ab631e06c523133b192849b14dbc5ed233",
      "parents": [
        "bbb0eada826636f658ce49290d2896aead5515f7"
      ],
      "author": {
        "name": "Frédéric Dalleau",
        "email": "frederic.dalleau@linux.intel.com",
        "time": "Tue Apr 16 17:28:58 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 18 00:17:54 2013 -0300"
      },
      "message": "Bluetooth: Move and rename hci_conn_accept\n\nSince this function is only used by sco, move it from hci_event.c to\nsco.c and rename to sco_conn_defer_accept. Make it static.\n\nSigned-off-by: Frédéric Dalleau \u003cfrederic.dalleau@linux.intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2c8e1411e93391c5a78f55b09697a997474a4707",
      "tree": "3881d50853b94b260ba15b09e9c3b07a951fa482",
      "parents": [
        "9c903e373c11f62d62bce1209f662ca92589a075"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:45 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Apr 17 03:03:43 2013 -0300"
      },
      "message": "Bluetooth: l2cap: add l2cap_user sub-modules\n\nSeveral sub-modules like HIDP, rfcomm, ... need to track l2cap\nconnections. The l2cap_conn-\u003ehcon-\u003edev object is used as parent for sysfs\ndevices so the sub-modules need to be notified when the hci_conn object is\nremoved from sysfs.\n\nAs submodules normally use the l2cap layer, the l2cap_user objects are\nregistered there instead of on the underlying hci_conn object. This avoids\nany direct dependency on the HCI layer and lets the l2cap core handle any\nspecifics.\n\nThis patch introduces l2cap_user objects which contain a \"probe\" and\n\"remove\" callback. You can register them on any l2cap_conn object and if\nit is active, the \"probe\" callback will get called. Otherwise, an error is\nreturned.\n\nThe l2cap_conn object will call your \"remove\" callback directly before it\nis removed from user-space. This allows you to remove your submodules\n_before_ the parent l2cap_conn and hci_conn object is removed.\n\nAt any time you can asynchronously unregister your l2cap_user object if\nyour submodule vanishes before the l2cap_conn object does.\n\nThere is no way around l2cap_user. If we want wire-protocols in the\nkernel, we always want the hci_conn object as parent in the sysfs tree. We\ncannot use a channel here since we might need multiple channels for a\nsingle protocol.\nBut the problem is, we _must_ get notified when an l2cap_conn object is\nremoved. We cannot use reference-counting for object-removal! This is not\nhow it works. If a hardware is removed, we should immediately remove the\nobject from sysfs. Any other behavior would be inconsistent with the rest\nof the system. Also note that device_del() might sleep, but it doesn\u0027t\nwait for user-space or block very long. It only _unlinks_ the object from\nsysfs and the whole device-tree. Everything else is handled by ref-counts!\nThis is exactly what the other sub-modules must do: unlink their devices\nwhen the \"remove\" l2cap_user callback is called. They should not do any\ncleanup or synchronous shutdowns.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "9c903e373c11f62d62bce1209f662ca92589a075",
      "tree": "285f6ef70c1e869b7ebd86dcad2a4057ea61134e",
      "parents": [
        "3764eaa922c78037ad9bed06be5c8b8a5c83b37d"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:44 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Apr 17 03:02:10 2013 -0300"
      },
      "message": "Bluetooth: l2cap: introduce l2cap_conn ref-counting\n\nIf we want to use l2cap_conn outside of l2cap_core.c, we need refcounting\nfor these objects. Otherwise, we cannot synchronize l2cap locks with\noutside locks and end up with deadlocks.\n\nHence, introduce ref-counting for l2cap_conn objects. This doesn\u0027t affect\nl2cap internals at all, as they use a direct synchronization.\nWe also keep a reference to the parent hci_conn for locking purposes as\nl2cap_conn depends on this. This doesn\u0027t affect the connection itself but\nonly the lifetime of the (dead) object.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f53c20e93612f708ed3b378ec9735b779dcd7d59",
      "tree": "e25b76d4f0be628626c1d08ff8651ca16b893b9f",
      "parents": [
        "e3492dc3760ceb981a0bb9992c249ba151b6f61d"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:42 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Apr 17 02:56:37 2013 -0300"
      },
      "message": "Bluetooth: allow constant arguments for bacmp()/bacpy()\n\nThere is no reason to require the source arguments to be writeable so fix\nthis to allow constant source addresses.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8d12356f33f819ec0d064e233f7ca8e59eaa38ef",
      "tree": "b976b1efc17d3f9d207212253d6cb5167c6b755c",
      "parents": [
        "fc225c3f5d1b6aa6f99c5c300af4605e4923ce79"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:39 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Apr 17 02:45:22 2013 -0300"
      },
      "message": "Bluetooth: introduce hci_conn ref-counting\n\nWe currently do not allow using hci_conn from outside of HCI-core.\nHowever, several other users could make great use of it. This includes\nHIDP, rfcomm and all other sub-protocols that rely on an active\nconnection.\n\nHence, we now introduce hci_conn ref-counting. We currently never call\nget_device(). put_device() is exclusively used in hci_conn_del_sysfs().\nHence, we currently never have a greater device-refcnt than 1.\nTherefore, it is safe to move the put_device() call from\nhci_conn_del_sysfs() to hci_conn_del() (it\u0027s the only caller). In fact,\nthis even fixes a \"use-after-free\" bug as we access hci_conn after calling\nhci_conn_del_sysfs() in hci_conn_del().\n\nFrom now on we can add references to hci_conn objects in other layers\n(like l2cap_sock, HIDP, rfcomm, ...) and grab a reference via\nhci_conn_get(). This does _not_ guarantee, that the connection is still\nalive. But, this isn\u0027t what we want. We can simply lock the hci_conn\ndevice and use \"device_is_registered(hci_conn-\u003edev)\" to test that.\nHowever, this is hardly necessary as outside users should never rely on\nthe HCI connection to be alive, anyway. Instead, they should solely rely\non the device-object to be available.\nBut if sub-devices want the hci_conn object as sysfs parent, they need to\nbe notified when the connection drops. This will be introduced in later\npatches with l2cap_users.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "fc225c3f5d1b6aa6f99c5c300af4605e4923ce79",
      "tree": "15abcbd5495d423c3634af6b518e1f5ff2c22f84",
      "parents": [
        "93796fa6f21411dab2ce7ba4fd7fd4d4ed4aca2e"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:38 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Apr 17 02:38:36 2013 -0300"
      },
      "message": "Bluetooth: remove unneeded hci_conn_hold/put_device()\n\nhci_conn_hold/put_device() is used to control when hci_conn-\u003edev is no\nlonger needed and can be deleted from the system. Lets first look how they\nare currently used throughout the code (excluding HIDP!).\n\nAll code that uses hci_conn_hold_device() looks like this:\n    ...\n    hci_conn_hold_device();\n    hci_conn_add_sysfs();\n    ...\nOn the other side, hci_conn_put_device() is exclusively used in\nhci_conn_del().\n\nSo, considering that hci_conn_del() must not be called twice (which would\nfail horribly), we know that hci_conn_put_device() is only called _once_\n(which is in hci_conn_del()).\nOn the other hand, hci_conn_add_sysfs() must not be called twice, either\n(it would call device_add twice, which breaks the device, see\ndrivers/base/core.c). So we know that hci_conn_hold_device() is also\ncalled only once (it\u0027s only called directly before hci_conn_add_sysfs()).\n\nSo hold and put are known to be called only once. That means we can safely\nremove them and directly call hci_conn_del_sysfs() in hci_conn_del().\n\nBut there is one issue left: HIDP also uses hci_conn_hold/put_device().\nHowever, this case can be ignored and simply removed as it is totally\nbroken. The issue is, the only thing HIDP delays with\nhci_conn_hold_device() is the removal of the hci_conn-\u003edev from sysfs.\nBut, the hci_conn device has no mechanism to get notified when its own\nparent (hci_dev) gets removed from sysfs. hci_dev_hold/put() does _not_\ncontrol when it is removed but only when the device object is created\nand destroyed.\nAnd hci_dev calls hci_conn_flush_*() when it removes itself from sysfs,\nwhich itself causes hci_conn_del() to be called, but it does _not_ cause\nhci_conn_del_sysfs() to be called, which is wrong.\n\nHence, we fix it to call hci_conn_del_sysfs() in hci_conn_del(). This\nguarantees that a hci_conn object is removed from sysfs _before_ its\nparent hci_dev is removed.\n\nThe changes to HIDP look scary, wrong and broken. However, if you look at\nthe HIDP session management, you will notice they\u0027re already broken in the\nexact _same_ way (ever tried \"unplugging\" HIDP devices? Breaks _all_ the\ntime).\nSo this patch only makes HIDP look _scary_ and _obviously broken_. It does\nnot break HIDP itself, it already is!\n\nSee later patches in this series which fix HIDP to use proper\nsession-management.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "76a68ba0ae097be72dfa8f918b3139130da769a4",
      "tree": "4a24ee83a895cfe49a23042989949e8b20d16deb",
      "parents": [
        "9f8f962c85461324d18dcb2b1b94a932494d2cc5"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sat Apr 06 20:28:37 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Apr 11 16:34:15 2013 -0300"
      },
      "message": "Bluetooth: rename hci_conn_put to hci_conn_drop\n\nWe use _get() and _put() for device ref-counting in the kernel. However,\nhci_conn_put() is _not_ used for ref-counting, hence, rename it to\nhci_conn_drop() so we can later fix ref-counting and introduce\nhci_conn_put().\n\nhci_conn_hold() and hci_conn_put() are currently used to manage how long a\nconnection should be held alive. When the last user drops the connection,\nwe spawn a delayed work that performs the disconnect. Obviously, this has\nnothing to do with ref-counting for the _object_ but rather for the\nkeep-alive of the connection.\n\nBut we really _need_ proper ref-counting for the _object_ to allow\nconnection-users like rfcomm-tty, HIDP or others.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "c10c062cadf527c3e072f01280d266fbbc592f9d",
      "tree": "e9690370bd156825e531f9c9478a7bc1b1f28d88",
      "parents": [
        "4d006263d3d61413e63784a454b6e3310bd8e6ee"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Apr 04 19:18:04 2013 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Apr 09 14:13:37 2013 -0400"
      },
      "message": "bluetooth: kill unused fops field in struct bt_sock_list\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b03166152f6da91cec8b66837b309dd3923ea536",
      "tree": "a749acffe925a9e595e6ff04e2c41d6f70f745bb",
      "parents": [
        "14805359c790977199e0d74fe689c2c17e6a0954"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Apr 04 19:14:33 2013 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Apr 09 14:13:36 2013 -0400"
      },
      "message": "bluetooth: kill unused \u0027module\u0027 argument of bt_procfs_init()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b3916db32c4a3124eee9f3742a2f4723731d7602",
      "tree": "342531410aa6985decfc173e3bf892d7b4ec47e8",
      "parents": [
        "c849edbdc2fc3a9ba37ae6810d7a1e2c92b302d7"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Fri Apr 05 14:57:34 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Apr 05 23:44:14 2013 -0300"
      },
      "message": "Bluetooth: hidp: verify l2cap sockets\n\nWe need to verify that the given sockets actually are l2cap sockets. If\nthey aren\u0027t, we are not supposed to access bt_sk(sock) and we shouldn\u0027t\nstart the session if the offsets turn out to be valid local BT addresses.\n\nThat is, if someone passes a TCP socket to HIDCONNADD, then we access some\nrandom offset in the TCP socket (which isn\u0027t even guaranteed to be valid).\n\nFix this by checking that the socket is an l2cap socket.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5afff03815e26abf34702ec10422535224cdfe38",
      "tree": "98d2a696ba11a7d3d15c5d227b98703eb77de7c3",
      "parents": [
        "936009976497e1e123f3223bedca25312ee20f08"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Nov 12 14:02:16 2012 +0900"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:28:25 2013 +0300"
      },
      "message": "Bluetooth: Remove driver init queue from core\n\nThe driver init queue is no longer needed. This can be all handled\ninside the drivers now. So remove it.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "f41c70c4d5e3f6c2a7f9e5dfc10af452591a2484",
      "tree": "3b1f92c46f4d9a8b3adc38c8be460f75cf1903ff",
      "parents": [
        "7b1abbbed0f2a1bc19bb8c0d48a284466043092a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Nov 12 14:02:14 2012 +0900"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:16:12 2013 +0300"
      },
      "message": "Bluetooth: Add driver setup stage for early init\n\nSome drivers require a special stage for their early init. This is\nalways specific to the driver or transport. So call back into driver to\nallow bringing up the device.\n\nThe advantage with this stage is that the Bluetooth core is actually\nhandling the HCI layer now. This means that command and event processing\nis available.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "7b1abbbed0f2a1bc19bb8c0d48a284466043092a",
      "tree": "2f79924c7a5dc4c128a9a8c45fa4671c062a0efe",
      "parents": [
        "02350a725f5bc44490c30a10e7e04a12a5ecd406"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Apr 03 21:54:47 2013 +0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:16:10 2013 +0300"
      },
      "message": "Bluetooth: Add __hci_cmd_sync_ev function\n\nThis patch adds a __hci_cmd_sync_ev function, analogous to\n__hci_cmd_sync except that it also takes an event parameter to indicate\nthat the command completes with a special event instead of command\ncomplete. Internally this new function takes advantage of the\nhci_req_add_ev function introduced in the previous patch.\n\nThe primary expected user of this new function are the setup routines of\nHCI drivers which may want to send custom commands and return only when\nthey have completed.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "02350a725f5bc44490c30a10e7e04a12a5ecd406",
      "tree": "243d09f74edf36d79d50db5d470d340c733f38b1",
      "parents": [
        "75e84b7c522c6e07964cd1f5bf28535768a1e9fa"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Apr 03 21:50:29 2013 +0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:16:08 2013 +0300"
      },
      "message": "Bluetooth: Add support for custom event terminated commands\n\nThis patch adds support for having commands within HCI requests that do\nnot result in a command complete but some other event. This is at least\nneeded for some vendor specific commands to be issued in the\nhdev-\u003esetup() procecure, but might also be useful for other commands.\n\nThe way that the support is implemented is by extending the skb control\nbuffer to have a field to indicate that the command is expected to\nterminate with a special event. After sending the command each received\nevent can then be compared against this field through hdev-\u003esent_cmd.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "75e84b7c522c6e07964cd1f5bf28535768a1e9fa",
      "tree": "f446f05dddbc3fff7f9345ac524239f4e7d19baf",
      "parents": [
        "b6ddb638235d90ed67af9af40e63880fd66a1939"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Apr 02 13:35:04 2013 +0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:16:06 2013 +0300"
      },
      "message": "Bluetooth: Add __hci_cmd_sync() helper function\n\nThis patch adds a helper function for sending a single HCI command\nwaiting for its completion and then returning back the parameters in the\nresulting command complete event (if there was one).\n\nThe implementation is very similar to that of hci_req_sync() except that\ninstead of invocing a callback for sending HCI commands the function\nconstructs and sends one itself and after being woken up picks the last\nreceived event from hdev-\u003erecv_evt (if it matches the right criteria)\nand returns it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b6ddb638235d90ed67af9af40e63880fd66a1939",
      "tree": "acb90fd3ac15d2e879a2f1df5a5992b9c3d40afd",
      "parents": [
        "1687dfc3dcecd7f22f60461b562b9ae3171eb93e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Apr 02 13:34:31 2013 +0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 19:16:04 2013 +0300"
      },
      "message": "Bluetooth: Track received events in hdev\n\nThis patch adds tracking of received HCI events to the hci_dev struct.\nThis is necessary so that a subsequent patch can implement a function\nfor sending a single command synchronously and returning the resulting\ncommand complete parameters in the function return value.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d4299ce6b33c0afd22cf6a170cfaf89c63d1114d",
      "tree": "f8b1671ea0ccd1173c31f866875c82c431f26381",
      "parents": [
        "3e13fa1e1fab479940728272b6425d343e0c0f84"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Wed Mar 27 20:04:57 2013 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Apr 04 11:12:34 2013 +0300"
      },
      "message": "Bluetooth: Remove unneeded hci_req_cmd_status function\n\nThis patch removes the hci_req_cmd_status function since it is not\nused anymore. The HCI request framework now considers the HCI command\nhas complete once the Command Status or Command Complete Event is\nreceived.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "f332ec6699980e0563408c7bcf1a8a31b825fee1",
      "tree": "3d27ea4481fb2be74c349d6070b9e089fe440e31",
      "parents": [
        "e36a37691e53b54edb78209757fab0dd76c4614f"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 15 17:07:11 2013 -0500"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Mar 18 15:35:02 2013 -0300"
      },
      "message": "Bluetooth: Add reading of page scan parameters\n\nThese parameters are related to the \"fast connectable\" mode that can be\nchanged through the mgmt interface. Not all controllers properly reset\nthese values with HCI_Reset so they need to be read in order to be able\nto verify whether the values are correct or not before enabling page\nscan.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "1a4d3c4b3750885733641216756de4e4d9b2443a",
      "tree": "7238a7a9a1b898e40f15f66cc71386d15ab8fb74",
      "parents": [
        "05cbf29f84f2cf17554b58a3ab4a0ac46d52eca6"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 15 17:07:08 2013 -0500"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Mar 18 14:02:08 2013 -0300"
      },
      "message": "Bluetooth: Add proper flag for fast connectable mode\n\nIn order to be able to represent fast connectable mode in the mgmt\nsettings we need to have a HCI dev flag for it. This patch adds the flag\nand makes sure its value is changed whenever a mgmt_set_fast_connectable\ncommand completes.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "04b4edcbc9049e100681c0149b572de439be42ab",
      "tree": "9256c6de723509d3df7b1ae5bc7f24302963e399",
      "parents": [
        "13928971396fb5ad022ec65f694cea367ca48504"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 15 17:07:01 2013 -0500"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Mar 18 14:02:04 2013 -0300"
      },
      "message": "Bluetooth: Handle AD updating through an async request\n\nFor proper control of the AD update and the related HCI commands it\u0027s\nbest to run the AD update through an async request instead of a\nstandalone HCI command. This patch changes the hci_update_ad() function\nto take a request pointer and updates its users appropriately. E.g. the\nfunction is no longer called after the init sequence but during stage 3\nof the init sequence.\n\nThe TX power is read during the init sequence, so we don\u0027t need an\nexplicit update whenever it is read and the AD update based on the local\nname should be done through the local name mgmt handler. The only other\nuser is the update based on enabling advertising. This part is still\nkept as there is no mgmt API to enable it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2cc6fb0049bc02ca7a020ba7b4f88b4c35976058",
      "tree": "7409818813401d2ec66ecbc73cb4b7b42f5c78f1",
      "parents": [
        "2908fe31cf6b8d3a975efb567347f85e724f4e81"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 15 17:06:57 2013 -0500"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Mar 18 14:02:02 2013 -0300"
      },
      "message": "Bluetooth: Add a define for the HCI persistent flags mask\n\nWe\u0027ll need to use this mask also when powering off the HCI device\nso it\u0027s better to have this in a single and visible place.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2908fe31cf6b8d3a975efb567347f85e724f4e81",
      "tree": "81ddf20af1ba117b65e064a6b682186503026cbc",
      "parents": [
        "92da609750e75d5f46e809fd42e0cace61f6f4d5"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 15 17:06:56 2013 -0500"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Mar 18 14:02:01 2013 -0300"
      },
      "message": "Bluetooth: Remove useless HCI_PENDING_CLASS flag\n\nNow that class related operations are tracked through asynchronous HCI\nrequests this flag is no longer needed.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "e348fe6bbab85c513816d2536ffabac4be016442",
      "tree": "24a4ec5bbb40b56012e0ef0414de61f5b977ca6d",
      "parents": [
        "5d73e0342fd9bf500583868906325d42c4d2bf6f"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Mar 08 11:20:17 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Sat Mar 09 17:11:23 2013 -0300"
      },
      "message": "Bluetooth: Make hci_req_add returning void\n\nSince no one checks the returning value of hci_req_add and HCI\nrequest errors are now handled in hci_req_run, we can make hci_\nreq_add returning void.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5d73e0342fd9bf500583868906325d42c4d2bf6f",
      "tree": "bc438120341f687ff2cd9d6337f59459b1afd6a8",
      "parents": [
        "920c8300c66566afbf92311152c6e462a310203e"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Mar 08 11:20:16 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Sat Mar 09 17:10:47 2013 -0300"
      },
      "message": "Bluetooth: HCI request error handling\n\nWhen we are building a HCI request with more than one HCI command\nand one of the hci_req_add calls fail, we should have some cleanup\nroutine so the HCI commands already queued on HCI request can be\ndeleted. Otherwise, we will face some memory leaks issues.\n\nThis patch implements the HCI request error handling which is the\nfollowing: If a hci_req_add fails, we save the error code in hci_\nrequest. Once hci_req_run is called, we verify the error field. If\nit is different from zero, we delete all HCI commands already queued\nand return the error code.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "cecbb967b2f5c52e090978ff6afe7deddbfbeda5",
      "tree": "7e43e45b1b6cd8d94d708c3f3fdd764dbaea1236",
      "parents": [
        "42c6b129cd8c2aa5012a78ec39672e7052cc677a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Mar 05 20:37:50 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:27 2013 -0300"
      },
      "message": "Bluetooth: Remove unused hdev-\u003einit_last_cmd\n\nThis variable is no longer needed (due to async HCI request support and\nthe conversion of hci_req_sync to use it), so it can be safely removed.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "42c6b129cd8c2aa5012a78ec39672e7052cc677a",
      "tree": "9deac79fe2bac41bf7695c0be6ec151f2afc55eb",
      "parents": [
        "9238f36a5a5097018b90baa42c473d2f916a46f5"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Mar 05 20:37:49 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:27 2013 -0300"
      },
      "message": "Bluetooth: Use async requests internally in hci_req_sync\n\nThis patch converts the hci_req_sync() procedure to internaly use the\nasynchronous HCI requests.\n\nThe hci_req_sync mechanism relies on hci_req_complete() calls from\nhci_event.c into hci_core.c whenever a HCI command completes. This is\nvery similar to what asynchronous requests do and makes the conversion\nfairly straight forward by converting hci_req_complete into a request\ncomplete callback. By this change hci_req_complete (renamed to\nhci_req_sync_complete) becomes private to hci_core.c and all calls to it\ncan be removed from hci_event.c.\n\nThe commands in each hci_req_sync procedure are collected into their own\nrequest by passing the hci_request pointer to the request callback\n(instead of the hci_dev pointer). The one slight exception is the HCI\ninit request which has the special handling of HCI driver specific\ninitialization commands. These commands are run in their own request\nprior to the \"main\" init request.\n\nOne other extra change that this patch must contain is the handling of\nspontaneous HCI reset complete events that some controllers exhibit.\nThese were previously handled in the hci_req_complete function but the\nright place for them now becomes the hci_req_cmd_complete function.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "9238f36a5a5097018b90baa42c473d2f916a46f5",
      "tree": "304714fec2ecc9cacea615da399e8f09453f17e8",
      "parents": [
        "11714b3d7acee54eecf85d41c938923a02fdd054"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Mar 05 20:37:48 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:26 2013 -0300"
      },
      "message": "Bluetooth: Add request cmd_complete and cmd_status functions\n\nThis patch introduces functions to process the HCI request state when\nreceiving HCI Command Status or Command Complete events. Some HCI\ncommands, like Inquiry do not result in a Command complete event so\nspecial handling is needed for them. Inquiry is a particularly important\none since it is the only forseeable \"non-cmd_complete\" command that will\nmake good use of the request functionality, and its completion is either\nindicated by an Inquiry Complete event of a successful Command Complete\nfor HCI_Inquiry_Cancel.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "71c76a170e979d60e01bd093c9b79e3adeb710cc",
      "tree": "cf213b5b1565f383bef766576a5dd001f75bb437",
      "parents": [
        "1ca3a9d06e87e09d2f852397f1fbf7c442c921b5"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Mar 05 20:37:46 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:26 2013 -0300"
      },
      "message": "Bluetooth: Introduce new hci_req_add function\n\nThis function is analogous to hci_send_cmd() but instead of directly\nqueuing the command to hdev-\u003ecmd_q it adds it to the local queue of the\nasynchronous HCI request being build (inside struct hci_request).\n\nThis is the main function used for building asynchronous requests and\nthere should be one or more calls to it between calls to hci_req_init\nand hci_req_run.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "3119ae9599e5cdc1b9838563905c500b582ab6a5",
      "tree": "8be29a020c0b6082f05bb16a2cdd7e621fd118cf",
      "parents": [
        "2177bab507d2715ae3b745f47056eacd38b79fa7"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Mar 05 20:37:44 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:26 2013 -0300"
      },
      "message": "Bluetooth: Add initial skeleton for asynchronous HCI requests\n\nThis patch adds the initial definitions and functions for asynchronous\nHCI requests. Asynchronous requests are essentially a group of HCI\ncommands together with an optional completion callback. The request is\ntracked through the already existing command queue by having the\nnecessary context information as part of the control buffer of each skb.\n\nThe only information needed in the skb control buffer is a flag for\nindicating that the skb is the start of a request as well as the\noptional complete callback that should be used when the request is\ncomplete (this will be found in the last skb of the request).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "08c30aca9e698faddebd34f81e1196295f9dc063",
      "tree": "215dac88431b85b1f30cb72adf7178a930ad8487",
      "parents": [
        "8ff52f7d04d9cc31f1e81dcf9a2ba6335ed34905"
      ],
      "author": {
        "name": "Dean Jenkins",
        "email": "Dean_Jenkins@mentor.com",
        "time": "Thu Feb 28 14:21:56 2013 +0000"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:24 2013 -0300"
      },
      "message": "Bluetooth: Remove RFCOMM session refcnt\n\nPrevious commits have improved the handling of the RFCOMM session\ntimer and the RFCOMM session pointers such that freed RFCOMM\nsession structures should no longer be erroneously accessed. The\nRFCOMM session refcnt now has no purpose and will be deleted by\nthis commit.\n\nNote that the RFCOMM session is now deleted as soon as the\nRFCOMM control channel link is no longer required. This makes the\nlifetime of the RFCOMM session deterministic and absolute.\nPreviously with the refcnt, there was uncertainty about when\nthe session structure would be deleted because the relative\nrefcnt prevented the session structure from being deleted at will.\n\nIt was noted that the refcnt could malfunction under very heavy\nreal-time processor loading in embedded SMP environments. This\ncould cause premature RFCOMM session deletion or double session\ndeletion that could result in kernel crashes. Removal of the\nrefcnt prevents this issue.\n\nThere are 4 connection / disconnection RFCOMM session scenarios:\nhost initiated control link ---\u003e host disconnected control link\nhost initiated ctrl link ---\u003e remote device disconnected ctrl link\nremote device initiated ctrl link ---\u003e host disconnected ctrl link\nremote device initiated ctrl link ---\u003e remote device disc\u0027ed ctrl link\n\nThe control channel connection procedures are independent of the\ndisconnection procedures. Strangely, the RFCOMM session refcnt was\napplying special treatment so erroneously combining connection and\ndisconnection events. This commit fixes this issue by removing\nsome session code that used the \"initiator\" member of the session\nstructure that was intended for use with the data channels.\n\nSigned-off-by: Dean Jenkins \u003cDean_Jenkins@mentor.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8ff52f7d04d9cc31f1e81dcf9a2ba6335ed34905",
      "tree": "681a2468209aff5c83cd7c3bafe1eb6c38123c63",
      "parents": [
        "c06f7d532aa6f78b2847e3b651c0da27fc3296c0"
      ],
      "author": {
        "name": "Dean Jenkins",
        "email": "Dean_Jenkins@mentor.com",
        "time": "Thu Feb 28 14:21:55 2013 +0000"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:40:24 2013 -0300"
      },
      "message": "Bluetooth: Return RFCOMM session ptrs to avoid freed session\n\nUnfortunately, the design retains local copies of the s RFCOMM\nsession pointer in various code blocks and this invites the erroneous\naccess to a freed RFCOMM session structure.\n\nTherefore, return the RFCOMM session pointer back up the call stack\nto avoid accessing a freed RFCOMM session structure. When the RFCOMM\nsession is deleted, NULL is passed up the call stack.\n\nIf active DLCs exist when the rfcomm session is terminating,\navoid a memory leak of rfcomm_dlc structures by ensuring that\nrfcomm_session_close() is used instead of rfcomm_session_del().\n\nSigned-off-by: Dean Jenkins \u003cDean_Jenkins@mentor.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "be9f97f04565a6c438b7521ad679870d25645475",
      "tree": "1c7af296484f24eb1350a8b7989a18a2d6adfdc7",
      "parents": [
        "5e9d7f868f04106139a58212b860dcdc268ad3af"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@gmail.com",
        "time": "Sun Feb 24 19:36:52 2013 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:38:44 2013 -0300"
      },
      "message": "Bluetooth: change bt_sock_unregister() to return void\n\nThere is no reason a caller ever wants to check the return type of this\ncall. _Iff_ a user successfully called bt_sock_register(), they\u0027re allowed\nto call bt_sock_unregister().\nAll other calls in the kernel (device_del, device_unregister, kfree(), ..)\nthat are logically equivalent return void. Lets not make callers think\nthey have to check the return type of this call and instead simply return\nvoid.\n\nWe guarantee that after bt_sock_unregister() is called, the socket type\n_is_ unregistered. If that is not what the caller wants, they\u0027re using the\nwrong function, anyway.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@gmail.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "bed71748346ae0807c7f7a2913965508dbd61403",
      "tree": "2919c16c4f880a6a60d5896e9b7a50026f0b96c2",
      "parents": [
        "7da060c1c01b103d181dba39bce9bd141a945f99"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Wed Jan 30 11:50:56 2013 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Mar 08 10:38:43 2013 -0300"
      },
      "message": "Bluetooth: Rename hci_acl_disconn\n\nAs hci_acl_disconn function basically sends the HCI Disconnect Command\nand it is used to disconnect ACL, SCO and LE links, renaming it to\nhci_disconnect is more suitable.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "83be8eca2e67faaec45280224b798828bbfa69aa",
      "tree": "ee0d4782e5270dc3812c9ece825545b88bcbb14b",
      "parents": [
        "4821002ce2baa130666c2d777e0ed30bee6c7702"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Jan 27 00:31:29 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Feb 01 15:50:17 2013 -0200"
      },
      "message": "Bluetooth: Keep track of UUID type upon addition\n\nThe primary purpose of the UUIDs is to enable generation of EIR and AD\ndata. In these data formats the UUIDs are split into separate fields\nbased on whether they\u0027re 16, 32 or 128 bit UUIDs. To make the generation\nof these data fields simpler this patch adds a type member to the\nbt_uuid struct and assigns a value to it as soon as the UUID is added to\nthe kernel. This way the type doesn\u0027t need to be calculated each time\nthe UUID list is later iterated.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "9b008c0457e583e10e62d1215bed6ab26ee54906",
      "tree": "f608bfbee267282ce104601523e2a655ce2945db",
      "parents": [
        "cf1d081f6597a45e5ff63f55c893494a8ae1cdaf"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Jan 22 14:02:01 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 23 02:09:16 2013 -0200"
      },
      "message": "Bluetooth: Add support for reading LE supported states\n\nThe LE supported states indicate the states and state combinations that\nthe link layer supports. This is important information for knowing what\noperations are possible when dealing with multiple connected devices.\nThis patch adds reading of the supported states to the HCI init\nsequence.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "cf1d081f6597a45e5ff63f55c893494a8ae1cdaf",
      "tree": "5112451c53e886ec798c9967c3db67224d5aeb78",
      "parents": [
        "60e77321985ab599fac010afdc465c3e30281a06"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Jan 22 14:02:00 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 23 02:08:43 2013 -0200"
      },
      "message": "Bluetooth: Add support for reading LE White List Size\n\nThe LE White List Size is necessary to be known before attempting to\nfeed the controller with any addresses intended for the white list. This\npatch adds the necessary HCI command sending to the HCI init sequence.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "60e77321985ab599fac010afdc465c3e30281a06",
      "tree": "bc4f479a21e72472e10750f0466940672f690fa8",
      "parents": [
        "5d0846d416a6c8b7fda1b24aa7369818a7dfa00e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Jan 22 14:01:59 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 23 02:08:18 2013 -0200"
      },
      "message": "Bluetooth: Add LE Local Features reading support\n\nTo be able to make the appropriate decisions for some LE procedures we\nneed to know the LE features that the local controller supports.\nTherefore, it\u0027s important to have the LE Read Local Supported Features\nHCI comand as part of the HCI init sequence.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "679efe2b4fcbe575bc4c94c410039e35c169bfb6",
      "tree": "7a7f022a3f62e38398cd2cedca276e1701aeeb5b",
      "parents": [
        "44b20d33962a73ca14b934540e9168e0da1b49ab"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Jan 20 14:27:18 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 23 01:58:08 2013 -0200"
      },
      "message": "Bluetooth: Add helper functions for testing bdaddr types\n\nThis patch adds two helper functions to test for valid bdaddr type\nvalues. These will be particularely useful in the mgmt code to check\nthat user space has passed valid values to the kernel.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "6ead1bbc381a674c20f227dbe6f3a8c6f67ce7a2",
      "tree": "d7b1a11d2a20c8d36bb9ce39467cecbc7735a640",
      "parents": [
        "52e0b011e29f36bc5c02ea3adbf4d864a38373de"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Jan 14 22:33:50 2013 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Jan 18 02:54:21 2013 -0200"
      },
      "message": "Bluetooth: Add a new workqueue for hci_request operations\n\nThe hci_request function is blocking and cannot be called through the\nusual per-HCI device workqueue (hdev-\u003eworkqueue). While hci_request is\nin progress any other work from the queue, including sending HCI\ncommands to the controller would be blocked and eventually cause the\nhci_request call to time out.\n\nThis patch adds a second workqueue to be used by operations needing\nhci_request and thereby avoiding issues with blocking other workqueue\nusers.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "cb6801c640c759fe02c812728c2661bd8ba5a302",
      "tree": "41a0c3980eb805049de1cbc654a90284131a1b98",
      "parents": [
        "cbf54ad104cb2ec6f5734d95be1dc783bea0343b"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Dec 07 14:59:08 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 09 17:05:05 2013 -0200"
      },
      "message": "Bluetooth: AMP: Use set_bit / test_bit for amp_mgr state\n\nUsing bit operations solves problems with multiple requests\nand clearing state.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8e05e3ba88adcf7ac644e6ef26676ea7c048a08c",
      "tree": "9116603c2b9ca6b10b3cbb00001a4f1ee04ef62c",
      "parents": [
        "7952861f4a8d67b6624b2e6c92cd63bd11a332ce"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Dec 07 14:59:05 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 09 17:05:05 2013 -0200"
      },
      "message": "Bluetooth: AMP: Send A2MP Create Phylink Rsp after Assoc write\n\nPostpone sending A2MP Create Phylink Response until we got successful\nHCI Command Complete after HCI Write Remote AMP Assoc.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "7952861f4a8d67b6624b2e6c92cd63bd11a332ce",
      "tree": "8b865da4a92b82f88cd1ac417d99d2cc494fb8fa",
      "parents": [
        "d6b67c6c0c54c1b18507c15cf1667a362959a0d3"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Tue Dec 18 11:48:01 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Jan 09 17:05:05 2013 -0200"
      },
      "message": "Bluetooth: remove an unused variable in a header file\n\nThis patch removes srej_queue_next from include/net/bluetooth/l2cap.h as it\nis not used.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f2592d3ee3c5817981f343b90bfb9c5612f38d23",
      "tree": "601750911506d8e05b1e2e0c9d9609b6e6c5d5e1",
      "parents": [
        "cbabee788ff881b87bbaf258caf080b49a61fa43"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Nov 29 17:46:08 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Dec 03 16:00:01 2012 -0200"
      },
      "message": "Bluetooth: trivial: Change NO_FCS_RECV to RECV_NO_FCS\n\nMake code more readable by changing CONF_NO_FCS_RECV which is read\nas \"No L2CAP FCS option received\" to CONF_RECV_NO_FCS which means\n\"Received L2CAP option NO_FCS\". This flag really means that we have\nreceived L2CAP FRAME CHECK SEQUENCE (FCS) OPTION with value \"No FCS\".\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5d05416e0907b0dd30b62b002bed3b85e6efbd61",
      "tree": "8ee7c46ae2533c168a63e9e1ea10980168c06a2c",
      "parents": [
        "ced5c338d7b696021058c23fb6a286def2171df5"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Nov 29 17:46:05 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Dec 03 16:00:00 2012 -0200"
      },
      "message": "Bluetooth: AMP: Check that AMP is present and active\n\nBefore starting quering remote AMP controllers make sure\nthat there is local active AMP controller.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "ffa88e02bc67a1496fae762ad899e8f49136e7a1",
      "tree": "19ccfa6766bea3adc5d9cbfe9f903e4299e18ef4",
      "parents": [
        "20714bfef84d3e690c9c6f8e9cd46543b5ae1eed"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Nov 23 16:50:51 2012 -0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Dec 03 15:59:59 2012 -0200"
      },
      "message": "Bluetooth: Move double negation to macros\n\nSome comparisons needs to double negation(!!) in order to make the value\nof the field boolean. Add it to the macro makes the code more readable.\n\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "20714bfef84d3e690c9c6f8e9cd46543b5ae1eed",
      "tree": "aa1ac5c6a0b959382ed2c6a2be52b45414d4cf08",
      "parents": [
        "b96e9c671b05f95126753a22145d4509d45ca197"
      ],
      "author": {
        "name": "Frédéric Dalleau",
        "email": "frederic.dalleau@linux.intel.com",
        "time": "Wed Nov 21 10:51:12 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Dec 03 15:59:58 2012 -0200"
      },
      "message": "Bluetooth: Implement deferred sco socket setup\n\nIn order to authenticate and configure an incoming SCO connection, the\nBT_DEFER_SETUP option was added. This option is intended to defer reply\nto Connect Request on SCO sockets.\nWhen a connection is requested, the listening socket is unblocked but\nthe effective connection setup happens only on first recv. Any send\nbetween accept and recv fails with -ENOTCONN.\n\nSigned-off-by: Frédéric Dalleau \u003cfrederic.dalleau@linux.intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "d1244adc4281eb983a7f41b753164233a7b16b55",
      "tree": "c288608aeb434adf543a9d025393de8ff42d2c3c",
      "parents": [
        "1ee3ff6110c16acfc915a79b1e3feb5013c41e75"
      ],
      "author": {
        "name": "Szymon Janc",
        "email": "szymon.janc@tieto.com",
        "time": "Mon Nov 12 11:01:05 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Nov 19 19:54:38 2012 -0200"
      },
      "message": "Bluetooth: Increase HCI command tx timeout\n\nRead Local OOB Data command can take more than 1 second on some chips.\ne.g. on CSR 0a12:0001 first call to Read Local OOB Data after reset\ntakes about 1300ms resulting in tx timeout error.\n\n[27698.368655] Bluetooth: hci0 command 0x0c57 tx timeout\n\n2012-10-31 15:53:36.178585 \u003c HCI Command: Read Local OOB Data (0x03|0x0057) plen 0\n2012-10-31 15:53:37.496996 \u003e HCI Event: Command Complete (0x0e) plen 36\n    Read Local OOB Data (0x03|0x0057) ncmd 1\n    status 0x00\n    hash 0x92219d9b447f2aa9dc12dda2ae7bae6a\n    randomizer 0xb1948d0febe4ea38ce85c4e66313beba\n\nSigned-off-by: Szymon Janc \u003cszymon.janc@tieto.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "a514b17fab51c1433db920d76cf8ddda959e5da0",
      "tree": "aedaf1cdddec615c2938813b57c7e5fc18c9199a",
      "parents": [
        "522db70286fcce420e5fc1be107912fbd3806323"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Nov 14 17:39:30 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Nov 19 19:30:00 2012 -0200"
      },
      "message": "Bluetooth: Refactor locking in amp_physical_cfm\n\nRemove locking from l2cap_physical_cfm and lock chan inside\namp_physical_cfm.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "c1d5dc4ac15be45c7061e207f06ad8dfba0c2170",
      "tree": "5d5cca115c893e3ecf7f6839ebc3346a4db64523",
      "parents": [
        "3f0f524bafcd2025c12e215f13207c7be0a13bf9"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Nov 08 01:23:01 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Sun Nov 18 23:03:01 2012 -0200"
      },
      "message": "Bluetooth: Fix updating advertising state flags and data\n\nThis patch adds a callback for the HCI_LE_Set_Advertise_Enable command.\nThe callback is responsible for updating the HCI_LE_PERIPHERAL flag\nupdating as well as updating the advertising data flags field to\nindicate undirected connectable advertising.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "3f0f524bafcd2025c12e215f13207c7be0a13bf9",
      "tree": "0938ee73420e34e3753f344d3a3e8927db57f672",
      "parents": [
        "bbaf444a89dd7dd7effd8ed2f4e4ec64da3cc1da"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Nov 08 01:23:00 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Sun Nov 18 23:03:01 2012 -0200"
      },
      "message": "Bluetooth: Add support for setting LE advertising data\n\nThis patch adds support for setting basing LE advertising data. The\nthree elements supported for now are the advertising flags, the TX power\nand the friendly name.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "bbaf444a89dd7dd7effd8ed2f4e4ec64da3cc1da",
      "tree": "cc265122c83264b509353adad12d6dfe917f27c5",
      "parents": [
        "57527f8d4d71b5167a02fb6713857f55d3974748"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Nov 08 01:22:59 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Sun Nov 18 23:03:00 2012 -0200"
      },
      "message": "Bluetooth: Use proper invalid value for tx_power\n\nThe core specification defines 127 as the \"not available\" value (well,\n\"reserved\" for BR/EDR and \"not available\" for LE - but essentially the\nsame). Therefore, instead of testing for 0 (which is in fact a valid\nvalue) we should be using this invalid value to test if the tx_power is\navailable.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "0c0afedf55ff409be9db0b0aeeaa1c6fe0f3cd3c",
      "tree": "d631548f1699815689ed4490d980a2b1eca41e4f",
      "parents": [
        "fffadc08ebf1f4c61bb8f9be0f1d8c3c053d815f"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Nov 01 13:27:26 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:11 2012 -0200"
      },
      "message": "Bluetooth: Fix parameter order of hci_get_route\n\nThe actual parameter order of hci_get_route is (dst, src) and not (src,\ndst). All current callers use the right order but the header file shows\nthe parameters in the wrong order.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "fffadc08ebf1f4c61bb8f9be0f1d8c3c053d815f",
      "tree": "4669ea95e47533e8b39b0546daf0df7c325cae3e",
      "parents": [
        "6e1df6a60372b6ea00c480c1cd8c8c8134357d89"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Nov 01 15:37:03 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:11 2012 -0200"
      },
      "message": "Bluetooth: Rename ctrl_id to remote_amp_id\n\nSince we have started to use local_amp_id for local AMP\nController Id it makes sense to rename ctrl_id to remote_amp_id\nsince it represents remote AMP controller Id.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "cf70ff220a918b25d383510f913de52308d04bb2",
      "tree": "61bfa3a91d7e09480c08e4b3431adf88db36875f",
      "parents": [
        "f351bc72676e2666543511558215fe3c95d4336f"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 31 15:46:36 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:10 2012 -0200"
      },
      "message": "Bluetooth: AMP: Use l2cap_physical_cfm in phylink complete evt\n\nWhen receiving HCI Phylink Complete event run amp_physical_cfm\nwhich initialize BR/EDR L2CAP channel associated with High Speed\nlink and run l2cap_physical_cfm which shall send L2CAP Create\nChan Request.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "419e08c1121ab346bf5f66fe0a21950529355cee",
      "tree": "b6cae064f3d8dc9f5be29ced705caae341b956a9",
      "parents": [
        "e58917b990ef0cc3903aa962236a0dae4f1f81a0"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 31 15:46:34 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:09 2012 -0200"
      },
      "message": "Bluetooth: Disconnect logical link when deleting chan\n\nDisconnect logical link for high speed channel hs_hchan\nassociated with L2CAP channel chan.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "606e2a10a6d23e900dad0b098a09438a5f7e0495",
      "tree": "9439603f4a6a2c238828e661ccbc889984ebcb3a",
      "parents": [
        "5ce66b59d787478f57a6f3368ff23d75a06e76e2"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 31 15:46:31 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:07 2012 -0200"
      },
      "message": "Bluetooth: AMP: Process Disc Logical Link\n\nAdd processing for HCI Disconnection Logical Link Complete\nEvent.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5ce66b59d787478f57a6f3368ff23d75a06e76e2",
      "tree": "553619827622111c9d5679947d85ae92377fc7aa",
      "parents": [
        "770bfefa2cbe8f5911860fef1a68ea873a9bbdbe"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 31 15:46:30 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:07 2012 -0200"
      },
      "message": "Bluetooth: AMP: Add Logical Link Create function\n\nAfter physical link is created logical link needs to be created.\nThe process starts after L2CAP channel is created and L2CAP\nConfiguration Response with result PENDING is received.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "27695fb415ab150e1972a882c2538bf9bf130cb0",
      "tree": "7b24d0d8d88d691f02856f2ff63cce553da23fe2",
      "parents": [
        "d5e911928bd8325918bda3df59e84b0c17a0cdab"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Oct 25 15:20:45 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:27:02 2012 -0200"
      },
      "message": "Bluetooth: AMP: Process Logical Link complete evt\n\nAfter receiving HCI Logical Link Complete event finish EFS\nconfiguration by sending L2CAP Conf Response with success code.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "6b4b73ee75bd65c4a47b1a323cb7c5180a6d2ea7",
      "tree": "a93ce2470fab84aa4be06caacdae092a3224d500",
      "parents": [
        "5ed8eb2f6b5710c09bd1adb40aa795a424e21143"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Oct 25 00:09:52 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:26:59 2012 -0200"
      },
      "message": "Bluetooth: Fix sending unnecessary HCI_Write_SSP_Mode command\n\nThis patch fixes sending an unnecessary HCI_Write_SSP_Mode command if\nthe command has already been sent as part of the default HCI init\nsequence.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "33f8f5269ea7c220e18a15959dad2b42e1b61051",
      "tree": "26e9447b5902ae8a6346c5a1543c77a1299eda18",
      "parents": [
        "976eb20e61e33dd3e7840bc26bc5d33ab9ca9c5c"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Oct 24 21:12:02 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:26:58 2012 -0200"
      },
      "message": "Bluetooth: Add flag for LE GAP Peripheral role\n\nThis patch adds a flag to be used for LE GAP Peripheral role. In this\nrole undirected advertising will be enabled and operations not allowed\nin Peripheral role (such as scanning and initiating connections) will be\ndisallowed.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "761f09e4d6d2bfe4a517d14ca28aec041c8a7415",
      "tree": "aceb6edc2e0ede8ea3e5d4b2d60e77aae0f5b70e",
      "parents": [
        "53b2caabbe97193e6231dbcc0d48f7e1888fa38e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Oct 24 21:12:00 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:26:57 2012 -0200"
      },
      "message": "Bluetooth: Add missing feature test macros\n\nThis patch adds missing feature test macros needed for various use cases\nand also sorts the macros according to the feature bit location in the\nfeature mask (for easy lookup).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "711584ea4c8ce47045c8ed4da3d6c6fdf513db92",
      "tree": "b8970868d68153825bcca127f4c122a89d47d790",
      "parents": [
        "4611dfa85ece8a26ff46b099a6d91df733066c73"
      ],
      "author": {
        "name": "Denis Kirjanov",
        "email": "kirjanov@gmail.com",
        "time": "Mon Oct 22 17:22:01 2012 +0400"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Nov 01 20:26:43 2012 -0200"
      },
      "message": "Bluetooth:Replace list_for_each with list_for_each_entry() helper\n\nReplace list_for_each with list_for_each_entry() helper\n\nSigned-off-by: Denis Kirjanov \u003ckirjanov@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8fa19098ebc700f14b0f8d0fb957e7748e14c44b",
      "tree": "488d94f7b05d394b5b29a0a9adae0cf67bbb4cf0",
      "parents": [
        "e36b04c805e452689d468f9783e5dffa61e38be7"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Oct 19 20:57:49 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Oct 24 11:17:17 2012 -0200"
      },
      "message": "Bluetooth: Read adversiting channel TX power during init sequence\n\nThis patch adds the reading of the LE advertising channel TX power to\nthe HCI init sequence of LE-capable controllers. This data will be used\ne.g. for inclusion in the advertising data packets when advertising is\nenabled.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "3f7a56c4ff438f4727439cb048034f56320dd228",
      "tree": "bdd3ce761c4055bed50b3f301e1de2b745acb1af",
      "parents": [
        "e6a3ee6e8aa27d0a38be7ead0c1624041697ffbc"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Tue Oct 23 15:24:23 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Oct 24 00:26:30 2012 -0200"
      },
      "message": "Bluetooth: Start channel move when socket option is changed\n\nChannel moves are triggered by changes to the BT_CHANNEL_POLICY\nsockopt when an ERTM or streaming-mode channel is connected.\n\nMoves are only started if enable_hs is true.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5b155ef960202b20a5cae43b9e675f4326e2375c",
      "tree": "57100cad151ef8e532a11d8b684ded0efc3f8cbf",
      "parents": [
        "168df8e57e7c1afce3f86a86ae106f82ff7c18d8"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Tue Oct 23 15:24:14 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Oct 24 00:20:54 2012 -0200"
      },
      "message": "Bluetooth: Move channel response\n\nThe move response command includes a result code indicating\n\"pending\", \"success\", or \"failure\" status.  A pending result is\nreceived when the remote address is still setting up a physical link,\nand will be followed by success or failure.  On success, logical link\nsetup will proceed.  On failure, the move is stopped.  The receiver of\na move channel response must always follow up by sending a move\nchannel confirm command.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "168df8e57e7c1afce3f86a86ae106f82ff7c18d8",
      "tree": "9d2c169f1fb88c52391b3b4f267af1ed3ce0bf03",
      "parents": [
        "5f3847a4788e7205a6ad2ac363f968c9618074f1"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Tue Oct 23 15:24:13 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Wed Oct 24 00:16:23 2012 -0200"
      },
      "message": "Bluetooth: Add state to hci_chan\n\nOn an AMP controller, hci_chan maps to a logical link.  When a channel\nis being moved, the logical link may or may not be connected already.\nThe hci_chan-\u003estate is used to determine the existance of a useable\nlogical link so the link can be either used or requested.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nAcked-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "08333283a7347c33589f31c9b1d1b7a4f3c3f7a3",
      "tree": "62b1f6b622ec5f486809e7d1bed44dd098b39ddb",
      "parents": [
        "9917c85b06c2eb9d61c0f2dadd2d5d8788f7e563"
      ],
      "author": {
        "name": "Mat Martineau",
        "email": "mathewm@codeaurora.org",
        "time": "Tue Oct 23 15:24:06 2012 -0700"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Tue Oct 23 23:57:02 2012 -0200"
      },
      "message": "Bluetooth: Add new l2cap_chan struct members for high speed channels\n\nAn L2CAP channel using high speed continues to be associated with a\nBR/EDR l2cap_conn, while also tracking an additional hci_conn\n(representing a physical link on a high speed controller) and hci_chan\n(representing a logical link).  There may only be one physical link\nbetween two high speed controllers.  Each physical link may contain\nseveral logical links, with each logical link representing a channel\nwith specific quality of service.\n\nDuring a channel move, the destination channel id, current move state,\nand role (initiator vs. responder) are tracked and used by the channel\nmove state machine.  The ident value associated with a move request\nmust also be stored in order to use it in later move responses.\n\nThe active channel is stored in local_amp_id.\n\nSigned-off-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f706adfeade767d2194c9f39c0f75e944b0bdd23",
      "tree": "a047952d3ce06440c9743cc5b582079d5df37030",
      "parents": [
        "56f6098441adb9487f6e0439429fc536afcf9e71"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Oct 18 13:16:19 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Oct 18 07:27:20 2012 -0300"
      },
      "message": "Bluetooth: AMP: Get amp_mgr reference in HS hci_conn\n\nWhen assigning amp_mgr in hci_conn (type AMP_LINK) get also reference.\nIn hci_conn_del those references would be put for both conn types\nAMP_LINK and ACL_LINK associated with amp_mgr.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "d73a098804b4d1d254b1caf1d114e5b707dee060",
      "tree": "019ccd495a41af86b8890a0aed7038ff4ba1cb91",
      "parents": [
        "204a6e54280d53e6990e536998fbf8dfba41ecd3"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Oct 15 11:58:40 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 15 09:46:39 2012 -0300"
      },
      "message": "Bluetooth: AMP: Handle complete frames in l2cap\n\nCheck flags type in switch statement and handle new frame\ntype ACL_COMPLETE used for High Speed data over AMP.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2dc4e5105f012bda7eef2f459ed3d5299ded9672",
      "tree": "2be48be9acb76a53cd37a53dec803967503c2ed8",
      "parents": [
        "644912e18ac1d27f57f6673b0236b568ff750fd1"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Fri Oct 12 19:35:24 2012 +0800"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 15 09:43:29 2012 -0300"
      },
      "message": "Bluetooth: Add chan-\u003eops-\u003edefer()\n\nWhen DEFER_SETUP is set defer() will trigger an authorization\nrequest to the userspace.\n\nl2cap_chan_no_defer() is meant to be used when one does not want to\nsupport DEFER_SETUP (A2MP for example).\n\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "716e4ab5c966327988e21e6137c14e457cfca690",
      "tree": "ab7ac56bb440f05fbe44defe452ac256ca4d4e85",
      "parents": [
        "bd1eb66ba4eee21de3be24212b135f57101ad930"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 10 17:38:31 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Oct 11 14:34:46 2012 +0800"
      },
      "message": "Bluetooth: AMP: Hanlde AMP_LINK case in conn_put\n\nHandle AMP link when setting up disconnect timeout.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "bd1eb66ba4eee21de3be24212b135f57101ad930",
      "tree": "37b3c0f63a3487429ce735c56f80968b6b198444",
      "parents": [
        "76ef7cf7722331097f5f47d23342128b1b5d072d"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 10 17:38:30 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Oct 11 14:34:24 2012 +0800"
      },
      "message": "Bluetooth: AMP: Handle AMP_LINK connection\n\nAMP_LINK represents physical link between AMP controllers.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "42c4e53e7ac3d4069105e852d1ee24e6ee9e57b8",
      "tree": "13ce2100ae7162011bbc82bb01991f5fe8607163",
      "parents": [
        "53502d69be49e3dd5bc95ab0f2deeaea260bd617"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 10 17:38:28 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Oct 11 14:33:05 2012 +0800"
      },
      "message": "Bluetooth: AMP: Add handle to hci_chan structure\n\nhci_chan will be identified by handle used in logical link creation\nprocess. This handle is used in AMP ACL-U packet handle field.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "53502d69be49e3dd5bc95ab0f2deeaea260bd617",
      "tree": "9a9318d66aa3c694e1428155dc8e43397db1e247",
      "parents": [
        "12d5978165944a9c5b059a8258685539387fcf90"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Oct 10 17:38:27 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Oct 11 14:30:58 2012 +0800"
      },
      "message": "Bluetooth: AMP: Handle AMP_LINK timeout\n\nWhen AMP_LINK timeouts execute HCI_OP_DISCONN_PHY_LINK as analog to\nHCI_OP_DISCONNECT for ACL_LINK.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8936fa6d1c202abeb94c51c68897342e8714dd69",
      "tree": "67b4e1efaf955a945ef38e1687a813d2da33072c",
      "parents": [
        "0b4558e388e72b6d088a057833bafb816ff8af85"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Oct 08 11:14:41 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 08 20:40:12 2012 +0800"
      },
      "message": "Bluetooth: L2CAP: Fix using default Flush Timeout for EFS\n\nThere are two Flush Timeouts: one is old Flush Timeot Option\nwhich is 2 octets and the second is Flush Timeout inside EFS\nwhich is 4 octets long.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "0b4558e388e72b6d088a057833bafb816ff8af85",
      "tree": "08dbc30def7104d1b1b7cc7e55e96edf7e62a7aa",
      "parents": [
        "dcc042d56f66fb2a9db6a2683e6aa4815782da8b"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Oct 05 16:56:58 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 08 06:22:48 2012 +0800"
      },
      "message": "Bluetooth: Adjust L2CAP Max PDU size for AMP packets\n\nMaximum PDU size is defined by new BT Spec as 1492 octets.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nReviewed-by: Mat Martineau \u003cmathewm@codeaurora.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "a0c234fe8972aa6a5afe2db6c27a3f5d5fbd88e7",
      "tree": "a47cdeec7101d6b06537174b3d41358a572ebd1f",
      "parents": [
        "fa4ebc66c432d0e0ec947cb754d4144c4a681f28"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Oct 05 16:56:56 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 08 06:21:51 2012 +0800"
      },
      "message": "Bluetooth: AMP: Factor out phylink_add\n\nAdd direction parameter to phylink_add since it is anyway set later.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "fa4ebc66c432d0e0ec947cb754d4144c4a681f28",
      "tree": "ce31c236f663a249276883413f19dba534569738",
      "parents": [
        "85e34368dea6fc8a2d16464e01c85d3b7bd682bd"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Oct 05 16:56:55 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 08 06:19:04 2012 +0800"
      },
      "message": "Bluetooth: AMP: Factor out amp_ctrl_add\n\nAdd ctrl_id parameter to amp_ctrl_add since we always set it\nafter function ctrl is created.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "dfee1ebc0e363ff1dc233c4a5246bf3e7f5c5ca6",
      "tree": "92824b3f3c677282226d73276e81a2275d3b915d",
      "parents": [
        "bc8dce4f7b4908bac69acac34d19b4234ba19cee"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Mon Oct 01 19:37:31 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Mon Oct 01 13:09:22 2012 -0300"
      },
      "message": "Bluetooth: remove unused member of hci_dev.\n\nThis patch removes core_data member from hci_dev struct as it is unused.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "d945df256a7b2446227fafae2f89db85597412ef",
      "tree": "261fe4fff142c9a7e7e270dfba21a8ab51a10dd4",
      "parents": [
        "7028a8860f07d0efc5fdd7527fec065b818d108b"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Tue Sep 25 12:49:46 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 18:10:43 2012 -0300"
      },
      "message": "bluetooth: Remove unneeded batostr function\n\nbatostr is not needed anymore since for printing Bluetooth\naddresses we use %pMR specifier.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "0b26ab9dce74f8ac77d7eef0d683ab1d527e45b1",
      "tree": "201cc46c4bf0189d649988deb4ad3366f8d30d34",
      "parents": [
        "dffa387110025801862d7ad09f4e850d06ff55a9"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:24 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:35:09 2012 -0300"
      },
      "message": "Bluetooth: AMP: Handle Accept phylink command status evt\n\nWhen receiving HCI Command Status event for Accept Physical Link\nexecute HCI Write Remote AMP Assoc with data saved from A2MP Create\nPhysical Link Request.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "dffa387110025801862d7ad09f4e850d06ff55a9",
      "tree": "347486dc16f25674c4e58729d044105fd7a7204e",
      "parents": [
        "9495b2ee757f7747d7c28f9ba8d7edc53005ec2d"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:23 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:34:38 2012 -0300"
      },
      "message": "Bluetooth: AMP: Accept Physical Link\n\nWhen receiving A2MP Create Physical Link message execute HCI\nAccept Physical Link command to AMP controller.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "9495b2ee757f7747d7c28f9ba8d7edc53005ec2d",
      "tree": "196d6c79f2c5836fc55c5515d9ece5e3d6aab254",
      "parents": [
        "2766be48a7181d7f2a84831ca7e7be248fb6fdb5"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:22 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:34:06 2012 -0300"
      },
      "message": "Bluetooth: AMP: Process Chan Selected event\n\nChannel Selected event indicates that link information data is available.\nRead it with Read Local AMP Assoc command. The data shall be sent in the\nA2MP Create Physical Link Request.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2766be48a7181d7f2a84831ca7e7be248fb6fdb5",
      "tree": "9d5554696f17b42a2724b652928450f745cb00a8",
      "parents": [
        "93c284ee901f7d7bdd09087e92abefb7496c3777"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:21 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:31:52 2012 -0300"
      },
      "message": "Bluetooth: A2MP: Add fallback to normal l2cap init sequence\n\nWhen there is no remote AMP controller found fallback to normal\nL2CAP sequence.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "93c284ee901f7d7bdd09087e92abefb7496c3777",
      "tree": "06da0dca5976737f6eef22387ebe91ca11356b6e",
      "parents": [
        "a02226d6ff5098e6b97590cc55aabe7faf0860ed"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:20 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:31:18 2012 -0300"
      },
      "message": "Bluetooth: AMP: Write remote AMP Assoc\n\nWhen receiving HCI Command Status after HCI Create Physical Link\nexecute HCI Write Remote AMP Assoc command to AMP controller.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "a02226d6ff5098e6b97590cc55aabe7faf0860ed",
      "tree": "5ec09ebf86af46cdf37ecca872f2cfd12004edb7",
      "parents": [
        "5a349186692950b13896abc3fb2f491d023f95a1"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:19 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:30:40 2012 -0300"
      },
      "message": "Bluetooth: AMP: Create Physical Link\n\nWhen receiving A2MP Get AMP Assoc Response execute HCI Create Physical\nLink to AMP controller. Define function which will run when receiving\nHCI Command Status.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "5a349186692950b13896abc3fb2f491d023f95a1",
      "tree": "90cd3162c3f7d3277e6a8816c384c7ab0d76e1d8",
      "parents": [
        "ba221bbabadd5fc2c80677b52178138fd694cc26"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:18 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:30:22 2012 -0300"
      },
      "message": "Bluetooth: AMP: Add AMP key calculation\n\nFunction calculates AMP keys using hmac_sha256 helper. Calculated keys\nare Generic AMP Link Key (gamp) and Dedicated AMP Link Key with\nkeyID \"802b\" for 802.11 PAL.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "93c3e8f5c9a0e4dc6b6c93108dcf3ec54ab1191a",
      "tree": "ef09b88bd239bc42c6ce5b28bfca7173644c3df4",
      "parents": [
        "9a5e94dbb4aa306742a47cbbcb0a44d4fc77a9e4"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:16 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:18:36 2012 -0300"
      },
      "message": "Bluetooth: Choose connection based on capabilities\n\nChoose which L2CAP connection to establish by checking support\nfor HS and remote side supported features.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "52c0d6e56b634b195e377192182391d526cdd5e4",
      "tree": "24a32bc650f821d9aeadf90c7891285f50778774",
      "parents": [
        "3161ae1c72f03b021bc67504c13025626c26d30c"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:12 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:12:46 2012 -0300"
      },
      "message": "Bluetooth: AMP: Remote AMP ctrl definitions\n\nCreate remote AMP controllers structure. It is used to keep information\nabout discovered remote AMP controllers by A2MP protocol.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "3161ae1c72f03b021bc67504c13025626c26d30c",
      "tree": "dc75cc7e2ddb341aec63cbbabccbc31eb6bbfa13",
      "parents": [
        "aa09537d80bf7e6282103618eb496f03e76f2953"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:11 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:11:52 2012 -0300"
      },
      "message": "Bluetooth: AMP: Physical link struct and helpers\n\nDefine physical link structures. Physical links are represented by\nhci_conn structure. For BR/EDR we use type ACL_LINK and for AMP\nwe use AMP_LINK.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "903e45411099ae8292f5ce637ad0c72f6fef61db",
      "tree": "7e04801dc8623c17c415d1c14221682867be6389",
      "parents": [
        "8e2a0d92c56ec6955526a8b60838c9b00f70540d"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:09 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:10:32 2012 -0300"
      },
      "message": "Bluetooth: AMP: Use HCI cmd to Read Loc AMP Assoc\n\nWhen receiving A2MP Get AMP Assoc Request execute Read Local AMP Assoc\nHCI command to AMP controller. If the AMP Assoc data is larger than it\ncan fit to HCI event only fragment is read. When all fragments are read\nsend A2MP Get AMP Assoc Response.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8e2a0d92c56ec6955526a8b60838c9b00f70540d",
      "tree": "a8a8796ad17d8450a82e16c7ecc82d2a42f9cf0e",
      "parents": [
        "f97268fccdd4e76462195216fcab621b8d4a6cd1"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:08 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:10:18 2012 -0300"
      },
      "message": "Bluetooth: AMP: Use HCI cmd to Read AMP Info\n\nWhen receiving A2MP Get Info Request execute Read Local AMP Info HCI\ncommand to AMP controller with function to be executed upon receiving\ncommand complete event. Function will handle A2MP Get Info Response.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f97268fccdd4e76462195216fcab621b8d4a6cd1",
      "tree": "ab9b2cebee49e3186cd80d366e6d16aeb39e2985",
      "parents": [
        "b078b564292ab87cdf4a58de3c2f86d4300a161c"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Sep 27 17:26:07 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo.padovan@collabora.co.uk",
        "time": "Thu Sep 27 17:10:03 2012 -0300"
      },
      "message": "Bluetooth: A2MP: Create amp_mgr global list\n\nCreate amp_mgr_list global list which will be used by different\nhci devices to find amp_mgr.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\n"
    }
  ],
  "next": "b078b564292ab87cdf4a58de3c2f86d4300a161c"
}
