Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Mon, 30 Sep 2002 10:09:30 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Mon, 30 Sep 2002 10:08:40 -0400 Received: from d06lmsgate-4.uk.ibm.com ([195.212.29.4]:51947 "EHLO d06lmsgate-4.uk.ibm.COM") by vger.kernel.org with ESMTP id convert rfc822-to-8bit; Mon, 30 Sep 2002 09:44:10 -0400 Content-Type: text/plain; charset="us-ascii" From: Martin Schwidefsky Organization: IBM Deutschland GmbH To: linux-kernel@vger.kernel.org, torvalds@transmeta.com Subject: [PATCH] 2.5.39 s390 (20/26): signal quiesce. Date: Mon, 30 Sep 2002 15:02:32 +0200 X-Mailer: KMail [version 1.4] MIME-Version: 1.0 Content-Transfer-Encoding: 8BIT Message-Id: <200209301502.32431.schwidefsky@de.ibm.com> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3943 Lines: 150 Add 'signal quiesque' feature to s390 hardware console. A signal quiesce is sent from VM or the service element every time the system should shut down. We receive the quiesce signal and call ctrl_alt_del(). Finally the mainframes have ctrl-alt-del as well :-) diff -urN linux-2.5.39/drivers/s390/char/hwc.h linux-2.5.39-s390/drivers/s390/char/hwc.h --- linux-2.5.39/drivers/s390/char/hwc.h Fri Sep 27 23:50:21 2002 +++ linux-2.5.39-s390/drivers/s390/char/hwc.h Mon Sep 30 13:33:22 2002 @@ -22,6 +22,7 @@ #define ET_PMsgCmd 0x09 #define ET_CntlProgOpCmd 0x20 #define ET_CntlProgIdent 0x0B +#define ET_SigQuiesce 0x1D #define ET_OpCmd_Mask 0x80000000 #define ET_Msg_Mask 0x40000000 @@ -29,6 +30,7 @@ #define ET_PMsgCmd_Mask 0x00800000 #define ET_CtlProgOpCmd_Mask 0x00000001 #define ET_CtlProgIdent_Mask 0x00200000 +#define ET_SigQuiesce_Mask 0x00000008 #define GMF_DOM 0x8000 #define GMF_SndAlrm 0x4000 @@ -218,7 +220,8 @@ 0x0000, 0x0000, sizeof (_hwcb_mask_t), - ET_OpCmd_Mask | ET_PMsgCmd_Mask | ET_StateChange_Mask, + ET_OpCmd_Mask | ET_PMsgCmd_Mask | + ET_StateChange_Mask | ET_SigQuiesce_Mask, ET_Msg_Mask | ET_PMsgCmd_Mask | ET_CtlProgIdent_Mask }; diff -urN linux-2.5.39/drivers/s390/char/hwc_rw.c linux-2.5.39-s390/drivers/s390/char/hwc_rw.c --- linux-2.5.39/drivers/s390/char/hwc_rw.c Mon Sep 30 13:33:09 2002 +++ linux-2.5.39-s390/drivers/s390/char/hwc_rw.c Mon Sep 30 13:33:22 2002 @@ -35,6 +35,8 @@ #define MIN(a,b) (((a