Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
3e7b7c35
Commit
3e7b7c35
authored
Nov 18, 2002
by
Russell King
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[ARM] Acorn SCSI build fixes
Oops, I broke them. This cset fixes the errors.
parent
457a8bb0
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
50 additions
and
70 deletions
+50
-70
drivers/acorn/scsi/arxescsi.c
drivers/acorn/scsi/arxescsi.c
+1
-1
drivers/acorn/scsi/cumana_1.c
drivers/acorn/scsi/cumana_1.c
+5
-5
drivers/acorn/scsi/ecoscsi.c
drivers/acorn/scsi/ecoscsi.c
+40
-60
drivers/acorn/scsi/oak.c
drivers/acorn/scsi/oak.c
+4
-4
No files found.
drivers/acorn/scsi/arxescsi.c
View file @
3e7b7c35
...
...
@@ -411,7 +411,7 @@ arxescsi_probe(struct expansion_card *ec, const struct ecard_id *id)
return
ret
;
}
static
void
__devexit
arxescsi_re
leas
e
(
struct
expansion_card
*
ec
)
static
void
__devexit
arxescsi_re
mov
e
(
struct
expansion_card
*
ec
)
{
struct
Scsi_Host
*
host
=
ecard_get_drvdata
(
ec
);
...
...
drivers/acorn/scsi/cumana_1.c
View file @
3e7b7c35
...
...
@@ -260,12 +260,12 @@ static Scsi_Host_Template cumanascsi_template = {
};
static
int
__devinit
cumanascsi1_probe
(
struct
expansion_card
*
ec
,
struct
ecard_ids
*
id
)
cumanascsi1_probe
(
struct
expansion_card
*
ec
,
const
struct
ecard_id
*
id
)
{
struct
Scsi_Host
*
host
;
int
ret
=
-
ENOMEM
;
host
=
scsi_register
(
tpnt
,
sizeof
(
struct
NCR5380_hostdata
));
host
=
scsi_register
(
&
cumanascsi_template
,
sizeof
(
struct
NCR5380_hostdata
));
if
(
!
host
)
goto
out
;
...
...
@@ -294,7 +294,7 @@ cumanascsi1_probe(struct expansion_card *ec, struct ecard_ids *id)
printk
(
"scsi%d: at port 0x%08lx irq %d"
,
host
->
host_no
,
host
->
io_port
,
host
->
irq
);
printk
(
" options CAN_QUEUE=%d CMD_PER_LUN=%d release=%d"
,
tpnt
->
can_queue
,
tpn
t
->
cmd_per_lun
,
CUMANASCSI_PUBLIC_RELEASE
);
host
->
can_queue
,
hos
t
->
cmd_per_lun
,
CUMANASCSI_PUBLIC_RELEASE
);
printk
(
"
\n
scsi%d:"
,
host
->
host_no
);
NCR5380_print_options
(
host
);
printk
(
"
\n
"
);
...
...
@@ -321,10 +321,10 @@ static void __devexit cumanascsi1_remove(struct expansion_card *ec)
scsi_remove_host
(
host
);
free_irq
(
host
->
irq
,
host
);
release_region
(
host
->
io_port
,
host
->
n_io_port
);
scsi_
remove
(
host
);
scsi_
unregister
(
host
);
}
static
const
struct
ecard_id
s
cumanascsi1_cids
[]
=
{
static
const
struct
ecard_id
cumanascsi1_cids
[]
=
{
{
MANU_CUMANA
,
PROD_CUMANA_SCSI_1
},
{
0xffff
,
0xffff
}
};
...
...
drivers/acorn/scsi/ecoscsi.c
View file @
3e7b7c35
...
...
@@ -54,6 +54,18 @@
#include "../../scsi/scsi.h"
#include "../../scsi/hosts.h"
#define NCR5380_implementation_fields int port, ctrl
#define NCR5380_local_declare() struct Scsi_Host *_instance
#define NCR5380_setup(instance) _instance = instance
#define NCR5380_read(reg) ecoscsi_read(_instance, reg)
#define NCR5380_write(reg, value) ecoscsi_write(_instance, reg, value)
#define NCR5380_intr ecoscsi_intr
#define NCR5380_queue_command ecoscsi_queue_command
#define NCR5380_proc_info ecoscsi_proc_info
#include "../../scsi/NCR5380.h"
#define ECOSCSI_PUBLIC_RELEASE 1
...
...
@@ -99,62 +111,45 @@ void ecoscsi_setup(char *str, int *ints) {
int
ecoscsi_detect
(
Scsi_Host_Template
*
tpnt
)
{
struct
Scsi_Host
*
instance
;
struct
Scsi_Host
*
host
;
tpnt
->
proc_name
=
"ecoscsi"
;
instance
=
scsi_register
(
tpnt
,
sizeof
(
struct
NCR5380_hostdata
));
if
(
!
instance
)
host
=
scsi_register
(
tpnt
,
sizeof
(
struct
NCR5380_hostdata
));
if
(
!
host
)
return
0
;
instance
->
io_port
=
0x80ce8000
;
instance
->
n_io_port
=
144
;
instance
->
irq
=
IRQ_NONE
;
host
->
io_port
=
0x80ce8000
;
host
->
n_io_port
=
144
;
host
->
irq
=
IRQ_NONE
;
if
(
!
(
request_region
(
instance
->
io_port
,
instance
->
n_io_port
,
"ecoscsi"
))
)
if
(
!
(
request_region
(
host
->
io_port
,
host
->
n_io_port
,
"ecoscsi"
))
)
goto
unregister_scsi
;
ecoscsi_write
(
instance
,
MODE_REG
,
0x20
);
/* Is it really SCSI? */
if
(
ecoscsi_read
(
instance
,
MODE_REG
)
!=
0x20
)
/* Write to a reg. */
ecoscsi_write
(
host
,
MODE_REG
,
0x20
);
/* Is it really SCSI? */
if
(
ecoscsi_read
(
host
,
MODE_REG
)
!=
0x20
)
/* Write to a reg. */
goto
release_reg
;
ecoscsi_write
(
instance
,
MODE_REG
,
0x00
);
/* it back. */
if
(
ecoscsi_read
(
instance
,
MODE_REG
)
!=
0x00
)
ecoscsi_write
(
host
,
MODE_REG
,
0x00
);
/* it back. */
if
(
ecoscsi_read
(
host
,
MODE_REG
)
!=
0x00
)
goto
release_reg
;
NCR5380_init
(
instance
,
0
);
if
(
instance
->
irq
!=
IRQ_NONE
)
{
if
(
request_irq
(
instance
->
irq
,
do_ecoscsi_intr
,
SA_INTERRUPT
,
"ecoscsi"
,
NULL
))
{
printk
(
"scsi%d: IRQ%d not free, interrupts disabled
\n
"
,
instance
->
host_no
,
instance
->
irq
);
instance
->
irq
=
IRQ_NONE
;
}
}
if
(
instance
->
irq
!=
IRQ_NONE
)
{
printk
(
"scsi%d: eek! Interrupts enabled, but I don't think
\n
"
,
instance
->
host_no
);
printk
(
"scsi%d: that the board had an interrupt!
\n
"
,
instance
->
host_no
);
}
printk
(
"scsi%d: at port %X irq"
,
instance
->
host_no
,
instance
->
io_port
);
if
(
instance
->
irq
==
IRQ_NONE
)
printk
(
"s disabled"
);
else
printk
(
" %d"
,
instance
->
irq
);
NCR5380_init
(
host
,
0
);
printk
(
"scsi%d: at port 0x%08lx irqs disabled"
,
host
->
host_no
,
host
->
io_port
);
printk
(
" options CAN_QUEUE=%d CMD_PER_LUN=%d release=%d"
,
CAN_QUEUE
,
CMD_PER_LUN
,
ECOSCSI_PUBLIC_RELEASE
);
printk
(
"
\n
scsi%d:"
,
instance
->
host_no
);
NCR5380_print_options
(
instance
);
host
->
can_queue
,
host
->
cmd_per_lun
,
ECOSCSI_PUBLIC_RELEASE
);
printk
(
"
\n
scsi%d:"
,
host
->
host_no
);
NCR5380_print_options
(
host
);
printk
(
"
\n
"
);
return
1
;
release_reg:
release_region
(
instance
->
io_port
,
instance
->
n_io_port
);
release_region
(
host
->
io_port
,
host
->
n_io_port
);
unregister_scsi:
scsi_unregister
(
instance
);
return
0
scsi_unregister
(
host
);
return
0
;
}
int
ecoscsi_release
(
struct
Scsi_Host
*
shpnt
)
...
...
@@ -166,17 +161,18 @@ int ecoscsi_release (struct Scsi_Host *shpnt)
return
0
;
}
const
char
*
ecoscsi_info
(
struct
Scsi_Host
*
spnt
)
{
return
""
;
const
char
*
ecoscsi_info
(
struct
Scsi_Host
*
spnt
)
{
return
""
;
}
#if 0
#define STAT(p) inw(p + 144)
static inline int NCR5380_pwrite(struct Scsi_Host *
instance
, unsigned char *addr,
static inline int NCR5380_pwrite(struct Scsi_Host *
host
, unsigned char *addr,
int len)
{
int iobase =
instance
->io_port;
int iobase =
host
->io_port;
printk("writing %p len %d\n",addr, len);
if(!len) return -1;
...
...
@@ -187,11 +183,11 @@ printk("writing %p len %d\n",addr, len);
}
}
static inline int NCR5380_pread(struct Scsi_Host *
instance
, unsigned char *addr,
static inline int NCR5380_pread(struct Scsi_Host *
host
, unsigned char *addr,
int len)
{
int iobase =
instance
->io_port;
int iobase2=
instance
->io_port + 0x100;
int iobase =
host
->io_port;
int iobase2=
host
->io_port + 0x100;
unsigned char *start = addr;
int s;
printk("reading %p len %d\n",addr, len);
...
...
@@ -237,22 +233,6 @@ printk("reading %p len %d\n",addr, len);
#endif
#undef STAT
#define NCR5380_implementation_fields \
int port, ctrl
#define NCR5380_local_declare() \
struct Scsi_Host *_instance
#define NCR5380_setup(instance) \
_instance = instance
#define NCR5380_read(reg) ecoscsi_read(_instance, reg)
#define NCR5380_write(reg, value) ecoscsi_write(_instance, reg, value)
#define NCR5380_intr ecoscsi_intr
#define NCR5380_queue_command ecoscsi_queue_command
#define NCR5380_proc_info ecoscsi_proc_info
int
NCR5380_proc_info
(
char
*
buffer
,
char
**
start
,
off_t
offset
,
int
length
,
int
hostno
,
int
inout
);
...
...
drivers/acorn/scsi/oak.c
View file @
3e7b7c35
...
...
@@ -138,12 +138,12 @@ oakscsi_probe(struct expansion_card *ec, const struct ecard_id *id)
struct
Scsi_Host
*
host
;
int
ret
=
-
ENOMEM
;
host
=
scsi_register
(
tpnt
,
sizeof
(
struct
NCR5380_hostdata
));
host
=
scsi_register
(
&
oakscsi_template
,
sizeof
(
struct
NCR5380_hostdata
));
if
(
!
host
)
goto
out
;
host
->
io_port
=
ecard_address
(
ec
,
ECARD_MEMC
,
0
)
host
->
irq
=
IRQ_NONE
;
host
->
io_port
=
ecard_address
(
ec
,
ECARD_MEMC
,
0
);
host
->
irq
=
IRQ_NONE
;
host
->
n_io_port
=
255
;
ret
=
-
EBUSY
;
...
...
@@ -155,7 +155,7 @@ oakscsi_probe(struct expansion_card *ec, const struct ecard_id *id)
printk
(
"scsi%d: at port 0x%08lx irqs disabled"
,
host
->
host_no
,
host
->
io_port
);
printk
(
" options CAN_QUEUE=%d CMD_PER_LUN=%d release=%d"
,
tpnt
->
can_queue
,
tpn
t
->
cmd_per_lun
,
OAKSCSI_PUBLIC_RELEASE
);
host
->
can_queue
,
hos
t
->
cmd_per_lun
,
OAKSCSI_PUBLIC_RELEASE
);
printk
(
"
\n
scsi%d:"
,
host
->
host_no
);
NCR5380_print_options
(
host
);
printk
(
"
\n
"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment