)]}'
{
  "log": [
    {
      "commit": "4e6b79fa61091a0ed9b0af0f573cc257772cd88d",
      "tree": "cd3e9dca0355741713d038b0068cd4ba32f87b56",
      "parents": [
        "cadb7345d92628d46cccd3765cc15cb9cd6abccf"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 18 18:36:28 2008 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:16 2008 -0500"
      },
      "message": "libata: factor out ata_pci_activate_sff_host() from ata_pci_one()\n\nFactor out ata_pci_activate_sff_host() from ata_pci_one().  This does\nabout the same thing as ata_host_activate() but needs to be separate\nbecause SFF controllers use different and multiple IRQs in legacy\nmode.\n\nThis will be used to make SFF LLD initialization more flexible.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "35a10a80daa04b7316d6bac1b1402cc347c35b1e",
      "tree": "b62c64999bfb646ed8881eca3fae4bcbf6402506",
      "parents": [
        "723159c58371b860cf6ef38affd19d16290e4898"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 04 18:42:21 2008 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:15 2008 -0500"
      },
      "message": "libata: use dev_driver_string() instead of \"libata\" in libata-sff.c\n\nlibata-sff code used DRV_NAME which is hardcoded to \"libata\" when\nrequesting resources.  Use dev_driver_string() such that low level\ndriver names are used in resource listing.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0dc36888d4422140f9eaf50f24953ec109f750a3",
      "tree": "80253b1831849e4063b73c31c15011c5e4c48404",
      "parents": [
        "537b53c1692960b8b3b0324e886fbe48cb9e5c00"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Dec 18 16:34:43 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:14 2008 -0500"
      },
      "message": "libata: rename ATA_PROT_ATAPI_* to ATAPI_PROT_*\n\nATA_PROT_ATAPI_* are ugly and naming schemes between ATA_PROT_* and\nATA_PROT_ATAPI_* are inconsistent causing confusion.  Rename them to\nATAPI_PROT_* and make them consistent with ATA counterpart.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "76548eda8c47e50260bc87196d40b26ce7a7bcd6",
      "tree": "3e5d8e8627a3828e1b729274cfaf01ff13d59668",
      "parents": [
        "b9f8ab2dafba2dc12dd94e5d2db31d5cf495775f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Nov 19 14:34:56 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:09 2008 -0500"
      },
      "message": "libata-sff: tf_load\n\nJeff said he preferred that the SFF tf_load followed the spec and we\ndocumented that anyone who needed different overrode it, rather than it\nusing the -\u003echeck_status methods. No driver relies on the current behaviour.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "277d72a37431d200727189693b14488368b7c258",
      "tree": "40284a8d0ab950034bf85525f68fb1d37f7cb4be",
      "parents": [
        "b14dabcdb651ddd9f85c69c9042322c139e7da84"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jan 03 17:22:28 2008 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Jan 10 16:52:51 2008 -0500"
      },
      "message": "libata-sff: PCI IRQ handling fix\n\nIt is legitimate (although annoying and silly) for a PCI IDE controller\nnot to be assigned an interrupt and to be polled. The libata-sff code\nshould therefore not try and request IRQ 0 in this case.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2dcb407e61458ded17503d6bd12b8c064965368b",
      "tree": "6044e032197b84f9943a385b0c9dbb6656c3f97f",
      "parents": [
        "01e7ae8c13bb06a2ce622ebace33bb7e28ef596c"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 19 06:42:56 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:59:42 2007 -0400"
      },
      "message": "[libata] checkpatch-inspired cleanups\n\nTackle the relatively sane complaints of checkpatch --file.\n\nThe vast majority is indentation and whitespace changes, the rest are\n\n* #include fixes\n* printk KERN_xxx prefix addition\n* BSS/initializer cleanups\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "3a4fa0a25da81600ea0bcd75692ae8ca6050d165",
      "tree": "a4de1662e645c029cf3cf58f0646cbb1959861dc",
      "parents": [
        "18735dd8d2d37031b97f9e9e106acbaed01eb896"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Fri Oct 19 23:10:43 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Oct 19 23:10:43 2007 +0200"
      },
      "message": "Fix misspellings of \"system\", \"controller\", \"interrupt\" and \"necessary\".\n\nFix the various misspellings of \"system\", controller\", \"interrupt\" and\n\"[un]necessary\".\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "2af170dd241810212cbdbdc802ba7d39e3fb23b9",
      "tree": "3d16719aa102444337f161c457502704a4967a53",
      "parents": [
        "ab08ed1770140ebcf1be1657087689832b755874",
        "3be6cbd73f74b4a3da82cc7d6e1688a4ae595fc7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:08:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 15:08:35 2007 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  [libata] kill ata_sg_is_last()\n  Update libata driver for bf548 atapi controller against the 2.6.24 tree.\n  libata-sff: Correct use of check_status()\n  drivers/ata: add support to Freescale 3.0Gbps SATA Controller\n  pata_acpi: fix build breakage if !CONFIG_PM\n"
    },
    {
      "commit": "c80544dc0b87bb65038355e7aafdc30be16b26ab",
      "tree": "176349304bec88a9de16e650c9919462e0dd453c",
      "parents": [
        "0e9663ee452ffce0d429656ebbcfe69417a30e92"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Thu Oct 18 03:07:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "sparse pointer use of zero as null\n\nGet rid of sparse related warnings from places that use integer as NULL\npointer.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01839f6ddef011878e905d72786d95cee21ca039",
      "tree": "c381091011421a7232d081111a20bb13d78a4c0f",
      "parents": [
        "faf0b2e5afe7dae072d2715763c7f992b612b628"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Oct 15 19:25:29 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Oct 17 20:49:02 2007 -0400"
      },
      "message": "libata-sff: Correct use of check_status()\n\nata_check_status() does an SFF compliant check\nata_chk_status() does a generic call to ap-\u003eops-\u003echeck_status (usually\nata_check_status)\n\nlibata-sff uses the wrong one. Hardly suprising given the naming here,\nwhich ought to get fixed to ata_sff_check_status() perhaps ?\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "cbcdd87593a1d85c5c4b259945a3a09eee12814d",
      "tree": "ee03df963a12ec7f30f6c3a8742421daf2c34f50",
      "parents": [
        "e923090ddd9fef1d4e06dc6c5295e29baced19f3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Aug 18 13:14:55 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:37 2007 -0400"
      },
      "message": "libata: implement and use ata_port_desc() to report port configuration\n\nCurrently, port configuration reporting has the following problems.\n\n* iomapped address is reported instead of raw address\n* report contains irrelevant fields or lacks necessary fields for\n  non-SFF controllers.\n* host-\u003eirq/irq2 are there just for reporting and hacky.\n\nThis patch implements and uses ata_port_desc() and\nata_port_pbar_desc().  ata_port_desc() is almost identical to\nata_ehi_push_desc() except that it takes @ap instead of @ehi, has no\nlocking requirement, can only be used during host initialization and \"\n\" is used as separator instead of \", \".  ata_port_pbar_desc() is a\nhelper to ease reporting of a PCI BAR or an offsetted address into it.\n\nLLD pushes whatever description it wants using the above two\nfunctions.  The accumulated description is printed on host\nregistration after \"[S/P]ATA max MAX_XFERMODE \".\n\nSFF init helpers and ata_host_activate() automatically add\ndescriptions for addresses and irq respectively, so only LLDs which\nisn\u0027t standard SFF need to add custom descriptions.  In many cases,\nsuch controllers need to report different things anyway.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6d32d30f55020d766388df7515f771f68c973033",
      "tree": "ec0efe48460b5b3f177fed2698ccd04b7964359b",
      "parents": [
        "cb94c1cf5a6beffbd8935eb91227df0dd1987644"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Aug 15 05:38:46 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:34 2007 -0400"
      },
      "message": "[libata] Remove -\u003eirq_ack() hook, and ata_dummy_irq_on()\n\n* -\u003eirq_ack() is redundant to what the irq handler already\n  performs... chk-status + irq-clear.  Furthermore, it is only\n  called in one place, when screaming-irq-debugging is enabled,\n  so we don\u0027t want to bother with a hook just for that.\n\n* ata_dummy_irq_on() is only ever used in drivers that have\n  no callpath reaching -\u003eirq_on().  Remove .irq_on hook from\n  those drivers, and the now-unused ata_dummy_irq_on()\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "936fd7328657884d5a69a55666c74a55aa83ca27",
      "tree": "83a78a02d2c65ce835fe33882dfe5043d3240bff",
      "parents": [
        "f58229f8060055b08b34008ea08f31de1e2f003c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Aug 06 18:36:23 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:30 2007 -0400"
      },
      "message": "libata-link: linkify PHY-related functions\n\nMake the following PHY-related functions to deal with ata_link instead\nof ata_port.\n\n* sata_print_link_status()\n* sata_down_spd_limit()\n* ata_set_sata_spd_limit() and friends\n* sata_link_debounce/resume()\n* sata_scr_valid/read/write/write_flush()\n* ata_link_on/offline()\n\nThis patch introduces no behavior change.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "9af5c9c97dc9d599281778864c72b385f0c63341",
      "tree": "8359986bd42c4a9a5b1993078aa9ee4c7971ac3d",
      "parents": [
        "640fdb504941fa2b9f6f274716fc9f97f2bf6bff"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Aug 06 18:36:22 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:30 2007 -0400"
      },
      "message": "libata-link: introduce ata_link\n\nIntroduce ata_link.  It abstracts PHY and sits between ata_port and\nata_device.  This new level of abstraction is necessary to support\nSATA Port Multiplier, which basically adds a bunch of links (PHYs) to\na ATA host port.  Fields related to command execution, spd_limit and\nEH are per-link and thus moved to ata_link.\n\nThis patch only defines the host link.  Multiple link handling will be\nadded later.  Also, a lot of ap-\u003elink derefences are added but many of\nthem will be removed as each part is converted to deal directly with\nata_link instead of ata_port.\n\nThis patch introduces no behavior change.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e1cc9de8361f267101402a1181cff4d3d3225a6d",
      "tree": "ddb57a3bd49a33cb869a399daa6ba094f20fa26c",
      "parents": [
        "0e3dbc01d53940fe10e5a5cfec15ede3e929c918"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Sep 20 15:03:07 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 20 15:58:26 2007 -0400"
      },
      "message": "libata-sff: Fix documentation\n\nCode moved to ioread/iowrite but the comment didn\u0027t\nAlso note a posting issue\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6fdc99a224bd52020c602c3d4d57e5f8a75f6bb8",
      "tree": "34eccedf0dd9d24e6c9b73d7d24bacaac7595446",
      "parents": [
        "dbf0c89c80e47a2a132048dcded0dcc2a59c74ad"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jul 26 18:41:30 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Aug 01 10:00:56 2007 -0400"
      },
      "message": "libata-sff; Unbreak non DMA capable controllers again\n\nSeems nobody else is checking/testing this case as it keeps getting\nhorked.\n\nIf we have no BAR4 mapping on an SFF controller this is *NOT* an error,\nit just means it isn\u0027t doing BMDMA.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fe36cb53cfd82f3c0796a0826e1c9caf198c8f97",
      "tree": "81c85f1b6e8277ba075eae74e6dd4bec22106896",
      "parents": [
        "f3a03b0934fb83a030ccd3e6f1fbe845a9c44d49"
      ],
      "author": {
        "name": "Petr Vandrovec",
        "email": "petr@vandrovec.name",
        "time": "Fri Jul 20 07:44:44 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jul 20 07:44:44 2007 -0400"
      },
      "message": "[libata] Fix reported task file values in sense data\n\nata_tf_read was setting HOB bit when lba48 command was submitted, but\nwas not clearing it before reading \"normal\" data.  As it is only place\nwhich sets HOB bit in control register, and register reads should not\nbe affected by other bits, let\u0027s just clear it when we are done with\nreading upper bytes so non-48bit commands do not have to touch ctl\nat all.\n\npata_scc suffered from same problem...\n\nSigned-off-by: Petr Vandrovec \u003cpetr@vandrovec.name\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f3a03b0934fb83a030ccd3e6f1fbe845a9c44d49",
      "tree": "286f7277ae99cd9c0f01d7196b45eb92d9c8cfe6",
      "parents": [
        "dcd0344775c1c0bf8ff3b9541863beea5088a7c9"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jul 16 11:23:03 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jul 20 07:16:24 2007 -0400"
      },
      "message": "Correct comment in libata-sff.c\n\nThe filename in the file header is incorrect.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d583bc18812f8da52bf25eef9cd111e5fd46a6ab",
      "tree": "7b886a4ce61b7c0bf8085da5e56b323a9a2fa193",
      "parents": [
        "35142ddbf7d81ff3f1d9521611e734b8d5014df2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Jul 04 18:02:07 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Jul 10 21:27:09 2007 -0400"
      },
      "message": "libata: simplify PCI legacy SFF host handling\n\nWith PCI resource fix up for legacy hosts.  We can use the same code\npath to allocate IO resources and initialize host for both legacy and\nnative SFF hosts.  Only IRQ requesting needs to be different.\n\nRename ata_pci_*_native_host() to ata_pci_*_sff_host(), kill all\nlegacy specific functions and use the renamed functions instead.  This\nsimplifies code a lot.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4031826b3ca40982880f6b9f2282c7d7fad60d77",
      "tree": "69dba5acc2180bd34752483a2ce777c51686b01d",
      "parents": [
        "aa2e09da2a332e748532aa2a71b090e7e7c3203d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Jul 03 01:38:47 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Jul 03 10:06:35 2007 -0400"
      },
      "message": "libata: fix assigned IRQ reporting\n\nhost-\u003eirq and host-\u003eirq2 should be set before ata_host_register() for\nIRQ reporting to work.  Move up host-\u003eirq assignment in\nata_host_activate() and add it to ata_pci_init_one() native path and\npata_cs5520.\n\nThe port info printing in ata_host_register() doesn\u0027t fit all the\ndifferent controllers.  It should probably be moved out to LLDs with\nsome helpers in the future.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d92e74d353345d19f762e9501a50b0a5f43f7ba8",
      "tree": "9a526823ddba8dd8cd07bb5d918acf7c5e820db7",
      "parents": [
        "0522b2869d89b095bf417c8cc6fa404842e91903"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jun 07 16:19:15 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Jun 09 22:40:28 2007 -0400"
      },
      "message": "libata-core/sff: Fix multiple assumptions about DMA\n\nThe ata IRQ ack functions are only used when debugging. Unfortunately\nalmost every controller that calls them can cause crashes in some\nconfigurations as there are missing checks for bmdma presence.\n\nIn addition ata_port_start insists of installing DMA buffers and pad\nbuffers for controllers regardless. The SFF controllers actually need to\nmake that decision dynamically at controller setup time and all need the\nsame helper - so we add ata_sff_port_start. Future patches will switch\nthe SFF drivers to use this.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1626aeb881236c8cb022b5e4ca594146a951d669",
      "tree": "30f3457e4b5d76e62ee192fcc0d52b0ee8a829df",
      "parents": [
        "920a4b1038e442700a1cfac77ea7e20bd615a2c3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri May 04 12:43:58 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri May 11 18:09:18 2007 -0400"
      },
      "message": "libata: clean up SFF init mess\n\nThe intention of using port_mask in SFF init helpers was to eventually\nsupport exoctic configurations such as combination of legacy and\nnative port on the same controller.  This never became actually\nnecessary and the related code always has been subtly broken one way\nor the other.  Now that new init model is in place, there is no reason\nto make common helpers capable of handling all corner cases.  Exotic\ncases can simply dealt within LLDs as necessary.\n\nThis patch removes port_mask handling in SFF init helpers.  SFF init\nhelpers don\u0027t take n_ports argument and interpret it into port_mask\nanymore.  All information is carried via port_info.  n_ports argument\nis dropped and always two ports are allocated.  LLD can tell SFF to\nskip certain port by marking it dummy.  Note that SFF code has been\ntreating unuvailable ports this way for a long time until recent\nbreakage fix from Linus and is consistent with how other drivers\nhandle with unavailable ports.\n\nThis fixes 1-port legacy host handling still broken after the recent\nnative mode fix and simplifies SFF init logic.  The following changes\nare made...\n\n* ata_pci_init_native_host() and ata_init_legacy_host() both now try\n  to initialized whatever they can and mark failed ports dummy.  They\n  return 0 if any port is successfully initialized.\n\n* ata_pci_prepare_native_host() and ata_pci_init_one() now doesn\u0027t\n  take n_ports argument.  All info should be specified via port_info\n  array.  Always two ports are allocated.\n\n* ata_pci_init_bmdma() exported to be used by LLDs in exotic cases.\n\n* port_info handling in all LLDs are standardized - all port_info\n  arrays are const stack variable named ppi.  Unless the second port\n  is different from the first, its port_info is specified as NULL\n  (tells libata that it\u0027s identical to the last non-NULL port_info).\n\n* pata_hpt37x/hpt3x2n: don\u0027t modify static variable directly.  Make an\n  on-stack copy instead as ata_piix does.\n\n* pata_uli: It has 4 ports instead of 2.  Don\u0027t use\n  ata_pci_prepare_native_host().  Allocate the host explicitly and use\n  init helpers.  It\u0027s simple enough.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "dc87c3985e9b442c60994308a96f887579addc39",
      "tree": "3299ea602d673f11739b4d3656e9ab069ec7269b",
      "parents": [
        "14e38ac823b7b25e3f4e563c182f93fde78167d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 17:43:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Apr 30 17:43:48 2007 -0700"
      },
      "message": "libata: honour host controllers that want just one host\n\nThe Marvell IDE interface on my machine would hit a BUG_ON() in\nlib/iomem.c because it was calling ata_pci_init_one() specifying just a\nsingle port on the host, but that would actually end up trying to\ninitialize two ports, the second one with bogus information.\n\nThis fixes \"ata_pci_init_one()\" so that it actually passes down the\nn_ports variable that it got from the low-level driver to the host\nallocation routine (\"ata_host_alloc_pinfo()\"), which results in the ATA\nlayer actually having the correct port number information.\n\nAnd in order to make it all work, I also needed to fix a few places that\nhad incorrectly hard-coded the fact that a host always had exactly two\nports (both ata_pci_init_bmdma() and ata_request_legacy_irqs() would\njust always iterate over both ports).\n\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6bfff31e77cfa1b13490337e5a4dbaa3407e83ac",
      "tree": "89f7dc5379453381aed939741fc3a7e46b0465fa",
      "parents": [
        "5d728824efeda61d304153bfcf1378a3c18b7d70"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Apr 17 23:44:08 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:06 2007 -0400"
      },
      "message": "libata: kill probe_ent and related helpers\n\nAll drivers are converted to new init model.  Kill probe_ent,\nata_device_add() and ata_pci_init_native_mode().\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "21b0ad4fb8306ac2bf5a249ffc978b1b8924c7d0",
      "tree": "9f82cc6a4bca146ce1021f0825cc12f18f9063b9",
      "parents": [
        "d491b27b1959565671e2c05dff09b5f535a854ce"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Apr 17 23:44:07 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:03 2007 -0400"
      },
      "message": "libata: add init helpers including ata_pci_prepare_native_host()\n\nThese will be used to convert LLDs to new init model.\n\n* Add irq_handler field to port_info.  In new init model, requesting\n  IRQ is LLD\u0027s responsibility and libata doesn\u0027t need to know about\n  irq_handler.  Most LLDs can simply register their irq_handler but\n  some need different irq_handler depending on specific chip.  The\n  added port_info-\u003eirq_handler field can be used by LLDs to select\n  the matching IRQ handler in such cases.\n\n* Add ata_dummy_port_info.\n\n* Implement ata_pci_prepare_native_host(), a helper to alloc ATA host,\n  acquire all resources and init the host in one go.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d491b27b1959565671e2c05dff09b5f535a854ce",
      "tree": "207711a735f7460649f21bd9eedff04eb55afa11",
      "parents": [
        "0f834de3ea61aacacf1fac59ba9e82680f83c846"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Apr 17 23:44:07 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:03 2007 -0400"
      },
      "message": "libata: convert native PCI host handling to new init model\n\nConvert native PCI host handling to alloc-init-register model.  New\nfunction ata_pci_init_native_host() follows the new init model and\nreplaces ata_pci_init_native_mode().  As there are remaining LLD\nusers, the old function isn\u0027t removed yet.\n\nata_pci_init_one() is reimplemented using the new function and now\nfully converted to new init model.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0f834de3ea61aacacf1fac59ba9e82680f83c846",
      "tree": "3b99ea99281e04ab6dd436f2954981f2cce889bb",
      "parents": [
        "f5cda257296fbd3683b1f568f2d94d3caaacf74d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Apr 17 23:44:07 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:03 2007 -0400"
      },
      "message": "libata: convert legacy PCI host handling to new init model\n\nConvert legacy PCI host handling to alloc-init-register model.\nata_init_legacy_host(), ata_request_legacy_irqs() and\nata_pci_init_bmdma() are separated out and follow the new init model.\n\nThe two legacy handling functions use separate ata_legacy_devres\ninstead of generic devm_* resources.  This reduces devres overhead for\nlegacy hosts which was a bit high because it didn\u0027t use PCI/iomap\nmerged resoruces.\n\nata_pci_init_one() is rewritten in terms of the aboved functions but\nnative mode handling is still using the old method.  Conversion will\nbe completed when native mode handling is updated.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "55a6adeea4077521b4bba1dfe674f5835157a00b",
      "tree": "908e61d7a0a828bc9625b38bc1e22e0645230ade",
      "parents": [
        "17199b187b5d9a22f2ec835c9fdb38302501b918"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Mar 09 19:43:35 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:02 2007 -0400"
      },
      "message": "libata: fix native mode disabled port handling\n\nDisabled port handling in ata_pci_init_native_mode() is slightly\nbroken in that it may end up using the wrong port_info.  This patch\nupdates it such that disables ports are made dummy as done in the\nlegacy and other cases.\n\nWhile at it, fix indentation in ata_resources_present().\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8cdfb29c0cd8018f92214c11c631d8926f4cb032",
      "tree": "d4a74d25c301e4c045ca21c45dbcbeadde234548",
      "parents": [
        "e424675f152572d8d2365e351b90bfd81686a150"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 09 10:54:42 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:15:59 2007 -0400"
      },
      "message": "libata/IDE: remove combined mode quirk\n\nBoth old-IDE and libata should be able handle all controllers and\ndevices found using normal resource reservation methods.\n\nThis eliminates the awful, low-performing split-driver configuration\nwhere old-IDE drove the PATA portion of a PCI device, in PIO-only mode,\nand libata drove the SATA portion of the /same/ PCI device, in DMA mode.\nTypically vendors would ship SATA hard drive / PATA optical\nconfiguration, which would lend itself to slow (PIO-only) CD-ROM\nperformance.\n\nFor Intel users running in combined mode, it is now wholly dependent on\nyour driver choice (potentially link order, if you compile both drivers\nin) whether old-IDE or libata will drive your hardware.\n\nIn either case, you will get full performance from both SATA and PATA\nports now, without having to pass a kernel command line parameter.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a76b62ca70662cd0ca98edf366c6637009a95f7d",
      "tree": "1f93b3bec4a77ed3146a1d9de29140c525b35479",
      "parents": [
        "9d2c7c75f889a3eefad016c71f651b0796e0a6e9"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Fri Mar 09 09:34:07 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:15:58 2007 -0400"
      },
      "message": "libata: Change prototype of mode_filter to remove ata_port*\n\nWith Tejun having added adev-\u003eap some time ago we can get rid of the\nalmost unused port being passed to mode filters. And while we are\ndoing filters, lets turn on the !IORDY filter as well.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\n\nWith some hand massaging from\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a84471fe269c38ea3725345c43ad64e5f489bea2",
      "tree": "0f07513cb4c072cd867292b389b50393b3ebe093",
      "parents": [
        "fb621e2fde735abab854586d52c96c5624bcb5b8"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Feb 26 05:51:33 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Feb 26 05:51:33 2007 -0500"
      },
      "message": "[libata] Trim trailing whitespace.\n\nNo code changes.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "44877b4e22f391d39c6589412106a3668e81a05b",
      "tree": "10bf134c2c8c15e3504d67461b42f53c6de88523",
      "parents": [
        "5ce0cf6fafd02fb4c43fc1a1bee6069d6c0a36b1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Feb 21 01:06:51 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Feb 21 04:58:20 2007 -0500"
      },
      "message": "libata: s/ap-\u003eid/ap-\u003eprint_id/g\n\nata_port has two different id fields - id and port_no.  id is\nsystem-wide 1-based unique id for the port while port_no is 0-based\nhost-wide port number.  The former is primarily used to identify the\nATA port to the user in printk messages while the latter is used in\nvarious places in libata core and LLDs to index the port inside the\nhost.\n\nThe two fields feel quite similar and sometimes ap-\u003eid is used in\nplace of ap-\u003eport_no, which is very difficult to spot.  This patch\nrenames ap-\u003eid to ap-\u003eprint_id to reduce the possibility of such bugs.\n\nSome printk messages are adjusted such that id string (ata%u[.%u])\nisn\u0027t printed twice and/or to use ata_*_printk() instead of hardcoded\nid format.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "836250069fc0eeebe8b6aed772281535cc6e34f9",
      "tree": "73c886ae7fd75dd2c9b5b17e11ea3b6b76b42fed",
      "parents": [
        "7f25377043925554cb9f3f9d8ada3390f71a5d10"
      ],
      "author": {
        "name": "Akira Iguchi",
        "email": "akira2.iguchi@toshiba.co.jp",
        "time": "Fri Jan 26 16:27:32 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:38 2007 -0500"
      },
      "message": "libata: add another IRQ calls (core and headers)\n\nThis patch is against the libata core and headers.\n\nTwo IRQ calls are added in ata_port_operations.\n- irq_on() is used to enable interrupts.\n- irq_ack() is used to acknowledge a device interrupt.\n\nIn most drivers, ata_irq_on() and ata_irq_ack() are used for\nirq_on and irq_ack respectively.\n\nIn some drivers (ex: ahci, sata_sil24) which cannot use them\nas is, ata_dummy_irq_on() and ata_dummy_irq_ack() are used.\n\nSigned-off-by: Kou Ishizaki \u003ckou.ishizaki@toshiba.co.jp\u003e\nSigned-off-by: Akira Iguchi \u003cakira2.iguchi@toshiba.co.jp\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0d5ff566779f894ca9937231a181eb31e4adff0e",
      "tree": "d1c7495c932581c1d41aa7f0fdb303348da49106",
      "parents": [
        "1a68ff13c8a9b517de3fd4187dc525412a6eba1b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Feb 01 15:06:36 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:38 2007 -0500"
      },
      "message": "libata: convert to iomap\n\nConvert libata core layer and LLDs to use iomap.\n\n* managed iomap is used.  Pointer to pcim_iomap_table() is cached at\n  host-\u003eiomap and used through out LLDs.  This basically replaces\n  host-\u003emmio_base.\n\n* if possible, pcim_iomap_regions() is used\n\nMost iomap operation conversions are taken from Jeff Garzik\n\u003cjgarzik@pobox.com\u003e\u0027s iomap branch.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f0d36efdc624beb3d9e29b9ab9e9537bf0f25d5b",
      "tree": "eac4efb465aa682d6eaac61f76b3174ffd9fd8cd",
      "parents": [
        "0529c159dbdd79794796c1b50b39442d72efbe97"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Jan 20 16:00:28 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:37 2007 -0500"
      },
      "message": "libata: update libata core layer to use devres\n\nUpdate libata core layer to use devres.\n\n* ata_device_add() acquires all resources in managed mode.\n\n* ata_host is allocated as devres associated with ata_host_release.\n\n* Port attached status is handled as devres associated with\n  ata_host_attach_release().\n\n* Initialization failure and host removal is handedl by releasing\n  devres group.\n\n* Except for ata_scsi_release() removal, LLD interface remains the\n  same.  Some functions use hacky is_managed test to support both\n  managed and unmanaged devices.  These will go away once all LLDs are\n  updated to use devres.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "18d90deb07ed6fc1818b0f0b326ecc788cea514e",
      "tree": "47f63efffde8ae10c32d43d346fbb4ef95beef2a",
      "parents": [
        "0feb573f1588f3204a4558896c73703bc54d1862"
      ],
      "author": {
        "name": "Alan",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jan 24 11:42:38 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:34 2007 -0500"
      },
      "message": "libata: trivial stuff\n\nReadability/typos etc\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4112e16a7c606a80810d22d55bfc742eaa61fecb",
      "tree": "c48274decc14c4d71dd99f9c3f93087698e767f4",
      "parents": [
        "d73f30e1c9a9af14757fa5bf4014343926047156"
      ],
      "author": {
        "name": "Alan",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 08 12:10:05 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:30 2007 -0500"
      },
      "message": "libata-sff: Don\u0027t try and activate channels which are not in use\n\nAn ATA controller in native mode may have one or more channels disabled\nand not assigned resources. In that case the existing code crashes trying\nto access I/O ports 0-7.\n\nAdd the neccessary check.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8cdf92a98fa0f91068615443f2a8597b7f2c34ca",
      "tree": "c33ae8216599533068dbcf2ef46c19a1f5b942a9",
      "parents": [
        "dfd7a3db3898e299bdc25f0c77081a8632b3a73c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Jan 01 19:31:15 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Jan 26 17:27:40 2007 -0500"
      },
      "message": "Fix Maple PATA IRQ assignment.\n\nOn the Maple board, the AMD8111 IDE is in legacy mode... except that it\nappears on IRQ 20 instead of IRQ 15. For drivers/ide this was handled by\nthe architecture\u0027s \"pci_get_legacy_ide_irq()\" function, but in libata we\njust hard-code the numbers 14 and 15.\n\nThis patch provides asm-powerpc/libata-portmap.h which maps the IRQ as\nappropriate, having added a pci_dev argument to the\nATA_{PRIM,SECOND}ARY_IRQ macros.\n\nThere\u0027s probably a better way to do this -- especially if we observe\nthat the _only_ case in which this seemingly-generic\n\"pci_get_legacy_ide_irq()\" function returns anything other than 14 and\n15 for primary and secondary respectively is the case of the AMD8111 on\nthe Maple board -- couldn\u0027t we handle that with a special case in the\npata_amd driver, or perhaps with a PCI quirk for Maple to switch it into\nnative mode during early boot and assign resources properly?\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "61dd08c6c8d2b4ede530e43c01fa72f789ef65b1",
      "tree": "ed50d46e0b8f089cf97aba54aa3e38ed3c1af57b",
      "parents": [
        "b2a8bbe67d73631c71492fd60b757fc50a87f182"
      ],
      "author": {
        "name": "Alan",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jan 25 15:09:05 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Jan 25 18:27:16 2007 -0500"
      },
      "message": "libata-sff: Don\u0027t call bmdma_stop on non DMA capable controllers\n\nFixes bogus accesses to ports 0-15 with a non DMA capable controller.\nThis I think should go in for 2.6.20\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b2a8bbe67d73631c71492fd60b757fc50a87f182",
      "tree": "b6a04a5ce8eee52a18fc690a9a1e1f7c1f93ded2",
      "parents": [
        "0291f95fdb5fcd91cc077aafabea2c5b109fa8a8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Jan 25 19:40:05 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Jan 25 17:26:01 2007 -0500"
      },
      "message": "libata: implement ATA_FLAG_IGN_SIMPLEX and use it in sata_uli\n\nSome uli controllers have stuck SIMPLEX bit which can\u0027t be cleared\nwith ata_pci_clear_simplex(), but the controller is capable of doing\nDMAs on both channels simultaneously.  Implement ATA_FLAG_IGN_SIMPLEX\nwhich makes libata ignore the simplex bit and use it in sata_uli.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "dc3c3377f03634d351fafdfe35b237b283586c04",
      "tree": "e97c4a7dfeb45cd965c46cfa146fa426199104e8",
      "parents": [
        "e22a9a8b703d05f13366c3f2e7e1aa0550bb5ca6"
      ],
      "author": {
        "name": "Alan",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Jan 02 11:58:34 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Tue Jan 02 08:20:51 2007 -0800"
      },
      "message": "[PATCH] libata: fix combined mode\n\nThis is a slight variant on the patch I posted December 16th to fix\nlibata combined mode handling. The only real change is that we now\ncorrectly also reserve BAR1,2,4. That is basically a neatness issue.\n\nJeff was unhappy about two things\n\n1. That it didn\u0027t work in the case of one channel native one channel\nlegacy.\n\nThis is a silly complaint because the SFF layer in libata doesn\u0027t handle\nthis case yet anyway.\n\n2. The case where combined mode is in use and IDE\u003dn.\n\nIn this case the libata quirk code reserves the resources in question\ncorrectly already.\n\nOnce the combined mode stuff is redone properly (2.6.21) then the entire\nmess turns into a single pci_request_regions() for all cases and all the\nugly resource hackery goes away.\n\nI\u0027m sending this now rather than after running full test suites so that\nit can get the maximal testing in a short time. I\u0027ll be running tests on\nthis after lunch.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nAcked-by: Alessandro Suardi \u003calessandro.suardi@gmail.com\u003e\nAcked-by: Theodore Tso \u003ctytso@mit.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0f0a3ad3741fd93461fcfb85dc577103c58d9be8",
      "tree": "1d91117b58b6c3878f6b346e8e8f4c7b93dbca9f",
      "parents": [
        "ea54763f8a7c51b9f8fcb14431812ae63fcbaf96"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Nov 17 12:24:22 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Dec 03 17:56:24 2006 +0900"
      },
      "message": "[PATCH] libata: make sure IRQ is cleared after ata_bmdma_freeze()\n\nNow that BMDMA status is recorded in irq handler.  ata_bmdma_freeze()\nis free to manipulate host status.  Under certain circumstances, some\ncontrollers (ICH7 in enhanced mode w/ IRQ shared) raise IRQ when CTL\nregister is written to and ATA_NIEN doesn\u0027t mask it.\n\nThis patch makes ata_bmdma_freeze() clear all pending IRQs after\nfreezing a port.  This change makes explicit clearing in\nata_device_add() unnecessary and thus kills it.  The removed code was\nSFF-specific and was in the wrong place.\n\nNote that -\u003efreeze() handler is always called under ap-\u003elock held and\nirq disabled.  Even if CTL manipulation causes stuck IRQ, it\u0027s cleared\nimmediately.  This should be safe (enough) even in SMP environment.\nMore correct solution is to mask the IRQ from IRQ controller but that\nwould be an overkill.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "ea54763f8a7c51b9f8fcb14431812ae63fcbaf96",
      "tree": "913b24b4f58cec489e9939f4afbfe51f82f237a9",
      "parents": [
        "f84e7e41e1b88547218a3c3b1eb528005e9afdb4"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Nov 17 12:06:21 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Dec 03 17:56:24 2006 +0900"
      },
      "message": "[PATCH] libata: move BMDMA host status recording from EH to interrupt handler\n\nFor certain errors, interrupt handler alter BMDMA host status before\nentering EH (clears active and intr).  Thus altered BMDMA host status\nvalue is recorded by BMDMA EH and reported to user.  Move BMDMA host\nstatus recording from EH to interrupt handler.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "8070217d301d0ceab7d0c255d7b9d796256d37e7",
      "tree": "7a256796645aef3b7a33b6b00244062bc42a9eee",
      "parents": [
        "582982e6991d6718ddadf8751072b50a850dde48"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Nov 17 16:22:27 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Dec 03 17:56:23 2006 +0900"
      },
      "message": "[PATCH] libata: set IRQF_SHARED for legacy PCI IDE IRQs\n\nThere are machines out there which share legacy PCI IDE IRQs w/ other\ndevices.  libata SFF interrupt/HSM code is ready for shared IRQ and\nhas been setting IRQF_SHARED for devices in native PCI mode.  Device\nin legacy mode is still a PCI device and thus supposedly uses\nactive-low level triggered IRQ.\n\nMachines with such setup should be quite rare and w/o this flag libata\nis likely to fail loading and render the system unuseable.  Also, IDE\ndriver has been setting IRQF_SHARED for devices in legacy mode for a\nlooooong time.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "90088bb41200b4da962282dfd45db82544adac3b",
      "tree": "84241a4af54715469dd237bd6925f46530f2b5b7",
      "parents": [
        "d1adc1bbd6dde3e05a91e2d3e6ab42d202ea61d5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Oct 09 11:10:26 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 01 22:40:28 2006 -0500"
      },
      "message": "[PATCH] libata: move ata_irq_on() into libata-sff.c\n\nata_irq_on() isn\u0027t used outside of libata core layer.  The function is\nTF/SFF interface specific but currently used by core path with some\nhack too.  Move it from include/linux/libata.h to\ndrivers/ata/libata-sff.c.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fbbb262d9ea9bdbd79d7058271560e9990bc62d3",
      "tree": "533ec01bf945518c99e71ec2b32c5fb426ab812a",
      "parents": [
        "6e9d8629b5503175a4425722a1ef13eed232c650"
      ],
      "author": {
        "name": "Robert Hancock",
        "email": "hancockr@shaw.ca",
        "time": "Fri Oct 27 19:08:41 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 01 22:40:27 2006 -0500"
      },
      "message": "[PATCH] sata_nv ADMA/NCQ support for nForce4\n\nThis patch adds support for ADMA mode on NVIDIA nForce4 (CK804/MCP04) SATA\ncontrollers to the sata_nv driver.  Benefits of ADMA mode include:\n\n- NCQ support\n\n- Reduced CPU overhead (controller DMAs command information from memory\n  instead of them being pushed in by the CPU)\n\n- Full 64-bit DMA support\n\nADMA mode is enabled by default in this version.  To disable it, set the\nmodule parameter adma_enabled\u003d0.\n\nSigned-off-by: Robert Hancock \u003chancockr@shaw.ca\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8eb166bf805cc1c1d38d57211e8737631376b9ba",
      "tree": "d24a11802b064f0629ea2501a6e2ae360abf2e1d",
      "parents": [
        "12a87d36b3c5cb76a182c35f40d959a615d1c862"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Oct 16 16:24:50 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Oct 21 15:18:59 2006 -0400"
      },
      "message": "[PATCH] libata-sff: Allow for wacky systems\n\nThere are some Linux supported platforms that simply cannot hit the low\nI/O addresses used by ATA legacy mode PCI mappings. These platforms have\na window for PCI space that is fixed by the board logic and doesn\u0027t\ninclude the neccessary locations.\n\nProvide a config option so that such platforms faced with a controller\nthat they cannot support simply error it and punt\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d639ca94188fedbd8cfde1ab4ed9e9878ab2f01e",
      "tree": "07795198224b43bf96a1471b4add4237f023dd09",
      "parents": [
        "c791c30670ea61f19eec390124128bf278e854fe"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 28 03:48:18 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 28 03:48:18 2006 -0400"
      },
      "message": "[libata] init probe_ent-\u003eprivate_data in a common location\n\nDon\u0027t write the same code twice, in two different functions, when they\nboth call the same initialization function, with the same private_data\npointer info.\n\nAlso, note a bug found with a FIXME.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c791c30670ea61f19eec390124128bf278e854fe",
      "tree": "5e75cc3f222a3425a2116be8e1691baa9534cdbe",
      "parents": [
        "54bb3a94b192be09feb85993b664ff118d6433d0"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 28 03:40:11 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Sep 28 03:40:11 2006 -0400"
      },
      "message": "[libata] minor PCI IDE probe fixes and cleanups\n\n* Replace needless \u0027n_ports \u003e 2\u0027 check with a simple BUG_ON().\n  No existing driver ever wants more than 2 ports.\n\n* Delete ATA_FLAG_NO_LEGACY check.  No current driver uses\n  ata_pci_init_one(), that sets this flag.\n\n* Move PCI_CLASS_PROG register read below pci_enable_device()\n\n* Handle ata_device_add() failure\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fb4633019fd0a871cdf315e1f4082f4c6926af82",
      "tree": "923802e2ab54254921be375a69d3b44e49c9d64f",
      "parents": [
        "efbf3f14204b77e6afc8c13571357173de9ab707"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 26 17:16:32 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 26 17:16:32 2006 -0400"
      },
      "message": "[libata] One more s/15/ATA_SECONDARY_IRQ/ substitution\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "daac0acd597618b99bba5f8fff31f21e4f283154",
      "tree": "260cd8e9024655ca6b017318fc4ae8c918cba52c",
      "parents": [
        "c961922b73dab429a759f560952fd4c3f60bd6b3"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Sep 26 17:55:37 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 26 13:34:27 2006 -0400"
      },
      "message": "[PATCH] libata-sff: use our IRQ defines\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fea63e38013ec628ab3f7fddc4c2148064b7910a",
      "tree": "a3e1cd7f50562a20584cd28ef9d71e0cd6c7c896",
      "parents": [
        "a64f97f2c351410dfb3099c2369eacf7154b5532"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Sep 16 03:04:15 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 19 00:29:20 2006 -0400"
      },
      "message": "[PATCH] libata: fix non-uniform ports handling\n\nNon-uniform ports handling got broken while updating libata to handle\nthose in the same host.  Only separate irq for the non-uniform\nsecondary port was implemented while all other fields (host flags,\ntransfer mode...) of the secondary port simply shared those of the\nfirst.\n\nFor ata_piix combined mode, which ATM is the only user of non-uniform\nports, this causes the secondary port assume the wrong type.  This can\ncause PATA port to use SATA ops, which results in bogus check on PCS\nand detection failure.\n\nThis patch adds ata_probe_ent-\u003epinfo2 which points to optional\nport_info for the secondary port.  For the time being, this seems to\nbe the simplest solution.  This workaround will be removed together\nwith ata_probe_ent itself after init model is updated to allow more\nflexibility.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Nelson A. de Oliveira \u003cnaoliv@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a64f97f2c351410dfb3099c2369eacf7154b5532",
      "tree": "b9f132ee5544febc50a9616a4edb52dd89370105",
      "parents": [
        "b68c5f546e951d718edf611c4bd9853753e4b366",
        "cb60736b32a84cbc9525b0bb4df26b04cbfbc8e8"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 19 00:25:50 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Sep 19 00:25:50 2006 -0400"
      },
      "message": "Merge branch \u0027tmp\u0027 into upstream\n\nConflicts:\n\n\tdrivers/ata/libata-sff.c\n"
    },
    {
      "commit": "e889173c2c67dc288e9b050ab066cfae151b047e",
      "tree": "1d7dbd8a39d59ebc8573ffa6bac6236709e7bdba",
      "parents": [
        "cca3974e48607c3775dc73b544a5700b2e37c21a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 24 03:55:09 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 24 03:55:09 2006 -0400"
      },
      "message": "Rename libata-bmdma.c to libata-sff.c.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "cca3974e48607c3775dc73b544a5700b2e37c21a",
      "tree": "0777d6121ba199af0aad196eb5a693510ec8e62e",
      "parents": [
        "54a86bfc3d4601be9c36cd4e8a1bdc580c98fa6a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 24 03:19:22 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 24 03:19:22 2006 -0400"
      },
      "message": "libata: Grand renaming.\n\nThe biggest change is that ata_host_set is renamed to ata_host.\n\n* ata_host_set\t\t\t\u003d\u003e ata_host\n* ata_probe_ent-\u003ehost_flags\t\u003d\u003e ata_probe_ent-\u003eport_flags\n* ata_probe_ent-\u003ehost_set_flags\t\u003d\u003e ata_probe_ent-\u003e_host_flags\n* ata_host_stats\t\t\u003d\u003e ata_port_stats\n* ata_port-\u003ehost\t\t\u003d\u003e ata_port-\u003escsi_host\n* ata_port-\u003ehost_set\t\t\u003d\u003e ata_port-\u003ehost\n* ata_port_info-\u003ehost_flags\t\u003d\u003e ata_port_info-\u003eflags\n* ata_(.*)host_set(.*)\\(\\)\t\u003d\u003e ata_\\1host\\2()\n\nThe leading underscore in ata_probe_ent-\u003e_host_flags is to avoid\nreusing -\u003ehost_flags for different purpose.  Currently, the only user\nof the field is libata-bmdma.c and probe_ent itself is scheduled to be\nremoved.\n\nata_port-\u003ehost is reused for different purpose but this field is used\ninside libata core proper and of different type.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c6fd280766a050b13360d7c2d59a3d6bd3a27d9a",
      "tree": "fdbeab639bc3dec29267bbf4b32cff7c8dd03593",
      "parents": [
        "79ed35a9f139ad2b2653dfdd5f45a8f1453e2cbb"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 10 07:31:37 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 10 07:31:37 2006 -0400"
      },
      "message": "Move libata to drivers/ata.\n"
    },
    {
      "commit": "c4b01f1de254820175fe2d02b4cf7c0fab335846",
      "tree": "316335e3faa6ee6d1dcb3c102d95d7a9d4cf575b",
      "parents": [
        "dd5b06c490de72440ec39f814de99a714a45a1a9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Aug 10 16:59:14 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Aug 10 16:59:14 2006 +0900"
      },
      "message": "[PATCH] libata: use dummy port for stolen legacy ports\n\nUse dummy port for stolen legacy ports.  This makes ap-\u003eport_no always\nequal ap-\u003ehard_port_no.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "2ec7df0457b710d9201f211dbccdbecf0ad38b7e",
      "tree": "4fbffc3e05aa65fd9ed63b4ac809712719e19cda",
      "parents": [
        "37deecb5139ee431233781a9a093d9fcaab54c5b"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Aug 10 16:59:10 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Aug 10 16:59:10 2006 +0900"
      },
      "message": "[PATCH] libata: rework legacy handling to remove much of the cruft\n\nKill host_set-\u003enext\nFix simplex support\nAllow per platform setting of IDE legacy bases\n\nSome of this can be tidied further later on, in particular all the\nlegacy port gunge belongs as a PCI quirk/PCI header decode to understand\nthe special legacy IDE rules in the PCI spec.\n\nLonger term Jeff also wants to move the request_irq/free_irq out of core\nwhich will make this even cleaner.\n\ntj: folded in three followup patches - ata_piix-fix, broken-arch-fix\nand fix-new-legacy-handling, and separated per-dev xfermask into\nseparate patch preceding this one.  Folded in fixes are...\n\n* ata_piix-fix: fix build failure due to host_set-\u003enext removal\n* broken-arch-fix: add missing include/asm-*/libata-portmap.h\n* fix-new-legacy-handling:\n\t* In ata_pci_init_legacy_port(), probe_num was incorrectly\n          incremented during initialization of the secondary port and\n          probe_ent-\u003en_ports was incorrectly fixed to 1.\n\n\t* Both legacy ports ended up having the same hard_port_no.\n\n\t* When printing port information, both legacy ports printed\n\t  the first irq.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "f6d950e2a5209bd7e3fb1a238f43f24f3697f5b0",
      "tree": "acdcb6deba03af3255c6e4bd76593ffa570e1698",
      "parents": [
        "155a8a9c8f4084016d9e27bf03ba1f19201438f4"
      ],
      "author": {
        "name": "Brian King",
        "email": "brking@us.ibm.com",
        "time": "Mon Aug 07 14:27:24 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Aug 09 00:08:38 2006 -0400"
      },
      "message": "[PATCH] libata: Move ata_probe_ent_alloc to libata_core\n\nMove ata_probe_ent_alloc to libata-core. It will also be used by\nfuture SAS/SATA integration patches.\n\nSigned-off-by: Brian King \u003cbrking@us.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1d6f359a2e06296418481239f8054a878f36e819",
      "tree": "e3ce0c69e4f34374f51f4e226374467ca80e3993",
      "parents": [
        "5d8c8a2e8edc63d8aef7656678f41c6c603f0443"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 19:29:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 13:58:53 2006 -0700"
      },
      "message": "[PATCH] irq-flags: scsi: Use the new IRQF_ constants\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "ba6a13083c1b720a47c05bee7bedbb6ef06c4611",
      "tree": "26f9d8d37145fac426744f96ecf006ec0a481e31",
      "parents": [
        "47005f255ed126a4b48a1a2f63164fb1d83bcb0a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Jun 22 23:46:10 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Jun 22 23:46:10 2006 -0400"
      },
      "message": "[libata] Add host lock to struct ata_port\n\nPrepare for changes required to support SATA devices\nattached to SAS HBAs. For these devices we don\u0027t want to\nuse host_set at all, since libata will not be the owner\nof struct scsi_host.\n\nSigned-off-by: Brian King \u003cbrking@us.ibm.com\u003e\n\n(with slight merge modifications made by...)\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f0eb62b81dd16bfc4034916418c3406ba20011e1",
      "tree": "c051e5da940044e189b2227ede4ccb373d0fa169",
      "parents": [
        "d01712698c7c52bc71f41192e864dccc90a1217d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Jun 12 23:05:38 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 12 10:23:21 2006 -0400"
      },
      "message": "[PATCH] libata: add host_set-\u003enext for legacy two host_sets case, take #3\n\nFor a legacy ATA controller, libata registers two separate host sets.\nThere was no connection between the two hosts making it impossible to\ntraverse all ports related to the controller.  This patch adds\nhost_set-\u003enext which points to the second host_set and makes\nata_pci_remove_one() remove all associated host_sets.\n\n* On device removal, all ports hanging off the device are properly\n  detached.  Prior to this patch, ports on the first host_set weren\u0027t\n  detached casuing oops on driver unloading.\n\n* On device removal, both host_sets are properly freed\n\nThis will also be used by new power management code to suspend and\nresume all ports of a controller.  host_set/port representation will\nbe improved to handle legacy controllers better and this host_set\nlinking will go away with it.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f5914a461eb9703773226a0813f6ffcae10c0861",
      "tree": "3441af53250530c3135a8fa55f06dd7bc62da037",
      "parents": [
        "d7bb4cc7575929a60b0a718daa1bce87bea9a9cc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed May 31 18:27:48 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed May 31 18:27:48 2006 +0900"
      },
      "message": "[PATCH] libata-hp-prep: add prereset() method and implement ata_std_prereset()\n\nWith hotplug, every reset might be a probing reset and thus something\nsimilar to probe_init() is needed.  prereset() method is called before\na series of resets to a port and is the counterpart of postreset().\nprereset() can tell EH to use different type of reset or skip reset by\nmodifying ehc-\u003ei.action.\n\nThis patch also implements ata_std_prereset().  Most controllers\nshould be able to use this function directly or with some wrapping.\nAfter hotplug, different controllers need different actions to resume\nthe PHY and detect the newly attached device.  Controllers can be\ncategorized as follows.\n\n* Controllers which can wait for the first D2H FIS after hotplug.\n  Note that if the waiting is implemented by polling TF status, there\n  needs to be a way to set BSY on PHY status change.  It can be\n  implemented by hardware or with the help of the driver.\n\n* Controllers which can wait for the first D2H FIS after sending\n  COMRESET.  These controllers need to issue COMRESET to wait for the\n  first FIS.  Note that the received D2H FIS could be the first D2H\n  FIS after POR (power-on-reset) or D2H FIS in response to the\n  COMRESET.  Some controllers use COMRESET as TF status\n  synchronization point and clear TF automatically (sata_sil).\n\n* Controllers which cannot wait for the first D2H FIS reliably.\n  Blindly issuing SRST to spinning-up device often results in command\n  issue failure or timeout, causing extended delay.  For these\n  controllers, ata_std_prereset() explicitly waits ATA_SPINUP_WAIT\n  (currently 8s) to give newly attached device time to spin up, then\n  issues reset.  Note that failing to getting ready in ATA_SPINUP_WAIT\n  is not critical.  libata will retry.  So, the timeout needs to be\n  long enough to spin up most devices.\n\nLLDDs can tell ata_std_prereset() which of above action is needed with\nATA_FLAG_HRST_TO_RESUME and ATA_FLAG_SKIP_D2H_BSY flags.  These flags\nare PHY-specific property and will be moved to ata_link later.\n\nWhile at it, this patch unifies function typedef\u0027s such that they all\nhave named arguments.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "c17ea20d9a689d7335e97e09354865cdd9f873e1",
      "tree": "74b04b022513b66b5a84977b15296c1d8df97674",
      "parents": [
        "12436c30f4808e00fa008c6787c609bc6ae216ba"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:59:29 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:59:29 2006 +0900"
      },
      "message": "[PATCH] libata: fix irq-pio merge\n\n* kill ata_poll_qc_complete() and implement/use ata_hsm_qc_complete()\n  which completes qcs in new EH compliant manner from HSM\n\n* don\u0027t print error message from ata_hsm_move().  it\u0027s responsibility\n  of EH.\n\n* kill ATA_FLAG_NOINTR usage in bmdma EH\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "6d97dbd72da31a0e334f251fa9df4be9fab6fde2",
      "tree": "f31e023080474ba91529d7e1b1468cc999e32c73",
      "parents": [
        "022bdb075b9e1f224088a0b268de56268d7bc5b6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:58:24 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:58:24 2006 +0900"
      },
      "message": "[PATCH] libata-eh: implement BMDMA EH\n\nImplement stock BMDMA error handling methods.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "4e5ec5dba22ea509b1a004f9815751f0ffc815e5",
      "tree": "d7387c3051e51a8bca060918f4a3a8a1a7962715",
      "parents": [
        "05c8e0ac5c37e9739a852b526afeecae97607cbb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Mar 27 18:42:40 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 29 19:30:27 2006 -0500"
      },
      "message": "[PATCH] libata: BMDMA handling updates\n\nThis is the minimal patch set to enable the current code to be used with\na controller following SFF (ie any PATA and early SATA controllers)\nsafely without crashes if there is no BMDMA area or if BMDMA is not\nassigned by the BIOS for some reason.\n\nSimplex status is recorded but not acted upon in this change, this isn\u0027t\na problem with the current drivers as none of them are for simplex\nhardware. A following diff will deal with that.\n\nThe flags in the probe structure remain -\u003ehost_set_flags although Jeff\nasked me to rename them, simply because the rename would break the usual\nLinux rules that old code should break when there are changes. not\ncompile and run and then blow up/eat your computer/etc. Renaming this\nlater is a trivial exercise once a better name is chosen.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2e9edbf815e42f93dd29a9981f27bd421acc47df",
      "tree": "57f4026cc532879c0678c535e15c5172b62d2106",
      "parents": [
        "ebdfca6eb1b755d3bfe9a81339ecdafd92038c1a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 24 09:56:57 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 24 09:56:57 2006 -0500"
      },
      "message": "[libata] export ata_dev_pair; trim trailing whitespace\n\nMostly, trim trailing whitespace.\n\nAlso:\n* export ata_dev_pair\n* move ata_dev_classify export closer to ata_dev_pair export\n"
    },
    {
      "commit": "2cc432eed0491df66e14b578139bba2c75fb3f9a",
      "tree": "5629388698a637ac8b211dff2d0168b5f9d6aa81",
      "parents": [
        "50106c5a0366c9e02bf872e85c672732aa517fb4"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Mar 23 00:32:03 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Mar 23 00:32:03 2006 -0500"
      },
      "message": "[libata] Move some bmdma-specific code to libata-bmdma.c\n\nNo code changes, just moving code between files.\n"
    },
    {
      "commit": "7c74ffd072fbe44b6039223982f2dc76840ac4f5",
      "tree": "d769cfcabc52873b45041170c0320b5b04ac58b3",
      "parents": [
        "f01c18456993bab43067b678f56c87ca954aa43b"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Mar 22 15:47:34 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Mar 22 19:55:40 2006 -0500"
      },
      "message": "[PATCH] libata: note missing posting in mmio cmd write\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d33d44facc8673388979297c9836b4bf590f7388",
      "tree": "69cdb3ef82191ba66ec79bcc2ad1702f84951f83",
      "parents": [
        "41bbc8bf1ab0e3e7cda1a0334176a9aa3986cd30"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Mar 21 15:59:57 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:21:32 2006 -0500"
      },
      "message": "[PATCH] libata: two new PCI helpers\n\nThe first performs the simplex clearing relevant to some chipsets that\nreport simplex by default but can in fact do more if poked. The second\nis used to strip DMA modes from a PCI control with no BAR4 allocation.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "41bbc8bf1ab0e3e7cda1a0334176a9aa3986cd30",
      "tree": "f608116068ebad13decc3d4e720fa13af3b53f15",
      "parents": [
        "db7f44d96e0b605906abc38aaf34841a93885884"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Mar 21 15:57:00 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:21:32 2006 -0500"
      },
      "message": "[PATCH] libata: Note weakness in our PCI handling that one day wants fixing\n\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1fdffbce0332b3e00993d741e76935e7f4f0d40f",
      "tree": "d6d5063c7f2f1dfcdaa9868260b3b812e4feca7e",
      "parents": [
        "389984cb75a5d26aa6ee9724c343bbd130cb3eec"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Feb 09 05:15:27 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Feb 09 05:15:27 2006 -0500"
      },
      "message": "[libata] Move PCI IDE BMDMA-related code to new file libata-bmdma.c.\n"
    }
  ]
}
