)]}'
{
  "log": [
    {
      "commit": "e686219a64fee9be9ce438dc3f040cd71ddd168a",
      "tree": "1b72117be85dc4dd5c4656e459043d2528069760",
      "parents": [
        "9e726b17422bade75fba94e625cd35fd1353e682"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Mon Aug 24 00:45:19 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 24 01:05:05 2009 -0700"
      },
      "message": "Bluetooth: Add locking scheme to L2CAP timeout callbacks\n\nAvoid race conditions when accessing the L2CAP socket from within the\ntimeout handlers.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9e726b17422bade75fba94e625cd35fd1353e682",
      "tree": "af8cf616d9cbda12f51682dbb96e696f135be436",
      "parents": [
        "ef54fd937fbd5ebaeb023818524565bd526a5f36"
      ],
      "author": {
        "name": "Luiz Augusto von Dentz",
        "email": "luiz.dentz@openbossa.org",
        "time": "Wed Jul 15 13:50:58 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:05:58 2009 -0700"
      },
      "message": "Bluetooth: Fix rejected connection not disconnecting ACL link\n\nWhen using DEFER_SETUP on a RFCOMM socket, a SABM frame triggers\nauthorization which when rejected send a DM response. This is fine\naccording to the RFCOMM spec:\n\n    the responding implementation may replace the \"proper\" response\n    on the Multiplexer Control channel with a DM frame, sent on the\n    referenced DLCI to indicate that the DLCI is not open, and that\n    the responder would not grant a request to open it later either.\n\nBut some stacks doesn\u0027t seems to cope with this leaving DLCI 0 open after\nreceiving DM frame.\n\nTo fix it properly a timer was introduced to rfcomm_session which is used\nto set a timeout when the last active DLC of a session is unlinked, this\nwill give the remote stack some time to reply with a proper DISC frame on\nDLCI 0 avoiding both sides sending DISC to each other on stacks that\nfollow the specification and taking care of those who don\u0027t by taking\ndown DLCI 0.\n\nSigned-off-by: Luiz Augusto von Dentz \u003cluiz.dentz@openbossa.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "ef54fd937fbd5ebaeb023818524565bd526a5f36",
      "tree": "c664288f00548b8c531ff44a0bc8c7f18542740e",
      "parents": [
        "8f17154f1f70fcc6faa31ac82164fcf7f0599f38"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:04 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:03:43 2009 -0700"
      },
      "message": "Bluetooth: Full support for receiving L2CAP SREJ frames\n\nSupport for receiving of SREJ frames as specified by the state table.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "8f17154f1f70fcc6faa31ac82164fcf7f0599f38",
      "tree": "f210dae590f600720b974d367082c368d03eac86",
      "parents": [
        "fcc203c30d72dde82692f6b761a80e5ca5fdd8fa"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:03 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:01:25 2009 -0700"
      },
      "message": "Bluetooth: Add support for L2CAP SREJ exception\n\nWhen L2CAP loses an I-frame we send a SREJ frame to the transmitter side\nrequesting the lost packet. This patch implement all Recv I-frame events\non SREJ_SENT state table except the ones that deal with SendRej (the REJ\nexception at receiver side is yet not implemented).\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fcc203c30d72dde82692f6b761a80e5ca5fdd8fa",
      "tree": "04eb154db3be85574efe74542f528efb39abf5bb",
      "parents": [
        "6840ed0770d79b9bb0800e5e026a067040ef18f5"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:02 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:59:49 2009 -0700"
      },
      "message": "Bluetooth: Add support for FCS option to L2CAP\n\nImplement CRC16 check for L2CAP packets. FCS is used by Streaming Mode and\nEnhanced Retransmission Mode and is a extra check for the packet content.\n\nUsing CRC16 is the default, L2CAP won\u0027t use FCS only when both side send\na \"No FCS\" request.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "6840ed0770d79b9bb0800e5e026a067040ef18f5",
      "tree": "7904a7bfc6bb1e57f30139cac47676bf589db7b7",
      "parents": [
        "e90bac061b17cd81bd0df30606c64f4543bf5ca0"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:01 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:57:58 2009 -0700"
      },
      "message": "Bluetooth: Enable Streaming Mode for L2CAP\n\nStreaming Mode is helpful for the Bluetooth streaming based profiles, such\nas A2DP. It doesn\u0027t have any error control or flow control.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e90bac061b17cd81bd0df30606c64f4543bf5ca0",
      "tree": "3529111fa5ba07bdd8ed9627d10d623f77416ace",
      "parents": [
        "30afb5b2aa83adf4f69e5090d48e1bb04b64c58a"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:00 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:56:15 2009 -0700"
      },
      "message": "Bluetooth: Add support for Retransmission and Monitor Timers\n\nL2CAP uses retransmission and monitor timers to inquiry the other side\nabout unacked I-frames. After sending each I-frame we (re)start the\nretransmission timer. If it expires, we start a monitor timer that send a\nS-frame with P bit set and wait for S-frame with F bit set. If monitor\ntimer expires, try again, at a maximum of L2CAP_DEFAULT_MAX_TX.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "30afb5b2aa83adf4f69e5090d48e1bb04b64c58a",
      "tree": "f47506c5f02b8e1d23123cadee49f518c928afa5",
      "parents": [
        "c74e560cd0101455f1889515e1527e4c2e266113"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:59 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:55:20 2009 -0700"
      },
      "message": "Bluetooth: Initial support for retransmission of packets with REJ frames\n\nWhen receiving an I-frame with unexpected txSeq, receiver side start the\nrecovery procedure by sending a REJ S-frame to the transmitter side. So\nthe transmitter can re-send the lost I-frame.\n\nThis patch just adds a basic support for retransmission, it doesn\u0027t\nmean that ERTM now has full support for packet retransmission.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "c74e560cd0101455f1889515e1527e4c2e266113",
      "tree": "a828b646b60578c1e90580da0d92e5d1ee7e7981",
      "parents": [
        "1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:58 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:53:58 2009 -0700"
      },
      "message": "Bluetooth: Add support for Segmentation and Reassembly of SDUs\n\nERTM should use Segmentation and Reassembly to break down a SDU in many\nPDUs on sending data to the other side.\n\nOn sending packets we queue all \u0027segments\u0027 until end of segmentation and\njust the add them to the queue for sending. On receiving we create a new\nSKB with the SDU reassembled.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a",
      "tree": "c196f2acec0fa0ace48483ec99a691b4230f53d2",
      "parents": [
        "22121fc9152ca8f25a2d790860832ccb6a414c4d"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:57 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:53:01 2009 -0700"
      },
      "message": "Bluetooth: Add initial support for ERTM packets transfers\n\nThis patch adds support for ERTM transfers, without retransmission, with\ntxWindow up to 63 and with acknowledgement of packets received. Now the\npackets are queued before call l2cap_do_send(), so packets couldn\u0027t be\nsent at the time we call l2cap_sock_sendmsg(). They will be sent in\nan asynchronous way on later calls of l2cap_ertm_send(). Besides if an\nerror occurs on calling l2cap_do_send() we disconnect the channel.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "22121fc9152ca8f25a2d790860832ccb6a414c4d",
      "tree": "03fcc5bdbdae77838f9aff9ce0f6e43895fd36d7",
      "parents": [
        "f2fcfcd670257236ebf2088bbdf26f6a8ef459fe"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Jul 23 10:27:23 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Create separate l2cap_send_disconn_req() function\n\nThe code for sending a disconnect request was repeated several times\nwithin L2CAP source code. So move this into its own function.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f2fcfcd670257236ebf2088bbdf26f6a8ef459fe",
      "tree": "5bc6061e3b684ae545b24e2919ab43b711e04c4d",
      "parents": [
        "65c7c4918450f8c4545ccb02a9c7a3d77e073535"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Sat Jul 04 15:06:24 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Add configuration support for ERTM and Streaming mode\n\nAdd support to config_req and config_rsp to configure ERTM and Streaming\nmode. If the remote device specifies ERTM or Streaming mode, then the\nsame mode is proposed. Otherwise ERTM or Basic mode is used. And in case\nof a state 2 device, the remote device should propose the same mode. If\nnot, then the channel gets disconnected.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "65c7c4918450f8c4545ccb02a9c7a3d77e073535",
      "tree": "ceacb79cdf46b74bad8429dd06d32ba96f9c31f9",
      "parents": [
        "c6b03cf986eab00e20d0dbc852b233bb83472138"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 02 23:07:53 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Add L2CAP RFC option if ERTM is enabled\n\nWhen trying to establish a connection with Enhanced Retransmission mode\nenabled, the RFC option needs to be added to the configuration.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "c6b03cf986eab00e20d0dbc852b233bb83472138",
      "tree": "94fe92aafca068e3eb1cd6f4c53a3c86801fe7e0",
      "parents": [
        "44dd46de325c4d47abfd1361e5d84a548edb8e42"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 02 22:31:10 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Allow setting of L2CAP ERTM via socket option\n\nTo enable Enhanced Retransmission mode it needs to be set via a socket\noption. A different mode can be set on a socket, but on listen() and\nconnect() the mode is checked and ERTM is only allowed if it is enabled\nvia the module parameter.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "44dd46de325c4d47abfd1361e5d84a548edb8e42",
      "tree": "cd23feb79ecee0eed27abbd4078bfcc80896194c",
      "parents": [
        "52d18347dfb61519aa0f58fe1759edd3ad8c4e36"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 02 19:09:01 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Add module option to enable L2CAP ERTM support\n\nSince the Enhanced Retransmission mode for L2CAP is still under heavy\ndevelopment disable it by default and provide a module option to enable\nit manually for testing.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "52d18347dfb61519aa0f58fe1759edd3ad8c4e36",
      "tree": "e704210e27846a7763853d3a15236809c00e3ef4",
      "parents": [
        "a6a67efd7088702fdbbb780c5a3f8e1a74e77b63"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:49:36 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:49:36 2009 -0700"
      },
      "message": "Bluetooth: Coding style cleanup from previous rfcomm_init bug fix\n\nThe rfcomm_init bug fix went into the kernel premature before it got fully\nreviewed and acknowledged by the Bluetooth maintainer. So fix up the coding\nstyle now.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a6a67efd7088702fdbbb780c5a3f8e1a74e77b63",
      "tree": "fe35247ef5806ed690df3581de877fb84faad42b",
      "parents": [
        "5959809ded86e267c1a95fb44738a224c30d3434"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jul 26 08:18:19 2009 +0000"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:35:02 2009 -0700"
      },
      "message": "Bluetooth: Convert hdev-\u003ereq_lock to a mutex\n\nhdev-\u003ereq_lock is used as mutex so make it a mutex.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "5959809ded86e267c1a95fb44738a224c30d3434",
      "tree": "73cbd8c5a91c34d1df743dfc15d1cf954ed8d4fe",
      "parents": [
        "3318b2362bf0528be77123c480249663557dfbfc"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu Aug 06 22:05:18 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:33:22 2009 -0700"
      },
      "message": "Bluetooth: Add missing kmalloc NULL tests to Marvell driver\n\nCheck that the result of kmalloc is not NULL before dereferencing it.\nThe patch also replaces kmalloc + memset by kzalloc.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression *x;\nidentifier f;\nconstant char *C;\n@@\n\nx \u003d \\(kmalloc\\|kcalloc\\|kzalloc\\)(...);\n... when !\u003d x \u003d\u003d NULL\n    when !\u003d x !\u003d NULL\n    when !\u003d (x || ...)\n(\nkfree(x)\n|\nf(...,C,...,x,...)\n|\n*f(...,x,...)\n|\n*x-\u003ef\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "3318b2362bf0528be77123c480249663557dfbfc",
      "tree": "b0d06465c9663d0f3f958c603feade942dd50e56",
      "parents": [
        "9374253ffe609f2d70dd5ae280182cb6f08fef08"
      ],
      "author": {
        "name": "Bing Zhao",
        "email": "bzhao@marvell.com",
        "time": "Wed Jul 08 11:44:14 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Fix incorrect alignment in Marvell BT-over-SDIO driver\n\nThe driver uses \"u32\" for alignment check and calculation which\nworks only on 32-bit system. It will crash the 64-bit system.\nReplace \"u32\" with \"unsigned long\" to fix this issue.\n\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9374253ffe609f2d70dd5ae280182cb6f08fef08",
      "tree": "d84aabb99ba9b83f170dacb3caef3b9540420ea1",
      "parents": [
        "e0721f99ba33d13a88746732be2d74ca805abf55"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Jun 13 07:40:18 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Remove Enter/Leave debug statements from Marvell driver\n\nThe Marvell Bluetooth driver is full of Enter/Leave debug statements and\nall of them are really pointless and only clutter the code. Seems to be\nsome left-overs when they ported the driver from Windows. For the Linux\ndriver lets remove these.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e0721f99ba33d13a88746732be2d74ca805abf55",
      "tree": "b9ea0a8a934f7586ebeb187c1537d0376eb244de",
      "parents": [
        "91d697302b291205171840bfe84c1563e171acb2"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Jun 13 07:27:19 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Fix last few compiler warning within Marvell core driver\n\nAfter fixing the driver to use skb_put properly for their HCI commands\nonly a few compiler warnings are left. Add proper casting for them.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "91d697302b291205171840bfe84c1563e171acb2",
      "tree": "e196d2573bee89b511cb8052d25357959d47d9a8",
      "parents": [
        "60dee5ccd789ee8a380eee802b6cb24c52123428"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jun 10 12:18:50 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Fix Marvell driver to use skb_put and hci_opcode_pack\n\nThe Marvell driver has some weird quirks on how to construct proper SKBs\nwith Bluetooth HCI commands. Fix it to use skb_put properly and also\nuse hci_opcode_pack instead of self-crafted macro.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "60dee5ccd789ee8a380eee802b6cb24c52123428",
      "tree": "b9d5bf8e60dec26d557bd94611e14c2f577e4108",
      "parents": [
        "9666fb356da78a5ec28403197d72e8cd6aa16424"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jun 10 12:05:52 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Remove private device name of Marvell SDIO driver\n\nFor some reason the btmrvl_device struct has a name field that the SDIO\nfills in, but then never ever uses again. That is totally pointless and\nso just remove it.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9666fb356da78a5ec28403197d72e8cd6aa16424",
      "tree": "17159e90a2c6712bbd0906945e65ba02583e9857",
      "parents": [
        "dcf47f3bc798888f9ea40b9f626d669dc62086bf"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 21:45:04 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:34 2009 -0700"
      },
      "message": "Bluetooth: Fix module description strings for Marvell driver\n\nMake the module description entries for the core and also the Marvell\nSDIO driver match common practive inside the Bluetooth subsystem.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "dcf47f3bc798888f9ea40b9f626d669dc62086bf",
      "tree": "5d9a8595d6c35777b16dce766ef7c0fad04d944b",
      "parents": [
        "4271e08d8b799171af18d7864908ec444282efe5"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 16:21:58 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Fix complicated assignment of firmware for Marvell devices\n\nThe Marvell Bluetooth SDIO driver has a really complicated concept on how\nfirmware names are assigned to specific device ids. Fix that by doing a\nproper structure and assign it to the module device table.\n\nAnd while at it fix various coding style weirdness that is still present\nin this driver.\n\nSigned-off-by: Marcel Holtman \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "4271e08d8b799171af18d7864908ec444282efe5",
      "tree": "b0d89e4304671ab9006611d454553cc545dfa122",
      "parents": [
        "542399037d0cb2b2e96dfb8ced35b07dfb1c3706"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 16:00:22 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Some coding style cleanup for Marvell core driver\n\nThe Marvell core Bluetooth driver has various weird casting and unneeded\nbraces in its code that makes it hard to read. Remove all of these to\nmake the code a little bit simpler.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "542399037d0cb2b2e96dfb8ced35b07dfb1c3706",
      "tree": "613384367afdec67bcd3cce0153f1cabe0519a0d",
      "parents": [
        "944fe798c6a48336e82bbc0d4e280587325a4d95"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 15:48:35 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Remove pointless casts from Marvell debugfs support\n\nThe Marvell Bluetooth driver has debugfs support and they are casting\nlike there is no tomorrow. Remove all of them and magically the code\nbecomes more readable.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "944fe798c6a48336e82bbc0d4e280587325a4d95",
      "tree": "65654226935567146d98ee3dbd7fb1d12e934f32",
      "parents": [
        "08b0b0ce8c609b0e2284b134f0614e211374a038"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 15:46:07 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Remove pointless ifdef protection for Marvell header files\n\nBoth header files of the Marvell Bluetooth driver are private anyway and\nif the driver happens to include them twice or they create a circular\ndependency then the driver needs fixing. So just remove both pointless\nifdefs.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "08b0b0ce8c609b0e2284b134f0614e211374a038",
      "tree": "3b7b3b5cd72d2bb3c1fcbb13c14fb2e7e7f881f6",
      "parents": [
        "e7a25f9839fd392ec2c96e7e2b3734501d761a24"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 15:44:03 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Fix compilation of Marvell driver without debugfs\n\nThe Makefile entry for the Marvell driver is broken when it comes to\nhandling the optional DEBUG_FS correctly. That must have been the reason\nwhy they were using select in Kconfig in the first place. Fix this and\nmake it really optional.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e7a25f9839fd392ec2c96e7e2b3734501d761a24",
      "tree": "2595e2ad91e23928b395a2ecde0a3a4e0e9ef4de",
      "parents": [
        "196be0cd018068d545e1d764094c7b07aaf0bcfe"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 09 13:42:54 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:33 2009 -0700"
      },
      "message": "Bluetooth: Fix Kconfig for Marvell Bluetooth driver\n\nThe Marvell driver selects DEBUG_FS and FW_LOADER for its core driver\nand that is pointless. Don\u0027t select DEBUG_FS since it is either enabled\nor not and it is not for the driver to enable it. Also FW_LOADER is\nonly used within the SDIO driver and so just have that one select the\nFW_LOADER option.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "196be0cd018068d545e1d764094c7b07aaf0bcfe",
      "tree": "01ef13e7fd0b19ffb179ae42dd71ab213d025bba",
      "parents": [
        "fb784f0508d5aa39a23e72879a8dfb517c6f6e7f"
      ],
      "author": {
        "name": "Bing Zhao",
        "email": "bzhao@marvell.com",
        "time": "Tue Jun 02 14:29:38 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:32 2009 -0700"
      },
      "message": "Bluetooth: Add documentation for Marvell Bluetooth driver\n\nadd btmrvl.txt to Documentation/\n\nThis patch incorporates a lot of comments given by\nNicolas Pitre \u003cnico@marvell.com\u003e. Many thanks to Nicolas Pitre.\n\nSigned-off-by: Rahul Tank \u003crahult@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fb784f0508d5aa39a23e72879a8dfb517c6f6e7f",
      "tree": "f8e105589bc592467e8bb306aadade361b4f5412",
      "parents": [
        "789221ecc870117b77e354d488d5d29f15410de8"
      ],
      "author": {
        "name": "Bing Zhao",
        "email": "bzhao@marvell.com",
        "time": "Tue Jun 02 14:29:37 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:32 2009 -0700"
      },
      "message": "Bluetooth: Add debugfs support to btmrvl driver\n\n/debug/btmrvl/config/\n/debug/btmrvl/status/\n\nSee Documentation/btmrvl.txt for details.\n\nThis patch incorporates a lot of comments given by\nNicolas Pitre \u003cnico@marvell.com\u003e. Many thanks to Nicolas Pitre.\n\nSigned-off-by: Rahul Tank \u003crahult@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "789221ecc870117b77e354d488d5d29f15410de8",
      "tree": "2a2dfa36bd53660d06f7336f19c68690e2132c89",
      "parents": [
        "132ff4e5fa8dfb71a7d99902f88043113947e972"
      ],
      "author": {
        "name": "Bing Zhao",
        "email": "bzhao@marvell.com",
        "time": "Tue Jun 02 14:29:36 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:32 2009 -0700"
      },
      "message": "Bluetooth: Add Marvell BT-over-SDIO driver\n\nThis driver supports Marvell Bluetooth enabled devices with SDIO\ninterface. Currently only SD8688 chip is supported.\n\nThe helper/firmware images of SD8688 can be downloaded from this tree:\ngit://git.infradead.org/users/dwmw2/linux-firmware.git\n\nThis patch incorporates a lot of comments given by\nNicolas Pitre \u003cnico@marvell.com\u003e. Many thanks to Nicolas Pitre.\n\nSigned-off-by: Rahul Tank \u003crahult@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "132ff4e5fa8dfb71a7d99902f88043113947e972",
      "tree": "3fb4b236d8bfafd7c0a74f55a2d324189e0ccd91",
      "parents": [
        "edad63886993d18ab800c49f6587a93432ef8b35"
      ],
      "author": {
        "name": "Bing Zhao",
        "email": "bzhao@marvell.com",
        "time": "Tue Jun 02 14:29:35 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:25:32 2009 -0700"
      },
      "message": "Bluetooth: Add btmrvl driver for Marvell Bluetooth devices\n\nThis driver provides basic definitions and library functions to\nsupport Marvell Bluetooth enabled devices, such as 88W8688 WLAN/BT\ncombo chip.\n\nThis patch incorporates a lot of comments given by\nNicolas Pitre \u003cnico@marvell.com\u003e. Many thanks to Nicolas Pitre.\n\nSigned-off-by: Rahul Tank \u003crahult@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "edad63886993d18ab800c49f6587a93432ef8b35",
      "tree": "3513335d25e260daed72ecc0bdf19b0fd8bdcac2",
      "parents": [
        "9eba32b86d17ef87131fa0bce43c614904ab5781"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:22:15 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:22:15 2009 -0700"
      },
      "message": "Bluetooth: Let HIDP grab the device reference for connections\n\nThe core exports the hci_conn_hold_device() and hci_conn_put_device()\nfunctions for device reference of connections. Use this to ensure that\nthe uevents from the parent are send after the child ones.\n\nBased on a report by Brian Rogers \u003cbrian@xyzw.org\u003e\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9eba32b86d17ef87131fa0bce43c614904ab5781",
      "tree": "cd7e40a026475b7e4ddb8bdc944e75bc5a18c250",
      "parents": [
        "364f63519d94442ed373ac7da79033c8282df46a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:19:26 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:19:26 2009 -0700"
      },
      "message": "Bluetooth: Add extra device reference counting for connections\n\nThe device model itself has no real usable reference counting at the\nmoment and this causes problems if parents are deleted before their\nchildren. The device model itself handles the memory details of this\ncorrectly, but the uevent order is not consistent. This causes various\nproblems for systems like HAL or even X.\n\nSo until device_put() does a proper cleanup, the device for Bluetooth\nconnection will be protected with an extra reference counting to ensure\nthe correct order of uevents when connections are terminated.\n\nThis is not an automatic feature. Higher Bluetooth layers like HIDP or\nBNEP should grab this new reference to ensure that their uevents are\nsend before the ones from the parent device.\n\nBased on a report by Brian Rogers \u003cbrian@xyzw.org\u003e\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "364f63519d94442ed373ac7da79033c8282df46a",
      "tree": "af17fa090f2525e562396dbb2916199635ca1197",
      "parents": [
        "290ba200815fdecb4d40dc942499c4ea6d0c4624"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:15:53 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:15:53 2009 -0700"
      },
      "message": "Bluetooth: Disconnect HIDRAW devices on disconnect\n\nCurrently the HID subsystem will create HIDRAW devices for the transport\ndriver, but it will not disconnect them. Until the HID subsytem gets\nfixed, ensure that HIDRAW and HIDDEV devices are disconnected when the\nBluetooth HID device gets removed.\n\nBased on a patch from Brian Rogers \u003cbrian@xyzw.org\u003e\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "290ba200815fdecb4d40dc942499c4ea6d0c4624",
      "tree": "b6a097bd9b8ddd580501aa9871af3380e95bd5dc",
      "parents": [
        "981b1414d78a7a42cab48b97d4de54a62d61db88"
      ],
      "author": {
        "name": "Vikram Kandukuri",
        "email": "vkandukuri@atheros.com",
        "time": "Thu Jul 02 14:31:59 2009 +0530"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:12:37 2009 -0700"
      },
      "message": "Bluetooth: Improve USB driver throughput by increasing the frame size\n\nThis patch increases the receive buffer size to HCI_MAX_FRAME_SIZE\nwhich improves the RX throughput considerably.\n\nTested against BRM/Atheros/CSR USB Dongles with PAN profile using\niperf and chariot. This gave significant (around 40%) increase\nin performance (increased from 0.8 to 1.5 Mb/s in Sheld room)\n\nSigned-off-by: Vikram Kandukuri \u003cvikram.kandukuri@atheros.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "981b1414d78a7a42cab48b97d4de54a62d61db88",
      "tree": "74e1189b045b3b9e84c23a6b8aa892265df8046d",
      "parents": [
        "fd0b3ff707dc1f7837079044bd4eca7ed505f70d"
      ],
      "author": {
        "name": "Vikram Kandukuri",
        "email": "vkandukuri@atheros.com",
        "time": "Wed Jul 01 11:39:58 2009 +0530"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:12:17 2009 -0700"
      },
      "message": "Bluetooth: Fix missing scheduling when VIRTUAL_CABLE_UNPLUG is received\n\nThere is a test case in PTS tool; PTS will send the VIRTUAL_CABLE_UNPLUG\ncommand to IUT. Then IUT should disconnect the channel and kill the HID\nsession when it receives the command. The VIRTUAL_CABLE_UNPLUG command\nis parsed by HID transport, but it is not scheduled to do so. Add a\ncall to hidp_schedule() to kill the session.\n\nSigned-off-by: Jothikumar Mothilal \u003cjothikumar.mothilal@atheros.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fd0b3ff707dc1f7837079044bd4eca7ed505f70d",
      "tree": "a6e37b21f98ae3a3413ab0829730ba908f8cc446",
      "parents": [
        "f8f2109d4f6c525f893f6f2901ae62372e83245e"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Jun 16 00:01:49 2009 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:11:46 2009 -0700"
      },
      "message": "Bluetooth: Add proper shutdown support to SCO sockets\n\nThe SCO sockets for Bluetooth audio setup and streaming are missing the\nshutdown implementation. This hasn\u0027t been a problem so far, but with a\nmore deeper integration with PulseAudio it is important to shutdown SCO\nsockets properly.\n\nAlso the Headset profile 1.2 has more detailed qualification tests that\nrequire that SCO and RFCOMM channels are terminated in the right order. A\nproper shutdown function is necessary for this.\n\nBased on a report by Johan Hedberg \u003cjohan.hedberg@nokia.com\u003e\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nTested-by: Johan Hedberg \u003cjohan.hedberg@nokia.com\u003e\n"
    },
    {
      "commit": "f8f2109d4f6c525f893f6f2901ae62372e83245e",
      "tree": "e20b095973d45eb2360ffa157ad161536c2ddbe9",
      "parents": [
        "bb81b2ddfa194b6d12761a350b5b5985cecae0a9",
        "a2c3f6567c9ac327f1ef1272551f3a7595ec885e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 21 01:56:56 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 21 01:56:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "a2c3f6567c9ac327f1ef1272551f3a7595ec885e",
      "tree": "41ec8fdabf1ca101333d453379d6e1f3f376762d",
      "parents": [
        "a145d575833ff47330125364cb49304db7308825"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 05:13:48 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:13 2009 -0400"
      },
      "message": "MAINTAINERS: add information for mwl8k wireless driver\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a145d575833ff47330125364cb49304db7308825",
      "tree": "cda92928476930202aba257cfd074ac6519a0257",
      "parents": [
        "ab565790cb5ca3d00db0af9c2a8eb95e16054c29"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 04:34:26 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:13 2009 -0400"
      },
      "message": "mwl8k: update copyright and version number\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ab565790cb5ca3d00db0af9c2a8eb95e16054c29",
      "tree": "e7e70ffff7c407196f43dd02ee32e0ac8237fa91",
      "parents": [
        "e6935ea10485f34b82d16f8dff9aa2bdf32ab4bf"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 04:08:01 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:13 2009 -0400"
      },
      "message": "mwl8k: remove mwl8k_queue_work()\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e6935ea10485f34b82d16f8dff9aa2bdf32ab4bf",
      "tree": "df8a0a4efe26a7c99fc7fab0963a4e34ce86beb7",
      "parents": [
        "954ef509cc7d795ccd69fa2e01539297e9a003a0"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 04:06:20 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:12 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_configure_filter() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "954ef509cc7d795ccd69fa2e01539297e9a003a0",
      "tree": "4ade5b40ad6dd224a065f88e1637d244c4788a39",
      "parents": [
        "3e4f542cfbf5a60f2295b2de9a31bdd14beb7b4a"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:26:27 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:12 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_get_stats() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3e4f542cfbf5a60f2295b2de9a31bdd14beb7b4a",
      "tree": "32171674c91fadfec8cb07ec75d56c6e3ee6e61b",
      "parents": [
        "733d3067d3fb168fbbd008cb0ebf5ad2027030f3"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:25:59 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:11 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_conf_tx() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "733d3067d3fb168fbbd008cb0ebf5ad2027030f3",
      "tree": "b58ade2822e89a2dbef8ddf6beb12d984da8c4da",
      "parents": [
        "3a980d0a505161b99fc936827cb28ec8eb853284"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:24:15 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:10 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_set_rts_threshold() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3a980d0a505161b99fc936827cb28ec8eb853284",
      "tree": "a187da6be849ea095761a5b35a257cc9374d7718",
      "parents": [
        "ee03a93241eb954d669fb795b4e5c0eec92eef22"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:21:46 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:09 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_bss_info_changed() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ee03a93241eb954d669fb795b4e5c0eec92eef22",
      "tree": "14ef37a6f10b438a11d84a4452132a554a5be567",
      "parents": [
        "d3cea0b85a31a98630c6fcf7373d486db9612a10"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:19:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:09 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_config() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d3cea0b85a31a98630c6fcf7373d486db9612a10",
      "tree": "b240083fa80cd4c9a17d20f78907d30a4acd9198",
      "parents": [
        "2ec610cb6d57032cdab89781e37ed3e442c73367"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:15:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:09 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_stop() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2ec610cb6d57032cdab89781e37ed3e442c73367",
      "tree": "b8c01e22685c65e82480520aad590711471a3ce5",
      "parents": [
        "618952a7b19b796fce98364fb26551cbe3e16a75"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 07:11:37 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:08 2009 -0400"
      },
      "message": "mwl8k: get rid of mwl8k_start() workqueue use\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "618952a7b19b796fce98364fb26551cbe3e16a75",
      "tree": "ea1abbe59b699e423e13c50e970a7195a1ebd304",
      "parents": [
        "950d5b0191dc3e71017f336017f75f6189f39f08"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 03:18:01 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:08 2009 -0400"
      },
      "message": "mwl8k: fix firmware command serialisation\n\nThe current mwl8k_priv-\u003efw_lock spinlock doesn\u0027t actually protect\nagainst multiple commands being submitted at once, as it is not kept\nheld over the entire firmware command submission.  And since waiting\nfor command completion sleeps, we can\u0027t use a spinlock anyway.\n\nTo fix mwl8k firmware command serialisation properly, we have the\nfollowing requirements:\n- Some commands require that the packet transmit path is idle when\n  the command is issued.  (For simplicity, we\u0027ll just quiesce the\n  transmit path for every command.)\n- There are certain sequences of commands that need to be issued to\n  the hardware sequentially, with no other intervening commands.\n\nThis leads to an implementation of a \"firmware lock\" as a mutex that\ncan be taken recursively, and which is taken by both the low-level\ncommand submission function (mwl8k_post_cmd) as well as any users of\nthat function that require issuing of an atomic sequence of commands,\nand quiesces the transmit path whenever it\u0027s taken.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "950d5b0191dc3e71017f336017f75f6189f39f08",
      "tree": "1e61d8d2795ab278ea415e7228c289bf33fb29f2",
      "parents": [
        "23b339062f247e0be84eaabb15e17b403c4388b6"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 01:48:41 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:08 2009 -0400"
      },
      "message": "mwl8k: mwl8k_queue_work() cleanup\n\nDelete most of the mwl8k_work_struct fields and options, since most\nof them are unused or never changed from their defaults:\n- We always use priv-\u003econfig_wq, so delete the wqueue argument from\n  mwl8k_queue_work().\n- MWL8K_WQ_SPIN and MWL8K_WQ_POST_REQUEST are never used, as all\n  callers sleep for request completion, so sleep unconditionally.\n- MWL8K_WQ_FREE_WORKSTRUCT is never used.\n- MWL8K_WQ_TX_WAIT_EMPTY is always set, so assume it unconditionally.\n- timeout_ms/txwait_attempts/tx_timeout_ms are never changed from\n  their defaults, so just hardcode these in the workqueue worker.\n- step is never used.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "23b339062f247e0be84eaabb15e17b403c4388b6",
      "tree": "a8ceb91545c7ee21ac30350ef6f1b0c84c49d4bd",
      "parents": [
        "7595d67a06466cc00e3aae1b86544278b57481ee"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Fri Jul 17 05:21:04 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:07 2009 -0400"
      },
      "message": "mwl8k: mwl8k_txq_xmit() rework\n\nVarious mwl8k_txq_xmit changes:\n- Extract the QoS field before adding the DMA header.\n- Only write to tx-\u003estatus once, and only after all the other\n  descriptor fields have been set.\n- Do all tx state manipulation under the tx spinlock.\n- Remove the priv-\u003einconfig check, as all transmit queues will\n  be frozen during config cycles, so we won\u0027t ever be asked to\n  transmit if a config cycle is running.\n- Remove some more dead code.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7595d67a06466cc00e3aae1b86544278b57481ee",
      "tree": "5db4d9b2174ad9bb4390940e92141ad6f7315085",
      "parents": [
        "361c55cfaddaa36f0997c5a96948ba5888bfb992"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Mon Aug 17 23:59:40 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:07 2009 -0400"
      },
      "message": "mwl8k: implement idle mode\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "361c55cfaddaa36f0997c5a96948ba5888bfb992",
      "tree": "b380ea8e84e7dad2666a4ecb7229408dbff8b6a9",
      "parents": [
        "c3f967d301a76b7053d16817c34191964c457566"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 04:19:00 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:07 2009 -0400"
      },
      "message": "mwl8k: no need to hold -\u003etx_lock while setting the hardware interrupt mask\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c3f967d301a76b7053d16817c34191964c457566",
      "tree": "b04acd0cf4d33274d83245bca6a35576994ac801",
      "parents": [
        "d4b7057052236e81ab0788cc8df306dc02b0e7be"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 04:15:22 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:06 2009 -0400"
      },
      "message": "mwl8k: don\u0027t hardcode the number of transmit queues\n\nUse MWL8K_TX_QUEUES instead of a hardcoded \"4\" in a couple of places.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d4b7057052236e81ab0788cc8df306dc02b0e7be",
      "tree": "d5d25af33be54cafd251d56d7262f12bcce159f6",
      "parents": [
        "76266b2ad38c33fb2c1475cfeb35ed070adaba2b"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 12:44:45 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:06 2009 -0400"
      },
      "message": "mwl8k: don\u0027t touch \u0027command done\u0027 interrupt during firmware load\n\nSince firmware load commands don\u0027t generate \u0027command done\u0027 interrupts\nlike normal commands do, polling for command done interrupts just\nunnecessarily slows down the firmware load process.  Removing this bit\nof code speeds up loading a typical firmware image from 840 msec to\n180 msec.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "76266b2ad38c33fb2c1475cfeb35ed070adaba2b",
      "tree": "6e0abe8fbfd68d8627099358b300c830c99eb42e",
      "parents": [
        "240e86efd60e6bc232a072273a7f7794bcb035e0"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 11:07:09 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:06 2009 -0400"
      },
      "message": "mwl8k: dma header manipulations can\u0027t fail\n\nAdding and removing the DMA header that the mwl8k hardware requires\non tx and provides on rx can never fail, since we are guaranteed to\nhave enough headroom on the tx path to expand the packet, and we only\never shrink the packet on the rx path.  (And on both paths we are\nguaranteed to be the only user of the skb we are handling.)\n\nThis allows removing all of the skb clone handling in the tx and tx\nreclaim paths, and eliminates error checks in both the tx and rx\npaths, simplifying the code a bit more.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "240e86efd60e6bc232a072273a7f7794bcb035e0",
      "tree": "01beb81eaf7f3efb751edc63563a3c46454ef3ec",
      "parents": [
        "e81cd2d664fe5b75a0db9bb24b43c0dfbde32319"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 14:15:44 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:05 2009 -0400"
      },
      "message": "mwl8k: -\u003eadd_interface() is not called for monitor interfaces\n\nThere is no need to check for NL80211_IFTYPE_MONITOR in\n-\u003eadd_interface(), as this function is never called for monitor\ninterfaces.  Also, there is no need to advertise this bit in our\nwiphy\u0027s -\u003einterface_modes.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e81cd2d664fe5b75a0db9bb24b43c0dfbde32319",
      "tree": "80998d7d45d112c1fef92111189b996386ba595d",
      "parents": [
        "5539bb51295f2c9300a6e467a29bb62bcfe9f4bc"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Tue Aug 18 03:55:42 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:05 2009 -0400"
      },
      "message": "mwl8k: fix mwl8k_configure_filter() parameter lifetime issue\n\nmwl8k_configure_filter() passes pointers to total_flags and the\nmulticast address list to a workqueue function, while there is no\nguarantee that those pointers will still be valid by the time the\nworkqueue function runs.\n\nSolve this by passing total_flags by value, and by passing an\nalready built multicast address setup command packet to the workqueue\nfunction so that we don\u0027t have to look at the multicast address list\nitself outside of mwl8k_configure_filter().\n\nAlso, since -\u003econfigure_filter() can sleep now, wait synchronously\nfor the worker to finish.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5539bb51295f2c9300a6e467a29bb62bcfe9f4bc",
      "tree": "5cf48d75be9754bfd6c1658f54515fe7ab4963a0",
      "parents": [
        "0439b1f55646ea944b0d58337f5065b79a1c1be0"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 16:06:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:05 2009 -0400"
      },
      "message": "mwl8k: remove MWL8K_*_SLOTTIME defines\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0439b1f55646ea944b0d58337f5065b79a1c1be0",
      "tree": "3b9b5021c1979fa8366be126d882f9b99796ba1c",
      "parents": [
        "68ce38845c23443b15e374fb7362916c1231278e"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 12:34:02 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:05 2009 -0400"
      },
      "message": "mwl8k: remove MWL8K_WMM_* defines\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "68ce38845c23443b15e374fb7362916c1231278e",
      "tree": "9b3fa8d5183f26df9bbc9bf66402e4b7f1e21be0",
      "parents": [
        "c46563b714b09d44eec4d1fd8a0f53e79ddaa3aa"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 12:26:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:04 2009 -0400"
      },
      "message": "mwl8k: remove MWL8K_RADIO_*_PREAMBLE defines\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c46563b714b09d44eec4d1fd8a0f53e79ddaa3aa",
      "tree": "0edb88b4171a896120cce633357ecb62f52a13e3",
      "parents": [
        "ce9e2e1b8433c8795459a259ee87bc4e424e7c50"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 12:14:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:04 2009 -0400"
      },
      "message": "mwl8k: remove MWL8K_RADIO_* defines\n\nInstead of passing a flag bitmask to mwl8k_cmd_802_11_radio_control,\npass the \u0027enable\u0027 and \u0027force\u0027 arguments as separate parameters, and\nintroduce wrappers for the common cases of enabling and disabling\nwithout forcing.\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce9e2e1b8433c8795459a259ee87bc4e424e7c50",
      "tree": "7fd933e6da666aa648549c5d4129792bf6a87559",
      "parents": [
        "ff45fc60ad583f45ecf10a41f7dbecf78519bcc1"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 14:00:45 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:04 2009 -0400"
      },
      "message": "mwl8k: various coding style cleanups\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff45fc60ad583f45ecf10a41f7dbecf78519bcc1",
      "tree": "fc2e06f76400b6c6fe8c2126efc21e6b5ea4b58b",
      "parents": [
        "d89173f25228b8795af2d4b53e985cc44c729332"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 11:50:36 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:04 2009 -0400"
      },
      "message": "mwl8k: sort firmware command list by opcode, and trim unused commands\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d89173f25228b8795af2d4b53e985cc44c729332",
      "tree": "5ef89d8520427f4f6877d131a146693f88236fd9",
      "parents": [
        "c23b5a699471ea2ef9d146eae80e64836cfbf001"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 09:54:27 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:03 2009 -0400"
      },
      "message": "mwl8k: s/IEEE80211_ADDR_LEN/ETH_ALEN/g\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c23b5a699471ea2ef9d146eae80e64836cfbf001",
      "tree": "f604ff0b7e900b110060f380c5b5ef73beab4d2e",
      "parents": [
        "22e66a4c15b063aee5d03991c4b9629a3b0c4556"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Thu Jul 16 13:49:55 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:38:03 2009 -0400"
      },
      "message": "mwl8k: remove various unused struct members and defines\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "22e66a4c15b063aee5d03991c4b9629a3b0c4556",
      "tree": "fd1ceba19ae5189374c951b41b4874d23385627c",
      "parents": [
        "ff36041652fcb9f5c17bdbeb081414f69521f1af"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vasanth@atheros.com",
        "time": "Wed Aug 19 16:23:40 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:08 2009 -0400"
      },
      "message": "ath9k: Nuke struct ath9k_node_stats\n\nOther than ns_avgbrssi (Average beacon rssi) no data of\nath9k_node_stats is being used anywhere. Nuke this structure\nand move its only useful member to ar5416Anistate. Also cleanup\nthis redundant data in ath_softc.\n\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff36041652fcb9f5c17bdbeb081414f69521f1af",
      "tree": "f16b621fdaf648af95d18d0f7c1c4b81218e0793",
      "parents": [
        "035d0243ebbdbd5f8f07d6ce378c9a9b36415bc9"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vasanth@atheros.com",
        "time": "Thu Aug 20 13:41:14 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:08 2009 -0400"
      },
      "message": "ath9k: Fix bug in retrieving average beacon rssi\n\nCurrently the beacon rssi that LPF gives is divided and rounded\nup by ATH_RSSI_EP_MULTIPLIER twice. This will leave the incorrect rssi\nin ANI. Having correct rssi in ANI fixes the connection stability at\n\u003c 30dB rssi range. This patch removes the unncessary computation of average\nrssi over already valid average rssi. Also removes the redundant macros to\nfind average rssi.\n\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvasanth@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "035d0243ebbdbd5f8f07d6ce378c9a9b36415bc9",
      "tree": "be26939b0411ed337c583927e2f8866113e12f5d",
      "parents": [
        "11ba964d4f936609a04e8b9f2051f6027ef761ae"
      ],
      "author": {
        "name": "gregor kowski",
        "email": "gregor.kowski@gmail.com",
        "time": "Wed Aug 19 22:35:45 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:08 2009 -0400"
      },
      "message": "b43: add hardware tkip\n\nThis add hardware tkip for b43.\n\nSigned-off-by: Gregor Kowski \u003cgregor.kowski@gmail.com\u003e\nAcked-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "11ba964d4f936609a04e8b9f2051f6027ef761ae",
      "tree": "82bcec21fef9364e1fb27cb4091c7950eadcf7ad",
      "parents": [
        "5904d2067680e9bb73a4816fa6b9eec49355c9c8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Aug 19 19:45:50 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:07 2009 -0400"
      },
      "message": "mac80211: fix register_hw error path\n\n\"cfg80211: fix alignment problem in scan request\"\nintroduced a bug into the error path, because now\nwe allocate the entire scan request and not just\nthe channel list (the channel list is allocated\ntogether with the scan request) -- on errors we\nthus also need to free the entire scan request.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5904d2067680e9bb73a4816fa6b9eec49355c9c8",
      "tree": "8bb02d8a1e824ace7892c2e6a63758a989185f79",
      "parents": [
        "16a832e785820aa199641c77b2d6f4a443d2ec46"
      ],
      "author": {
        "name": "Gábor Stefanik",
        "email": "netrolller.3d@gmail.com",
        "time": "Tue Aug 18 19:18:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:07 2009 -0400"
      },
      "message": "b43: LP-PHY: Implement spec updates and remove resolved FIXMEs\n\nLarry has started re-checking all current routines against a new\nversion of the Broadcom MIPS driver. This patch implements the first\nround of changes he documented on the specs wiki.\n\nAlso remove a few FIXMEs regarding missing initial values for variables\nwith dynamic initial values where reading the values has been implemented.\n\nSigned-off-by: Gábor Stefanik \u003cnetrolller.3d@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "16a832e785820aa199641c77b2d6f4a443d2ec46",
      "tree": "dbd843a2f054d0b826802d5f596f0581b3ea33d7",
      "parents": [
        "30fab9e0aecf15ca79bb194bb603203f5e1fde66"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Wed Aug 19 16:08:22 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:07 2009 -0400"
      },
      "message": "cfg80211: allow cfg80211_connect_result with bssid \u003d\u003d NULL\n\nIn case of connection failure, the bssid info is not a must have.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "30fab9e0aecf15ca79bb194bb603203f5e1fde66",
      "tree": "2fb5762a1ac908f20792a43369241440bdd3b46d",
      "parents": [
        "415ad1efae1d5fe00d739e612d262eabda90f5e8"
      ],
      "author": {
        "name": "David Kilroy",
        "email": "kilroyd@googlemail.com",
        "time": "Wed Aug 19 00:44:43 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:07 2009 -0400"
      },
      "message": "orinoco: remove spare whitespace\n\nSigned-off-by: David Kilroy \u003ckilroyd@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "415ad1efae1d5fe00d739e612d262eabda90f5e8",
      "tree": "285f400386932f691849b3c0114c322b64214a88",
      "parents": [
        "eeef41854deae30ea304544f18684df70ae3f87b"
      ],
      "author": {
        "name": "David Kilroy",
        "email": "kilroyd@googlemail.com",
        "time": "Wed Aug 19 00:43:31 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:06 2009 -0400"
      },
      "message": "cfg80211: fix leaks of wdev-\u003econn-\u003eie\n\nThis only occurs in the following error situations:\n - driver calls connect_result with failure\n - error scheduling authentication on connect\n - error initiating scan (to get BSSID and channel) on\n   connect\n - userspace calls disconnect while in the SCANNING or\n   SCAN_AGAIN states\n\nSigned-off-by: David Kilroy \u003ckilroyd@googlemail.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "eeef41854deae30ea304544f18684df70ae3f87b",
      "tree": "c6824c4c75d0d8c50ac43df17d29ca3a33fcd737",
      "parents": [
        "5791ce18aa660df7d1dafebf6bd89d5aa05bd742"
      ],
      "author": {
        "name": "Christian Lamparter",
        "email": "chunkeey@web.de",
        "time": "Wed Aug 19 12:43:47 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:06 2009 -0400"
      },
      "message": "ar9170: refactor configure_filter\n\nThanks to \"mac80211: allow configure_filter callback to sleep\",\nwe no longer have to defer the work to the workqueue.\n\nSigned-off-by: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5791ce18aa660df7d1dafebf6bd89d5aa05bd742",
      "tree": "cbf4a555be3776dfaa52ffd3d6884253ac2ea1ac",
      "parents": [
        "d904dc17495581254442b7fd054e267f2605c8ec"
      ],
      "author": {
        "name": "Gábor Stefanik",
        "email": "netrolller.3d@gmail.com",
        "time": "Tue Aug 18 22:08:31 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:06 2009 -0400"
      },
      "message": "b43: LP-PHY: Two small spec updates\n\nThe specs are beginning to support rev3 LP-PHYs - implement one of\nthe changes needed for rev3 support.\nAlso, in the new MIPS driver, the \"Japan TX filter\" was renamed to\n\"analog TX filter init\" - however, calling it \"init\" is confusing,\nso name it \"set analog filter\", with a comment for easier future\nidentification.\n\nSigned-off-by: Gábor Stefanik \u003cnetrolller.3d@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d904dc17495581254442b7fd054e267f2605c8ec",
      "tree": "d314c2e2be22fb2acdd61913d097a7b0abca2cf8",
      "parents": [
        "afa620429ac6a636246f85d97cf205d6533e7fcb"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Tue Aug 18 20:33:12 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:05 2009 -0400"
      },
      "message": "rt2x00: bss_info_changed() callback is allowed to sleep\n\nThe bss_info_changed() callback function no longer needs\nto be atomic. Remove the scheduled work structure and\ncall into the driver directly.\n\nAdditionaly this makes the DRIVER_REQUIRE_SCHEDULED\nflag redundant so it can be removed.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "afa620429ac6a636246f85d97cf205d6533e7fcb",
      "tree": "64cb5eb25c4934dea5be320c29fced7bab51b3dc",
      "parents": [
        "ad002395fd230528281083f4be71855ed7e35b04"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Tue Aug 18 19:54:23 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:05 2009 -0400"
      },
      "message": "rt2x00: configure_filter() callback is allowed to sleep\n\nThe configure_filter() callback function no longer needs\nto be atomic. Remove the scheduled work structure and\ncall into the driver configure_filter() directly.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ad002395fd230528281083f4be71855ed7e35b04",
      "tree": "c2bccce17ad69dcfb454fe3a38ba68f0f210b5b5",
      "parents": [
        "21f8a73f829797eb7ebc12202b4c68e10e751ddb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Aug 18 19:51:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:05 2009 -0400"
      },
      "message": "cfg80211: fix dangling scan request checking\n\nMy patch \"cfg80211: fix deadlock\" broke the code it\nwas supposed to fix, the scan request checking. But\nit\u0027s not trivial to put it back the way it was, since\nthe original patch had a deadlock.\n\nNow do it in a completely new way: queue the check\noff to a work struct, where we can freely lock. But\nthat has some more complications, like needing to\nwait for it to be done before the wiphy/rdev can be\ndestroyed, so some code is required to handle that.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "21f8a73f829797eb7ebc12202b4c68e10e751ddb",
      "tree": "d6dff1fbb1d1b5994cff092c34a9c8c1d8ea304e",
      "parents": [
        "c8a61a7d33350eeec668fc6230ad55f5fa93209b"
      ],
      "author": {
        "name": "Reinette Chatre",
        "email": "reinette.chatre@intel.com",
        "time": "Tue Aug 18 10:25:05 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:04 2009 -0400"
      },
      "message": "ipw2x00: fix sparse warnings\n\nThis fixes:\n\n  CHECK   drivers/net/wireless/ipw2x00/ipw2100.c\ndrivers/net/wireless/ipw2x00/ipw2100.c:7888:22: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2100.c:7952:18: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2100.c:8000:18: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here\n  CC [M]  drivers/net/wireless/ipw2x00/ipw2100.o\n  CHECK   drivers/net/wireless/ipw2x00/ipw2200.c\ndrivers/net/wireless/ipw2x00/ipw2200.c:847:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:891:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:935:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:980:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:1016:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:1051:13: warning: symbol \u0027led\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:1823:13: warning: symbol \u0027channel\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min1\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol \u0027_min2\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:6228:28: warning: symbol \u0027channel\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:6369:20: warning: symbol \u0027channel\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:6857:12: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:7964:13: warning: symbol \u0027channel\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:8720:12: warning: symbol \u0027channel\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:9662:13: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:9720:13: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:9826:13: warning: symbol \u0027mode\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:10318:21: warning: symbol \u0027remaining_bytes\u0027 shadows an earlier one\ndrivers/net/wireless/ipw2x00/ipw2200.c:10184:13: originally declared here\ndrivers/net/wireless/ipw2x00/ipw2200.c:8338:45: warning: cast to restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:4414:21: warning: incorrect type in assignment (different base types)\ndrivers/net/wireless/ipw2x00/ipw2200.c:4414:21:    expected restricted __le16 [usertype] size\ndrivers/net/wireless/ipw2x00/ipw2200.c:4414:21:    got unsigned short [unsigned] [usertype] \u003cnoident\u003e\ndrivers/net/wireless/ipw2x00/ipw2200.c:6105:33: warning: incorrect type in initializer (different base types)\ndrivers/net/wireless/ipw2x00/ipw2200.c:6105:33:    expected restricted __le16 [usertype] tx_rates\ndrivers/net/wireless/ipw2x00/ipw2200.c:6105:33:    got unsigned short [unsigned] [usertype] rates_mask\ndrivers/net/wireless/ipw2x00/ipw2200.c:6124:29: warning: bad assignment (\u003e\u003e\u003d) to restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:6130:31: warning: restricted __le16 degrades to integer\ndrivers/net/wireless/ipw2x00/ipw2200.c:6140:23: warning: restricted __le16 degrades to integer\ndrivers/net/wireless/ipw2x00/ipw2200.c:6149:54: warning: restricted __le16 degrades to integer\ndrivers/net/wireless/ipw2x00/ipw2200.c:6151:37: warning: invalid assignment: \u0026\u003d\ndrivers/net/wireless/ipw2x00/ipw2200.c:6151:37:    left side has type restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:6151:37:    right side has type int\ndrivers/net/wireless/ipw2x00/ipw2200.c:6154:54: warning: restricted __le16 degrades to integer\ndrivers/net/wireless/ipw2x00/ipw2200.c:6156:37: warning: invalid assignment: \u0026\u003d\ndrivers/net/wireless/ipw2x00/ipw2200.c:6156:37:    left side has type restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:6156:37:    right side has type int\ndrivers/net/wireless/ipw2x00/ipw2200.c:6159:55: warning: restricted __le16 degrades to integer\ndrivers/net/wireless/ipw2x00/ipw2200.c:6161:37: warning: invalid assignment: \u0026\u003d\ndrivers/net/wireless/ipw2x00/ipw2200.c:6161:37:    left side has type restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:6161:37:    right side has type int\ndrivers/net/wireless/ipw2x00/ipw2200.c:6164:29: warning: invalid assignment: |\u003d\ndrivers/net/wireless/ipw2x00/ipw2200.c:6164:29:    left side has type restricted __le16\ndrivers/net/wireless/ipw2x00/ipw2200.c:6164:29:    right side has type unsigned short\ndrivers/net/wireless/ipw2x00/ipw2200.c:7853:29: warning: incorrect type in assignment (different base types)\ndrivers/net/wireless/ipw2x00/ipw2200.c:7853:29:    expected signed char [signed] [usertype] [explicitly-signed] rt_dbmnoise\ndrivers/net/wireless/ipw2x00/ipw2200.c:7853:29:    got restricted __le16 [usertype] noise\ndrivers/net/wireless/ipw2x00/ipw2200.c:7967:25: warning: incorrect type in initializer (different base types)\ndrivers/net/wireless/ipw2x00/ipw2200.c:7967:25:    expected signed char [signed] [usertype] [explicitly-signed] noise\ndrivers/net/wireless/ipw2x00/ipw2200.c:7967:25:    got restricted __le16 [usertype] noise\n\nSigned-off-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nCc: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c8a61a7d33350eeec668fc6230ad55f5fa93209b",
      "tree": "72978e2590de522d2c3fdad888590df4ac401dc0",
      "parents": [
        "e5539bcbf64fdb16af73b5c8caff9255307490b5"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@fifo99.com",
        "time": "Tue Aug 18 10:59:00 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:04 2009 -0400"
      },
      "message": "mac80211: New stat counters for multicast and unicast forwarded frames\n\nThis expands on the current fwded_frames stat counter which should be equal to\nthe total of these two new counters.  The new counters are called \"fwded_mcast\"\nand \"fwded_unicast\".\n\nSigned-off-by: Daniel Walker \u003cdwalker@fifo99.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e5539bcbf64fdb16af73b5c8caff9255307490b5",
      "tree": "e2247c5325ab86067ba2f2e3f31c341b528c9277",
      "parents": [
        "29508d122a5228c2a68d1e9a39251d3991b3cfef"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 18 10:50:34 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:03 2009 -0400"
      },
      "message": "wl1271: remove print_mac usage\n\nCC [M]  drivers/net/wireless/wl12xx/wl1271_main.o\ndrivers/net/wireless/wl12xx/wl1271_main.c: In function ‘wl1271_op_add_interface’:\ndrivers/net/wireless/wl12xx/wl1271_main.c:611: warning: ‘print_mac’ is deprecated (declared at include/linux/if_ether.h:142)\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "29508d122a5228c2a68d1e9a39251d3991b3cfef",
      "tree": "db2a2a8bf90e470397428be61a1404c10779defb",
      "parents": [
        "608b88cb34b0e70a538ee1fc334cc833ef691836"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 18 10:46:42 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:03 2009 -0400"
      },
      "message": "rc80211_pid_algo.c: remove unused variable declaration\n\nCC [M]  net/mac80211/rc80211_pid_algo.o\nnet/mac80211/rc80211_pid_algo.c: In function ‘rate_control_pid_rate_init’:\nnet/mac80211/rc80211_pid_algo.c:304: warning: unused variable ‘si’\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "608b88cb34b0e70a538ee1fc334cc833ef691836",
      "tree": "6d2a363cea722241581306964da6cff8724b407a",
      "parents": [
        "4c48381786159ba3f3d8a33d967aeb049341a220"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Mon Aug 17 18:07:23 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:03 2009 -0400"
      },
      "message": "ath: move regulatory info into shared common structure\n\nThis moves the shared regulatory structure into the\ncommon structure. We will use this ongoing for common\ndata.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4c48381786159ba3f3d8a33d967aeb049341a220",
      "tree": "4f746f31c80989412d39fcad7a9d631db25aa916",
      "parents": [
        "bcd64e0c20eafe6a3976c248833d5d8bcccdf0d9"
      ],
      "author": {
        "name": "Sujith",
        "email": "Sujith.Manoharan@atheros.com",
        "time": "Tue Aug 18 10:51:52 2009 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:03 2009 -0400"
      },
      "message": "ath9k: Fix TX poll cancelling\n\nIn ath9k_stop(), tx_complete_work was being cancelled twice.\nThis patch fixes it. Also, locking sc-\u003emutex should be done\nat the beginning.\n\nSigned-off-by: Sujith \u003cSujith.Manoharan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bcd64e0c20eafe6a3976c248833d5d8bcccdf0d9",
      "tree": "ed9d850d51f721b63d703f5c66ddb4b7f2b9268a",
      "parents": [
        "bfc32e6a9559d3e30925929cd9a9df7498f325db"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Mon Aug 17 23:33:56 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:02 2009 -0400"
      },
      "message": "wl1251: halt the embedded CPU before loading firmware\n\nAfter initial power-up, the embedded cpu is usually halted.  However,\nif we down the interface and only do a soft reset before bringing\nthe interface back up, it will still be running and the firmware\nloading code will bail out.  This change halts the CPU before loading\nthe firmware, enabling a second call to wl1251_boot() to succeed\nwithout a hard reset.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bfc32e6a9559d3e30925929cd9a9df7498f325db",
      "tree": "f0e5f1bdf902fe463fa994d44cafcab39b357380",
      "parents": [
        "92ed48e5230e8f5906dda0cc31715b3b7e3fe303"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Mon Aug 17 17:15:55 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:02 2009 -0400"
      },
      "message": "mac80211: Decouple fail_avg stats used by mesh from rate control algorithm.\n\nMesh uses the tx failure average to compute the (m)path metric.  This used to\nbe done inside the rate control module.  This patch breaks the dependency\nbetween the mesh stack and the rate control algorithm.  Mesh will now work\nindependently of the chosen rate control algorithm.\n\nThe mesh stack keeps a moving average of the average transmission losses for\neach mesh peer station.  If the fail average exceeds a certain threshold, the\npeer link is marked as broken.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "92ed48e5230e8f5906dda0cc31715b3b7e3fe303",
      "tree": "c7ae7801a11093fc57d5b603e9a78bc6c4979e27",
      "parents": [
        "cd80b684a08655e7dcc7a1c96d4b7e7ffa753017"
      ],
      "author": {
        "name": "Benoit PAPILLAULT",
        "email": "benoit.papillault@free.fr",
        "time": "Mon Aug 17 18:56:10 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:02 2009 -0400"
      },
      "message": "rt2x00: Add support for retry rates\n\nrt2800pci can handle different retry rates,\nit will always step 1 rate down after a failed\ntransmission so creating the retry rate list\nfor mac80211 is quite simple.\n\nSigned-off-by: Benoit PAPILLAULT \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cd80b684a08655e7dcc7a1c96d4b7e7ffa753017",
      "tree": "bf25a0f68834a8f8092b59afe4368fe6fcbfb588",
      "parents": [
        "534aff0288f49a2366b7e6fbb67ff035dea814d3"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:55:40 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:01 2009 -0400"
      },
      "message": "rt2x00: Fix MCS register intialization\n\nAccording to the original Ralink driver,\nLG_FBK_CFG0_OFDMMCS2FBK should be initialized to 9 rather then 3.\n\nBased on a patch for rt2800pci from Benoit\n\nSigned-off-by: Benoit PAPILLAULT \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "534aff0288f49a2366b7e6fbb67ff035dea814d3",
      "tree": "1ebcf7b3d1c4edc01e1df70a7097c66a12b39ac6",
      "parents": [
        "0fefe0fda4376eff97be965a41714da38fe4a36d"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:55:15 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:01 2009 -0400"
      },
      "message": "rt2x00: wireless CLI ID and packet ID must not be 0\n\nIn the TX descriptor the Packet ID must not be 0,\nso add 1 to the ID. The wireless CLI ID is not allowed\nto be 0 either, but also must be initialized with the\nwcid value rather then keyid.\n\nBased on a patch for rt2800pci from Benoit\n\nSigned-off-by: Benoit PAPILLAULT \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0fefe0fda4376eff97be965a41714da38fe4a36d",
      "tree": "089dc39ebe76dc74b4e42f791ed8b26f99aa1f8c",
      "parents": [
        "05a32730f16e7b91e9fd2d11f26db152e5c9a68d"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:54:50 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:01 2009 -0400"
      },
      "message": "rt2x00: Set SKBDESC_L2_PADDED in RX path\n\nWhen the RX descriptor indicates the frame was L2 padded,\nthe SKBDESC_L2_PADDED flag should be set to make sure the\nL2 padding is removed before it is send to mac80211.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "05a32730f16e7b91e9fd2d11f26db152e5c9a68d",
      "tree": "865dcd4bf8ef975154f6014d69022132d2499d9f",
      "parents": [
        "1738c9e42a9bb3705a3b03dde854f3db269e7bdd"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:54:47 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:00 2009 -0400"
      },
      "message": "rt2x00: Add new RF chip defines\n\nAdd new defines for RF chipsets which can be found\nby the driver. We don\u0027t have to check for these\nchips specifically yet, but it is better to have\nthe defines in now.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1738c9e42a9bb3705a3b03dde854f3db269e7bdd",
      "tree": "835a1d9ef953339f6543992d11e3b9f18c1e5a9a",
      "parents": [
        "73077c85458739169cdaf893a375b8bb3939d35a"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:53:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:00 2009 -0400"
      },
      "message": "rt2x00: Fix for rt2800usb for SHARED_KEY_TABLE initializations\n\nFixed comments about SHARED_KEY_TABLE_BASE and SHARED_KEY_MODE_BASE.\nFixed initialization loop for SHARED_KEY_MODE_ENTRY.\n\nBased on a patch for rt2800pci from Benoit.\n\nSigned-off-by: Benoit PAPILLAULT \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "73077c85458739169cdaf893a375b8bb3939d35a",
      "tree": "9d6154c259f17ce249784b4e4563976191ca01a9",
      "parents": [
        "5f1c07d924d3e670044911487aca057bb39b4e7e"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Mon Aug 17 18:53:24 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:00 2009 -0400"
      },
      "message": "rt2x00: Fix RFKILL polling\n\nThe rfkill_poll callback function in the drivers check a bit\nto see if the RFKILL key has been pressed. However when the\nbit is set it means the radio is active and the device can be\nused.\n\nThe wiphy_rfkill_set_hw_state() function expects the inversed,\nso \u00271\u0027 must be send when the radio must be disabled.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5f1c07d924d3e670044911487aca057bb39b4e7e",
      "tree": "167f1ca9e28531cf5bf511143b6c63562ba786b4",
      "parents": [
        "12d4bba0fd7ac50ca20d9ac1247a0de851850bb0"
      ],
      "author": {
        "name": "Gábor Stefanik",
        "email": "netrolller.3d@gmail.com",
        "time": "Fri Aug 14 21:19:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:59 2009 -0400"
      },
      "message": "b43: LP-PHY: Fix setting TX power control mode during RC calibration\n\nCall set_tx_power_control with a LPPHY_TXPCTL rather than an\nLPPHY_TX_PWR_CTL_CMD_MODE.\n\nSigned-off-by: Gábor Stefanik \u003cnetrolller.3d@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "12d4bba0fd7ac50ca20d9ac1247a0de851850bb0",
      "tree": "fdcaed678298fe69ffe8e70b50a121d61070d0e8",
      "parents": [
        "1de6f73c34fb9a74454a5b519cefd635b5e8ceb6"
      ],
      "author": {
        "name": "Gábor Stefanik",
        "email": "netrolller.3d@gmail.com",
        "time": "Fri Aug 14 20:29:47 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:59 2009 -0400"
      },
      "message": "b43: LP-PHY: Fix reading old mode in the set TX power control routine\n\nCheck the mode the hardware is in, not the mode we used the last time.\n\nSigned-off-by: Gábor Stefanik \u003cnetrolller.3d@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "1de6f73c34fb9a74454a5b519cefd635b5e8ceb6"
}
