<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/ide/ide-atapi.c, branch linux-2.6.30.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.30.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.30.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2009-04-08T12:13:03Z</updated>
<entry>
<title>ide: refactor tf_read() method</title>
<updated>2009-04-08T12:13:03Z</updated>
<author>
<name>Sergei Shtylyov</name>
</author>
<published>2009-04-08T12:13:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3153c26b54230d025c6d536e8d3015def4524906'/>
<id>urn:sha1:3153c26b54230d025c6d536e8d3015def4524906</id>
<content type='text'>
Simplify tf_read() method, making it deal only with 'struct ide_taskfile' and
the validity flags that the upper layer passes, and factoring out the code that
deals with the high order bytes into ide_tf_readback() to be called from the
only two functions interested, ide_complete_cmd() and ide_dump_sector().

This should stop the needless code duplication in this method and so make
it about twice smaller than it was; along with simplifying the setup for
the method call, this should save both time and space...

Signed-off-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide: replace IDE_TFLAG_* flags by IDE_VALID_*</title>
<updated>2009-04-08T12:13:01Z</updated>
<author>
<name>Sergei Shtylyov</name>
</author>
<published>2009-04-08T12:13:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=60f85019c6c8c1aebf3485a313e0da094bc95d07'/>
<id>urn:sha1:60f85019c6c8c1aebf3485a313e0da094bc95d07</id>
<content type='text'>
Replace IDE_TFLAG_{IN|OUT}_* flags meaning to the taskfile register validity on
input/output by the IDE_VALID_* flags and introduce 4 symmetric 8-bit register
validity indicator subfields, 'valid.{input/output}.{tf|hob}', into the 'struct
ide_cmd' instead of using the 'tf_flags' field for that purpose (this field can
then be turned from 32-bit into 8-bit one).

Signed-off-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide-floppy: do not complete rq's prematurely</title>
<updated>2009-03-31T18:15:34Z</updated>
<author>
<name>Borislav Petkov</name>
</author>
<published>2009-03-31T18:15:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5b6c942dd1f13835eff8105ec2aa859544a1498d'/>
<id>urn:sha1:5b6c942dd1f13835eff8105ec2aa859544a1498d</id>
<content type='text'>
... and access them afterwards. Simplify rq completing code while at it.

Spotted-by: Tejun Heo &lt;tj@kernel.org&gt;
Signed-off-by: Borislav Petkov &lt;petkovbb@gmail.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide-floppy: use ide_pio_bytes()</title>
<updated>2009-03-31T18:15:26Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=349d12a1fe57d49287a539909cf14f362634342d'/>
<id>urn:sha1:349d12a1fe57d49287a539909cf14f362634342d</id>
<content type='text'>
* Fix ide_init_sg_cmd() setup for non-fs requests.

* Convert ide_pc_intr() to use ide_pio_bytes() for floppy media.

* Remove no longer needed ide_io_buffers() and sg/sg_cnt fields
  from struct ide_atapi_pc.

* Remove partial completions; kill idefloppy_update_buffers(), as a
  result.

* Add some more debugging statements.

Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
Signed-off-by: Borislav Petkov &lt;petkovbb@gmail.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide-{floppy,tape}: fix padding for PIO transfers</title>
<updated>2009-03-31T18:15:26Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d93bc4521c80e9d87767779814e88f6d725453d7'/>
<id>urn:sha1:d93bc4521c80e9d87767779814e88f6d725453d7</id>
<content type='text'>
* Return number of bytes left to transfer from idetape_{in,out}put_buffers()
  and number of bytes done from ide_tape_io_buffers().

* Fix padding for PIO transfers in ide_pc_intr() so read/write buffers are
  always completely processed and then the transfer is padded if necessary.

* Remove invalid error messages.

* Remove now superfluous padding from ide{_io_buffers,tape_input_buffers}().

While at it:

* Set pc-&gt;bh to NULL in idetape_input_buffers() after all bh-s are done.

* Cache !!(pc-&gt;flags &amp; PC_FLAG_WRITING) in local variable in ide_pc_intr().

Cc: Borislav Petkov &lt;petkovbb@gmail.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide: sanitize ide_build_sglist() and ide_destroy_dmatable()</title>
<updated>2009-03-31T18:15:24Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f094d4d83bccee9277ddb6aadccf35747889426b'/>
<id>urn:sha1:f094d4d83bccee9277ddb6aadccf35747889426b</id>
<content type='text'>
* Move ide_map_sg() calls out from ide_build_sglist()
  to ide_dma_prepare().

* Pass command to ide_destroy_dmatable().

* Rename ide_build_sglist() to ide_dma_map_sg()
  and ide_destroy_dmatable() to ide_dma_unmap_sg().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide: set/clear drive-&gt;waiting_for_dma flag in the core code</title>
<updated>2009-03-31T18:15:22Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=88b4132e101e60e8fa67996ae3072ab6b71e8500'/>
<id>urn:sha1:88b4132e101e60e8fa67996ae3072ab6b71e8500</id>
<content type='text'>
Set/clear drive-&gt;waiting_for_dma flag in the core code
instead of in -&gt;dma_setup and -&gt;dma_end methods.

There should be no functional changes caused by this patch.

Acked-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide: add ide_dma_prepare() helper</title>
<updated>2009-03-31T18:15:20Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5ae5412d9a23b05ab08461b202bad21ad8f6b66d'/>
<id>urn:sha1:5ae5412d9a23b05ab08461b202bad21ad8f6b66d</id>
<content type='text'>
* Add ide_dma_prepare() helper.

* Convert ide_issue_pc() and do_rw_taskfile() to use it.

* Make ide_build_sglist() static.

There should be no functional changes caused by this patch.

Acked-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide: destroy DMA mappings after ending DMA (v2)</title>
<updated>2009-03-31T18:15:20Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
</author>
<published>2009-03-31T18:15:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4453011f959a5f5c6c7a33aea54fe17f5e43a867'/>
<id>urn:sha1:4453011f959a5f5c6c7a33aea54fe17f5e43a867</id>
<content type='text'>
Move ide_destroy_dmatable() call out from -&gt;dma_end method to
{ide_pc,cdrom_newpc,ide_dma}_intr(), ide_dma_timeout_retry()
and sgiioc4_resetproc().

This causes minor/safe behavior changes w.r.t.:
* cmd64x.c::cmd64{8,x}_dma_end()
* cs5536.c::cs5536_dma_end()
* icside.c::icside_dma_end()
* it821x.c::it821x_dma_end()
* scc_pata.c::__scc_dma_end()
* sl82c105.c::sl82c105_dma_end()
* tx4939ide.c::tx4939ide_dma_end()

v2:
* Fix build for CONFIG_BLK_DEV_IDEDMA=n (reported by Randy Dunlap).

Cc: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Acked-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
<entry>
<title>ide-atapi: start DMA after issuing a packet command</title>
<updated>2009-03-31T18:14:58Z</updated>
<author>
<name>Borislav Petkov</name>
</author>
<published>2009-03-31T18:14:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2eba08270990b99fb5429b76ee97184ddd272f7f'/>
<id>urn:sha1:2eba08270990b99fb5429b76ee97184ddd272f7f</id>
<content type='text'>
Apparently¹, some ATAPI devices want to see the packet command first
before enabling DMA otherwise they simply hang indefinitely. Reorder the
two steps and start DMA only after having issued the command first.

[1] http://marc.info/?l=linux-kernel&amp;m=123835520317235&amp;w=2

Signed-off-by: Borislav Petkov &lt;petkovbb@gmail.com&gt;
Reported-by: Michael Roth &lt;mroth@nessie.de&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
</content>
</entry>
</feed>
