History log of /drivers/ide/tx4938ide.c
Revision Date Author Comments
cd078af65d5c2f19c0f378062b07a0a79b000723 05-Jun-2010 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx493xide: use min_t() macro instead of min()

This fixes a warning ("comparison of distinct pointer types lacks a
cast") introduced by the commit
040f6b4f14adb2ca5babb84e9fb2ebc6661e0be2 ("tx493xide: use ->pio_mode
value to determine pair device speed").

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
040f6b4f14adb2ca5babb84e9fb2ebc6661e0be2 18-Jan-2010 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> tx493xide: use ->pio_mode value to determine pair device speed

Use the current PIO mode value instead of the physical maximum one
of the pair device on the port to determine PIO commmand timings used
for both devices on the port.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
e085b3cae85af47eb0a3eda3186bd898310fb322 19-Jan-2010 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: change ->set_pio_mode method parameters

Change ->set_pio_mode method parameters to match ->set_piomode method
used in struct ata_port_operations.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
8492090542b8bc6b65b60ccf0b49ff8f0a460ab2 23-Nov-2009 H Hartley Sweeten <hsweeten@visionengravers.com> drivers/ide/tx4938ide.c: use resource_size()

Use resource_size() for devm_request_mem_region.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
9f36d31437922354d104a2db407f397e79e4027e 17-May-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: remove hw_regs_t typedef

Remove hw_regs_t typedef and rename struct hw_regs_s to struct ide_hw.

There should be no functional changes caused by this patch.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
dca3983059a4481e4ae97bbf0ac4b4c21429e1a5 17-May-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: pass number of ports to ide_host_{alloc,add}() (v2)

Pass number of ports to ide_host_{alloc,add}() and then update
all users accordingly.

v2:
- drop no longer needed NULL initializers in buddha.c, cmd640.c and gayle.c
(noticed by Sergei)

There should be no functional changes caused by this patch.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
d68bab503e64e87c464c5a27a56877a04e4404b5 08-Apr-2009 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx493[89]ide: Remove big endian version of tx493[89]ide_tf_{load,read}

Now tx493[89]ide_tf_{load,read} do not contain word I/O operations.
They are endian-free now.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>,
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
abb596b25edac1ec1acc4ef53df190771661c3d2 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: turn selectproc() method into dev_select() method (take 5)

Turn selectproc() method into dev_select() method by teaching it to write to the
device register and moving it from 'struct ide_port_ops' to 'struct ide_tp_ops'.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: benh@kernel.crashing.org
Cc: petkovbb@gmail.com
[bart: add ->dev_select to at91_ide.c and tx4939.c (__BIG_ENDIAN case)]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
35218d1ca808ed19b8c6f079ce91872b3deb2219 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: move data register access out of tf_{read|load}() methods (take 2)

Move IDE_FTFLAG_{IN|OUT}_DATA flag handling out of tf_{read|load}() methods
into the only two functions where these flags actually need to be handled:
do_rw_taskfile() and ide_complete_cmd()...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
bac08cee93f9cb37b40ecfa8eaf1f6d8daf3909b 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: call {in|out}put_data() methods from tf_{read|load}() methods (take 2)

Handle IDE_FTFLAG_{IN|OUT}_DATA flags in tf_{read|load}() methods by calling
{in|out}put_data() methods to transfer 2 bytes -- this will allow us to move
that handling out of those methods altogether...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
6762511934e6e7287ce3c8baac0d52ef64e3787b 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: rename IDE_TFLAG_IN_[HOB_]FEATURE

The feature register has never been readable -- when its location is read, one
gets the error register value; hence rename IDE_TFLAG_IN_[HOB_]FEATURE into
IDE_TFLAG_IN_[HOB_]ERROR and introduce the 'hob_error' field into the 'struct
ide_taskfile' (despite the error register not really depending on the HOB bit).

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
ecf3a31d2a08a419bdf919456f1724f5b72bde2c 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: turn set_irq() method into write_devctl() method

Turn set_irq() method with its software reset hack into write_devctl() method
(for just writing a value into the device control register) at last...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
4d74c3fcf2b90487eacec511bc8c07177711c81c 31-Mar-2009 Sergei Shtylyov <sshtylyov@ru.mvista.com> ide: use ATA_HOB

Make use of ATA_HOB instead of hard-coded value in the tf_read() method.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
adb1af9803d167091c2cb4de14014185054bfe2c 27-Mar-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: pass command instead of request to ide_pio_datablock()

* Add IDE_TFLAG_FS taskfile flag and set it for REQ_TYPE_FS requests.

* Convert ->{in,out}put_data methods to take command instead of request
as an argument. Then convert pre_task_out_intr(), task_end_request(),
task_error(), task_in_unexpected(), ide_pio_sector(), ide_pio_multi()
and ide_pio_datablock() in similar way.

* Rename task_end_request() to ide_finish_cmd().

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
22aa4b32a19b1f231d4ce7e9af6354b577a22a35 27-Mar-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: remove ide_task_t typedef

While at it:
- rename struct ide_task_s to struct ide_cmd
- remove stale comments from idedisk_{read_native,set}_max_address()
- drop unused 'cmd' argument from ide_{cmd,task}_ioctl()
- drop unused 'task' argument from tx4939ide_tf_load_fixup()
- rename ide_complete_task() to ide_complete_cmd()
- use consistent naming for struct ide_cmd variables

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
19710d25d50ae0be05eebe4231ed8918b1092d82 27-Mar-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: add "flagged" taskfile flags to struct ide_taskfile (v2)

* Add ->ftf_flags field to struct ide_taskfile
and convert flags for TASKFILE ioctl to use it.

* Rename "flagged" taskfile flags:
- IDE_TFLAG_FLAGGED -> IDE_FTFLAG_FLAGGED
- IDE_TFLAG_FLAGGED_SET_IN_FLAGS -> IDE_FTFLAG_SET_IN_FLAGS
- IDE_TFLAG_{OUT,IN}_DATA -> IDE_FTFLAG_{OUT,IN}_DATA

v2:
* Remember to fully update ide-h8300.c, scc_pata.c and tx493{8,9}ide.c
(thanks to Stephen Rothwell for noticing).

There should be no functional changes caused by this patch.

Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
15a453a955f89f6545118770c669b52e925368bd 27-Mar-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: include <asm/ide.h> only when needed

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
a294d97742568f429590cf2022d92e4b0c5f6ba0 14-Jan-2009 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx4938ide: Fix build error due to read_sff_dma_status moving

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
b1d249e845efb07975183c62b4f75576c4a8d467 02-Jan-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> ide: remove chipset type fixup from ide_host_register()

* Set chipset type explicitly in tx4938ide and tx4939ide host drivers
(all other host drivers were updated already).

* Remove no longer used chipset type fixup from ide_host_register().

Acked-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
3ee86dcdd273aa91cb9b4fe1e3d4f69035750a12 02-Jan-2009 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> tx493x: fix indentation

Trivial CodingStyle fixup for tx4938ide and tx4939ide drivers.

Acked-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Sergei Shtyltov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
f26f6ceacaaf017a677138cbca7ab076b565ca87 29-Dec-2008 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx493[89]ide: Fix length for __ide_flush_dcache_range

This fixes data corruption on PIO mode.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: stable <stable@kernel.org>
Cc: sshtylyov@ru.mvista.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
7afa05350c42d8427f2d8f6112b64ab0812f3289 02-Nov-2008 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx4938ide: Avoid underflow on calculation of a wait cycle

Make 'wt' variable signed while it can be negative during calculation.

Suggested-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: sshtylyov@ru.mvista.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
9d4eb0a33e620a85e36f66cf895d2bea6d556eac 02-Nov-2008 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx4938ide: Do not call devm_ioremap for whole 128KB

Call devm_ioremap() for CS0 and CS1 separetely.
And some style cleanups.

Suggested-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: ralf@linux-mips.org
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
630a8b2500c8d04e87e597c4afa5e1fafff04591 02-Nov-2008 Atsushi Nemoto <anemo@mba.ocn.ne.jp> tx4938ide: Check minimum cycle time and SHWT range (v2)

SHWT value is used as address valid to -CSx assertion and -CSx to -DIOx
assertion setup time, and contrarywise, -DIOx to -CSx release and -CSx
release to address invalid hold time, so it actualy applies 4 times and
so constitutes -DIOx recovery time. Check requirement of the recovery
time and cycle time. Also check SHWT maximum value.

Suggested-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: ralf@linux-mips.org
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
28502848f52f12fcebbdec663103db2dd0740122 23-Oct-2008 Atsushi Nemoto <anemo@mba.ocn.ne.jp> ide: Add tx4938ide driver (v2)

This is the driver for the Toshiba TX4938 SoC EBUS controller ATA mode.
It has custom set_pio_mode and some hacks for big endian.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: ralf@linux-mips.org
Cc: sshtylyov@ru.mvista.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>