Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6

* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] cio: fix stsch_reset.
  [S390] Change max. buffer size for monwriter device.
This commit is contained in:
Linus Torvalds 2006-12-29 10:07:18 -08:00
commit 7479b1ce5e
2 changed files with 11 additions and 4 deletions

View File

@ -23,7 +23,7 @@
#include <asm/appldata.h> #include <asm/appldata.h>
#include <asm/monwriter.h> #include <asm/monwriter.h>
#define MONWRITE_MAX_DATALEN 4024 #define MONWRITE_MAX_DATALEN 4010
static int mon_max_bufs = 255; static int mon_max_bufs = 255;
static int mon_buf_count; static int mon_buf_count;

View File

@ -2,8 +2,7 @@
* drivers/s390/cio/cio.c * drivers/s390/cio/cio.c
* S/390 common I/O routines -- low level i/o calls * S/390 common I/O routines -- low level i/o calls
* *
* Copyright (C) 1999-2002 IBM Deutschland Entwicklung GmbH, * Copyright (C) IBM Corp. 1999,2006
* IBM Corporation
* Author(s): Ingo Adlung (adlung@de.ibm.com) * Author(s): Ingo Adlung (adlung@de.ibm.com)
* Cornelia Huck (cornelia.huck@de.ibm.com) * Cornelia Huck (cornelia.huck@de.ibm.com)
* Arnd Bergmann (arndb@de.ibm.com) * Arnd Bergmann (arndb@de.ibm.com)
@ -881,10 +880,18 @@ static void cio_reset_pgm_check_handler(void)
static int stsch_reset(struct subchannel_id schid, volatile struct schib *addr) static int stsch_reset(struct subchannel_id schid, volatile struct schib *addr)
{ {
int rc; int rc;
register struct subchannel_id reg1 asm ("1") = schid;
pgm_check_occured = 0; pgm_check_occured = 0;
s390_reset_pgm_handler = cio_reset_pgm_check_handler; s390_reset_pgm_handler = cio_reset_pgm_check_handler;
rc = stsch(schid, addr);
asm volatile(
" stsch 0(%2)\n"
" ipm %0\n"
" srl %0,28"
: "=d" (rc)
: "d" (reg1), "a" (addr), "m" (*addr) : "memory", "cc");
s390_reset_pgm_handler = NULL; s390_reset_pgm_handler = NULL;
if (pgm_check_occured) if (pgm_check_occured)
return -EIO; return -EIO;