From: "Mikael Starvik" <mikael.starvik@axis.com>
To: <linux-kernel@vger.kernel.org>, <akpm@osdl.org>
Subject: [PATCH 4/10] CRIS architecture update - IDE
Date: Tue, 2 Nov 2004 14:04:39 +0100 [thread overview]
Message-ID: <BFECAF9E178F144FAEF2BF4CE739C668014C7488@exmail1.se.axis.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 76 bytes --]
Update CRIS IDE driver for 2.6.9.
Signed-Off-By: starvik@axis.com
/Mikael
[-- Attachment #2: cris269_4.patch --]
[-- Type: application/octet-stream, Size: 3984 bytes --]
diff -urNP --exclude='*.cvsignore' ../linux/arch/cris/arch-v10/drivers/ide.c lx25/arch/cris/arch-v10/drivers/ide.c
--- ../linux/arch/cris/arch-v10/drivers/ide.c Mon Oct 18 23:54:08 2004
+++ lx25/arch/cris/arch-v10/drivers/ide.c Tue Oct 12 09:55:48 2004
@@ -1,4 +1,4 @@
-/* $Id: ide.c,v 1.1 2004/01/22 08:22:58 starvik Exp $
+/* $Id: ide.c,v 1.4 2004/10/12 07:55:48 starvik Exp $
*
* Etrax specific IDE functions, like init and PIO-mode setting etc.
* Almost the entire ide.c is used for the rest of the Etrax ATA driver.
@@ -45,18 +45,13 @@
#define IDE_REGISTER_TIMEOUT 300
-#ifdef CONFIG_ETRAX_IDE_CSE1_16_RESET
-/* address where the memory-mapped IDE reset bit lives, if used */
-static volatile unsigned long *reset_addr;
-#endif
-
static int e100_read_command = 0;
#define LOWDB(x)
#define D(x)
void
-etrax100_ide_outw(unsigned short data, ide_ioreg_t reg) {
+etrax100_ide_outw(unsigned short data, unsigned long reg) {
int timeleft;
LOWDB(printk("ow: data 0x%x, reg 0x%x\n", data, reg));
@@ -89,7 +84,7 @@
}
void
-etrax100_ide_outb(unsigned char data, ide_ioreg_t reg)
+etrax100_ide_outb(unsigned char data, unsigned long reg)
{
etrax100_ide_outw(data, reg);
}
@@ -101,7 +96,7 @@
}
unsigned short
-etrax100_ide_inw(ide_ioreg_t reg) {
+etrax100_ide_inw(unsigned long reg) {
int status;
int timeleft;
@@ -149,7 +144,7 @@
}
unsigned char
-etrax100_ide_inb(ide_ioreg_t reg)
+etrax100_ide_inb(unsigned long reg)
{
return (unsigned char)etrax100_ide_inw(reg);
}
@@ -336,14 +331,14 @@
#ifdef CONFIG_ETRAX_IDE_G27_RESET
REG_SHADOW_SET(R_PORT_G_DATA, port_g_data_shadow, 27, 0);
-#endif
+#endif
#ifdef CONFIG_ETRAX_IDE_CSE1_16_RESET
REG_SHADOW_SET(port_cse1_addr, port_cse1_shadow, 16, 0);
#endif
#ifdef CONFIG_ETRAX_IDE_CSP0_8_RESET
REG_SHADOW_SET(port_csp0_addr, port_csp0_shadow, 8, 0);
#endif
-#ifdef CONFIG_ETRAX_IDE_PB7_RESET
+#ifdef CONFIG_ETRAX_IDE_PB7_RESET
port_pb_dir_shadow = port_pb_dir_shadow |
IO_STATE(R_PORT_PB_DIR, dir7, output);
*R_PORT_PB_DIR = port_pb_dir_shadow;
@@ -424,7 +419,7 @@
static void
e100_atapi_input_bytes (ide_drive_t *drive, void *buffer, unsigned int bytecount)
{
- ide_ioreg_t data_reg = IDE_DATA_REG;
+ unsigned long data_reg = IDE_DATA_REG;
D(printk("atapi_input_bytes, dreg 0x%x, buffer 0x%x, count %d\n",
data_reg, buffer, bytecount));
@@ -503,7 +498,7 @@
static void
e100_atapi_output_bytes (ide_drive_t *drive, void *buffer, unsigned int bytecount)
{
- ide_ioreg_t data_reg = IDE_DATA_REG;
+ unsigned long data_reg = IDE_DATA_REG;
D(printk("atapi_output_bytes, dreg 0x%x, buffer 0x%x, count %d\n",
data_reg, buffer, bytecount));
@@ -563,7 +558,7 @@
IO_STATE(R_ATA_CTRL_DATA, dma_size, word);
LED_DISK_WRITE(1);
-
+
/* Etrax will set busy = 1 until the multi pio transfer has finished
* and tr_rdy = 1 after each successful word transfer.
* When the last byte has been transferred Etrax will first set tr_tdy = 1
@@ -811,7 +806,7 @@
ide_set_handler(drive, &etrax_dma_intr, WAIT_CMD, NULL);
/* issue cmd to drive */
- if ((HWGROUP(drive)->rq->cmd == IDE_DRIVE_TASKFILE) &&
+ if ((HWGROUP(drive)->rq->flags & REQ_DRIVE_TASKFILE) &&
(drive->addressing == 1)) {
ide_task_t *args = HWGROUP(drive)->rq->special;
etrax100_ide_outb(args->tfRegister[IDE_COMMAND_OFFSET], IDE_COMMAND_REG);
@@ -869,7 +864,7 @@
ide_set_handler(drive, &etrax_dma_intr, WAIT_CMD, NULL);
/* issue cmd to drive */
- if ((HWGROUP(drive)->rq->cmd == IDE_DRIVE_TASKFILE) &&
+ if ((HWGROUP(drive)->rq->flags & REQ_DRIVE_TASKFILE) &&
(drive->addressing == 1)) {
ide_task_t *args = HWGROUP(drive)->rq->special;
etrax100_ide_outb(args->tfRegister[IDE_COMMAND_OFFSET], IDE_COMMAND_REG);
next reply other threads:[~2004-11-02 13:57 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-02 13:04 Mikael Starvik [this message]
2004-11-02 14:14 ` Bartlomiej Zolnierkiewicz
[not found] <BFECAF9E178F144FAEF2BF4CE739C66801AF70DD@exmail1.se.axis.com>
2004-11-02 14:16 ` Mikael Starvik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=BFECAF9E178F144FAEF2BF4CE739C668014C7488@exmail1.se.axis.com \
--to=mikael.starvik@axis.com \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®