Commit cc6d9ed8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Import 1.1.66

parent f40ed092
VERSION = 1
PATCHLEVEL = 1
SUBLEVEL = 65
SUBLEVEL = 66
ARCH = i386
......
......@@ -6,6 +6,7 @@
comment 'General setup'
bool 'Kernel math emulation' CONFIG_MATH_EMULATION n
bool 'Normal floppy disk support' CONFIG_BLK_DEV_FD y
bool 'Normal harddisk support' CONFIG_BLK_DEV_HD y
bool 'XT harddisk support' CONFIG_BLK_DEV_XD n
bool 'Networking support' CONFIG_NET y
......@@ -57,8 +58,9 @@ bool 'UltraStor 14F/34F support' CONFIG_SCSI_U14_34F n
bool 'Future Domain 16xx SCSI support' CONFIG_SCSI_FUTURE_DOMAIN n
bool 'Generic NCR5380 SCSI support' CONFIG_SCSI_GENERIC_NCR5380 n
bool 'NCR53c7,8xx SCSI support' CONFIG_SCSI_NCR53C7xx n
#bool 'Always IN2000 SCSI support' CONFIG_SCSI_IN2000 n
bool 'Always IN2000 SCSI support' CONFIG_SCSI_IN2000 n
bool 'PAS16 SCSI support' CONFIG_SCSI_PAS16 n
bool 'QLOGIC SCSI support' CONFIG_SCSI_QLOGIC n
bool 'Seagate ST-02 and Future Domain TMC-8xx SCSI support' CONFIG_SCSI_SEAGATE n
bool 'Trantor T128/T128F/T228 SCSI support' CONFIG_SCSI_T128 n
bool 'UltraStor SCSI support' CONFIG_SCSI_ULTRASTOR n
......@@ -116,6 +118,7 @@ if [ "$CONFIG_NET_ISA" = "y" ]; then
bool 'NI6510 support' CONFIG_NI65 n
fi
bool 'HP PCLAN support' CONFIG_HPLAN n
bool 'HP PCLAN PLUS support' CONFIG_HPLAN_PLUS n
bool 'NE2000/NE1000 support' CONFIG_NE2000 y
bool 'SK_G16 support' CONFIG_SK_G16 n
fi
......@@ -163,7 +166,11 @@ bool '/proc filesystem support' CONFIG_PROC_FS y
if [ "$CONFIG_INET" = "y" ]; then
bool 'NFS filesystem support' CONFIG_NFS_FS y
fi
bool 'ISO9660 cdrom filesystem support' CONFIG_ISO9660_FS n
if [ "$CONFIG_BLK_DEV_SR" = "y" -o "$CONFIG_CDU31A" = "y" -o "$CONFIG_MCD" = "y" -o "$CONFIG_SBPCD" = "y" -o "$CONFIG_BLK_DEV_IDECD" = "y" ]; then
bool 'ISO9660 cdrom filesystem support' CONFIG_ISO9660_FS y
else
bool 'ISO9660 cdrom filesystem support' CONFIG_ISO9660_FS n
fi
bool 'OS/2 HPFS filesystem support (read only)' CONFIG_HPFS_FS n
bool 'System V and Coherent filesystem support' CONFIG_SYSV_FS n
......
......@@ -45,6 +45,13 @@ extern unsigned long sbpcd_init(unsigned long, unsigned long);
#endif CONFIG_SBPCD
extern void set_device_ro(int dev,int flag);
extern void floppy_init(void);
#ifdef FD_MODULE
static
#else
extern
#endif
int new_floppy_init(void);
extern void rd_load(void);
extern long rd_init(long mem_start, int length);
extern int ramdisk_size;
......
......@@ -673,7 +673,7 @@ get_result(unsigned char *result_buffer,
*result_size = 2;
/*
* 0x20 means an error occured. Byte 2 will have the error code.
* 0x20 means an error occurred. Byte 2 will have the error code.
* Otherwise, the command succeeded, byte 2 will have the count of
* how many more status bytes are coming.
*
......@@ -2781,7 +2781,7 @@ cdu31a_setup(char *strings,
}
else
{
printk("CDU31A: Unknown interface type: %s\n", strings[3]);
printk("CDU31A: Unknown interface type: %s\n", strings);
}
}
}
......
This diff is collapsed.
......@@ -260,40 +260,29 @@ static unsigned int mult_req [MAX_HD] = {0,}; /* requested MultMode count
static unsigned int mult_count [MAX_HD] = {0,}; /* currently enabled MultMode count */
static struct request WCURRENT;
static void fixstring(unsigned char *s, int n)
static void fixstring (unsigned char *s, int bytecount)
{
int i;
unsigned short *ss = (unsigned short *) s;
unsigned char *p, *end = &s[bytecount &= ~1]; /* bytecount must be even */
/* convert from big-endian to little-endian */
for (i = n ; (i -= 2) >= 0 ; ss++)
*ss = (*ss >> 8) | (*ss << 8);
/* "strnlen()" */
for (i = 0 ; i < n ; i++) {
if (!s[i]) {
n = i;
break;
}
for (p = end ; p != s;) {
unsigned short *pp = (unsigned short *) (p -= 2);
*pp = (*pp >> 8) | (*pp << 8);
}
/* wipe out trailing spaces */
while (n > 0) {
if (s[n-1] != ' ')
break;
n--;
s[n] = '\0';
}
/* strip leading blanks */
while (s != end && *s == ' ')
++s;
/* wipe out leading spaces */
if (*s == ' ') {
unsigned char *t = s;
while (n-- && *++s == ' ');
while (n-- >= 0) {
*t++ = *s;
*s++ = '\0';
}
/* compress internal blanks and strip trailing blanks */
while (s != end && *s) {
if (*s++ != ' ' || (s != end && *s && *s != ' '))
*p++ = *(s-1);
}
/* wipe out trailing garbage */
while (p != end)
*p++ = '\0';
}
static void identify_intr(void)
......@@ -332,8 +321,8 @@ static void identify_intr(void)
fixstring (id->model, sizeof(id->model));
printk (" hd%c: %.40s, %dMB w/%dKB Cache, CHS=%d/%d/%d, MaxMult=%d\n",
dev+'a', id->model, id->cyls*id->heads*id->sectors/2048,
id->buf_size/2, hd_info[dev].cyl, hd_info[dev].head,
hd_info[dev].sect, id->max_multsect);
id->buf_size/2, bios_info[dev].cyl, bios_info[dev].head,
bios_info[dev].sect, id->max_multsect);
/*
* Early model Quantum drives go weird at this point,
* but doing a recalibrate seems to "fix" them.
......
......@@ -17,7 +17,7 @@
#include <linux/locks.h>
#include <asm/system.h>
#include <asm/io.h>
#include "blk.h"
/*
......@@ -507,6 +507,11 @@ long blk_dev_init(long mem_start, long mem_end)
#ifdef CONFIG_MCD
mem_start = mcd_init(mem_start,mem_end);
#endif
#ifdef CONFIG_BLK_DEV_FD
floppy_init();
#else
outb_p(0xc, 0x3f2);
#endif
#ifdef CONFIG_SBPCD
mem_start = sbpcd_init(mem_start, mem_end);
#endif CONFIG_SBPCD
......
......@@ -46,7 +46,8 @@
* Virtual Consoles, Screen Blanking, Screen Dumping, Color, Graphics
* Chars, and VT100 enhancements by Peter MacDonald.
*
* Copy and paste function by Andrew Haylett.
* Copy and paste function by Andrew Haylett,
* some enhancements by Alessandro Rubini.
*
* User definable mapping table and font loading by Eugene G. Crosser,
* <crosser@pccross.msk.su>
......@@ -2337,6 +2338,8 @@ int set_selection(const int arg, struct tty_struct *tty)
default:
return -EINVAL;
}
/* remove the pointer */
highlight_pointer(sel_cons,-1);
/* select to end of line if on trailing space */
if (new_sel_end > new_sel_start &&
!atedge(new_sel_end) && isspace(*(off + new_sel_end)))
......
......@@ -146,7 +146,7 @@ struct ei_device {
#define ENTSR_COL 0x04 /* The transmit collided at least once. */
#define ENTSR_ABT 0x08 /* The transmit collided 16 times, and was deferred. */
#define ENTSR_CRS 0x10 /* The carrier sense was lost. */
#define ENTSR_FU 0x20 /* A "FIFO underrun" occured during transmit. */
#define ENTSR_FU 0x20 /* A "FIFO underrun" occurred during transmit. */
#define ENTSR_CDH 0x40 /* The collision detect "heartbeat" signal was lost. */
#define ENTSR_OWC 0x80 /* There was an out-of-window collision. */
......
......@@ -652,7 +652,8 @@ unsigned long apricot_init(unsigned long mem_start, unsigned long mem_end)
int i;
int checksum = 0;
int ioaddr = 0x300;
char eth_addr[6];
/* this is easy the ethernet interface can only be at 0x300 */
/* first check nothing is already registered here */
......@@ -668,12 +669,21 @@ unsigned long apricot_init(unsigned long mem_start, unsigned long mem_end)
if (checksum % 0x100) return mem_start;
dev = init_etherdev(0, (sizeof (struct i596_private) + 0xf), &mem_start);
for(i = 0; i < 6 ; i++)
eth_addr[i] = inb(ioaddr +8 +i));
/* Some other boards trip the checksum.. but then appear as ether
address 0. Trap these - AC */
if(memcmp(eth_addr,"\x00\x00\x00\x00\x00\x00",6)==0)
return mem_addr;
dev = init_etherdev(0, (sizeof (struct i596_private) + 0xf), &mem_start);
printk("%s: Apricot 82596 at %#3x,", dev->name, ioaddr);
for (i = 0; i < 6; i++)
printk(" %2.2X", dev->dev_addr[i] = inb(ioaddr +8 + i));
printk(" %2.2X", dev->dev_addr[i] = eth_addr[i]);
dev->base_addr = ioaddr;
dev->irq = 10;
......
......@@ -291,7 +291,7 @@ static void ewrk3_interrupt(int reg_ptr);
static int ewrk3_close(struct device *dev);
static struct enet_statistics *ewrk3_get_stats(struct device *dev);
static void set_multicast_list(struct device *dev, int num_addrs, void *addrs);
static int ewrk3_ioctl(struct device *dev, struct ifreq *rq);
static int ewrk3_ioctl(struct device *dev, struct ifreq *rq, int cmd);
/*
** Private functions
......@@ -1580,7 +1580,7 @@ static unsigned char aprom_crc(struct device *dev, unsigned char *eeprom_image,
** Perform IOCTL call functions here. Some are privileged operations and the
** effective uid is checked in those cases.
*/
static int ewrk3_ioctl(struct device *dev, struct ifreq *rq)
static int ewrk3_ioctl(struct device *dev, struct ifreq *rq, int cmd)
{
struct ewrk3_private *lp = (struct ewrk3_private *)dev->priv;
struct ewrk3_ioctl *ioc = (struct ewrk3_ioctl *) &rq->ifr_data;
......
......@@ -275,7 +275,7 @@ hp_block_output(struct device *dev, int count,
outb_p(0xff, nic_base + EN0_RSARLO);
outb_p(0x00, nic_base + EN0_RSARHI);
outb_p(E8390_RREAD+E8390_START, EN_CMD);
/* Make certain that the dummy read has occured. */
/* Make certain that the dummy read has occurred. */
inb_p(0x61);
inb_p(0x61);
#endif
......
......@@ -402,7 +402,7 @@ ne_block_output(struct device *dev, int count,
outb_p(0x42, nic_base + EN0_RSARLO);
outb_p(0x00, nic_base + EN0_RSARHI);
outb_p(E8390_RREAD+E8390_START, nic_base + NE_CMD);
/* Make certain that the dummy read has occured. */
/* Make certain that the dummy read has occurred. */
SLOW_DOWN_IO;
SLOW_DOWN_IO;
SLOW_DOWN_IO;
......
......@@ -186,7 +186,7 @@ static void plip_interrupt(int reg_ptr);
static int plip_send(struct device *dev, enum plip_nibble_state *ns_p,
unsigned char data);
static void plip_send_packet(struct device *dev);
static int plip_ioctl(struct device *dev, struct ifreq *ifr);
static int plip_ioctl(struct device *dev, struct ifreq *ifr, int cmd);
static int plip_config(struct device *dev, struct ifmap *map);
......@@ -942,7 +942,7 @@ static int plip_config(struct device *dev, struct ifmap *map)
return 0;
}
static int plip_ioctl(struct device *dev, struct ifreq *rq)
static int plip_ioctl(struct device *dev, struct ifreq *rq, int cmd)
{
struct net_local *nl = (struct net_local *) dev->priv;
struct plipconf *pc = (struct plipconf *) &rq->ifr_data;
......
......@@ -94,7 +94,7 @@ static char ppp_warning[] = KERN_WARNING "PPP: ALERT! not INUSE! %d\n";
int ppp_init(struct device *);
static void ppp_init_ctrl_blk(struct ppp *);
static int ppp_dev_open(struct device *);
static int ppp_dev_ioctl(struct device *dev, struct ifreq *ifr);
static int ppp_dev_ioctl(struct device *dev, struct ifreq *ifr, int cmd);
static int ppp_dev_close(struct device *);
static void ppp_kick_tty(struct ppp *);
......@@ -607,7 +607,7 @@ ppp_dev_close(struct device *dev)
}
#ifndef NET02D
static int ppp_dev_ioctl(struct device *dev, struct ifreq *ifr)
static int ppp_dev_ioctl(struct device *dev, struct ifreq *ifr, int cmd)
{
struct ppp *ppp = &ppp_ctrl[dev->base_addr];
int error;
......
......@@ -232,8 +232,8 @@ static char *rcsid = "$Id: sk_g16.c,v 1.1 1994/06/30 16:25:15 root Exp $";
#define SK_IORUN 0x20
/*
* LANCE interrupt: 0 = LANCE interrupt occured
* 1 = no LANCE interrupt occured
* LANCE interrupt: 0 = LANCE interrupt occurred
* 1 = no LANCE interrupt occurred
*/
#define SK_IRQ 0x10
......@@ -1408,7 +1408,7 @@ static void SK_txintr(struct device *dev)
* We check status of transmitted packet.
* see LANCE data-sheet for error explanation
*/
if (tmdstat & TX_ERR) /* Error occured */
if (tmdstat & TX_ERR) /* Error occurred */
{
printk("%s: TX error: %04x %04x\n", dev->name, (int) tmdstat,
(int) tmdp->status2);
......@@ -1440,7 +1440,7 @@ static void SK_txintr(struct device *dev)
tmdp->status2 = 0; /* Clear error flags */
}
else if (tmdstat & TX_MORE) /* Collisions occured ? */
else if (tmdstat & TX_MORE) /* Collisions occurred ? */
{
/*
* Here I have a problem.
......
......@@ -166,7 +166,7 @@ static void sl_changedmtu(struct slip *sl)
int omtu=sl->mtu;
#ifdef CONFIG_AX25
sl->mtu=dev->mtu+73
sl->mtu=dev->mtu+73;
#else
sl->mtu=dev->mtu;
#endif
......@@ -572,7 +572,7 @@ sl_open(struct device *dev)
}
#ifdef CONFIG_AX25
sl->mtu = dev->mtu+73
sl->mtu = dev->mtu+73;
#else
sl->mtu = dev->mtu;
#endif
......
......@@ -3466,7 +3466,7 @@ static void intr_dma (struct Scsi_Host *host, struct NCR53c7x0_cmd *cmd) {
if (dstat & DSTAT_OPC) {
/*
* Ascertain if this IID interrupts occured before or after a STO
* Ascertain if this IID interrupts occurred before or after a STO
* interrupt. Since the interrupt handling code now leaves
* DSP unmodified until _after_ all stacked interrupts have been
* processed, reading the DSP returns the original DSP register.
......
......@@ -47,6 +47,11 @@ SCSI_OBJS := $(SCSI_OBJS) sg.o
SCSI_SRCS := $(SCSI_SRCS) sg.c
endif
ifdef CONFIG_SCSI_QLOGIC
SCSI_OBJS := $(SCSI_OBJS) qlogic.o
SCSI_SRCS := $(SCSI_SRCS) qlogic.c
endif
ifdef CONFIG_SCSI_AHA152X
SCSI_OBJS := $(SCSI_OBJS) aha152x.o
SCSI_SRCS := $(SCSI_SRCS) aha152x.c
......
......@@ -1647,7 +1647,7 @@ static int NCR5380_transfer_dma (struct Scsi_Host *instance,
NCR5380_write(MODE_REG, MR_BASE | MR_DMA_MODE);
#else
/*
* Note : on my sample board, watch-dog timeouts occured when interrupts
* Note : on my sample board, watch-dog timeouts occurred when interrupts
* were not disabled for the duration of a single DMA transfer, from
* before the setting of DMA mode to after transfer of the last byte.
*/
......@@ -1971,7 +1971,7 @@ static void NCR5380_information_transfer (struct Scsi_Host *instance) {
}
/*
* The prefered transfer method is going to be
* The preferred transfer method is going to be
* PSEUDO-DMA for systems that are strictly PIO,
* since we can let the hardware do the handshaking.
*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment