Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp652376pxb; Tue, 5 Apr 2022 17:23:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw4yFUXRiDq49OKs1bTAmd4bjJV7xLag9BdSGUBntowTDQFRayB5bBId2/fTLIIXZJfSbhQ X-Received: by 2002:a17:903:22ca:b0:14c:d9cf:a463 with SMTP id y10-20020a17090322ca00b0014cd9cfa463mr6314623plg.32.1649204610110; Tue, 05 Apr 2022 17:23:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649204610; cv=none; d=google.com; s=arc-20160816; b=KnXq/81B6iwp0mqg9EJ+CaN0d4iw3SjWnN9Wjisk2TXXoqv4AYbmzHWL90MVCTAs+g Y5HA8lk70cP9BC0MwicUL+zcMpi8u7NY9O1qUEXZ4NtkI3F4lvwz2+TVJ2um7D1pFBSt vaf/zCibuK/1ySzZbpsBpGlqXwO2bZ5pNuwhPuW+UoJA4r1iYvdJe28Aa7kwhTYvOTwn ByMIlz5FqV2B9WQ74G/8b2a9YUvg1yw5bIjK3vUeZMza5tn0mvdJZtVckBW6YHPL/63N kf5XrFRCN7QV56y8AHKBXF82oRsSumqvpg1czaUQDNkGZOjn9PN+ztYdOe4JrMXtwqvo 74Lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:date:subject:from:message-id:cc:to :dkim-signature; bh=ULP8rcfaCHueJJcnGSad4jhUThCttt20904WHbSKF9w=; b=PXtT66Ek7X45Qlfgpmr0wHa/i8arvyc7rs1Fb4QwJOEIlKUVFdvLRAzYB9qDjYzlae UTF17FQzzoCFxV/2bqTJWRuF0D/hb0QoD5ysBrXJHxpaUdso/NgYt2nBe3Oaw5TR0azi TWD2IdElDiOrI7KEowrC+PYMCdRydh3gKcWhez0Z2AxYCeeMxEYQWoqCwR1q5R+o+AnB WXEle0tCyM408kGGFQDG5y6URQedejSD1kmofFQ7OEWV/rmyxckQOMN6SnGafR2rMClo Dm+wvCYoNZpDcSOOpk9Ww0Xyea1S7wMWZzZ0IuV4UdUylKTvPWHa9TyMwnmF976hwrT5 YJgA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=LuWVE8ab; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id s23-20020a170902b19700b00153b2d164a0si12923519plr.168.2022.04.05.17.23.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Apr 2022 17:23:30 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@messagingengine.com header.s=fm3 header.b=LuWVE8ab; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id DFA85164D03; Tue, 5 Apr 2022 17:09:52 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347288AbiDEJzR (ORCPT + 99 others); Tue, 5 Apr 2022 05:55:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56226 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238285AbiDEISr (ORCPT ); Tue, 5 Apr 2022 04:18:47 -0400 Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 210C7E6; Tue, 5 Apr 2022 01:08:29 -0700 (PDT) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 194A75C0199; Tue, 5 Apr 2022 04:08:29 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Tue, 05 Apr 2022 04:08:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:date:date:from:from:in-reply-to :message-id:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=ULP8rc faCHueJJcnGSad4jhUThCttt20904WHbSKF9w=; b=LuWVE8abpnpw4YMexiymBr daGPXkPYmeSvVFYEoF4SoLCAG6GDvo4nnfHh93gREsZYeWKHMzYtMYISU/0x2l2p Pamif2EuIzolCGUjnFtm6aVq0Pm1FE/+HNOclGrajztaRGxYbKUZm/zZINHfLO1Q bqNRg8v5BtNHnbJJ36PyNRgiKNDwoH7gIPFURIbcA0UyoFK3ecUg4EK7kJjyFQwQ oo8S/iVae1zeWlVkEVVGGXeyaPvIoOYPvrBnEcqSz7lzG2zlV4c3tK394FaKHZ9Z 1fhkEXjaLi8yYJAlB5b9L0cKwwanSzOXYEqD7vLjEtApj2kCZuUF5w8E9onV82mw == X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudejfedguddvkecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefvkffhufffsedttdertddttddtnecuhfhrohhmpefhihhnnhcuvfhhrghi nhcuoehfthhhrghinheslhhinhhugidqmheikehkrdhorhhgqeenucggtffrrghtthgvrh hnpedtleetkeelkeekvdeujeehkefgvddtheehhfetieethfetfeeghfduheevveelleen ucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehfthhhrg hinheslhhinhhugidqmheikehkrdhorhhg X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 5 Apr 2022 04:08:25 -0400 (EDT) To: "James E.J. Bottomley" , "Martin K. Petersen" Cc: linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org Message-Id: <4948f86703d23e5048f4e24e649680259b2610f9.1649146056.git.fthain@linux-m68k.org> From: Finn Thain Subject: [PATCH] scsi: sym53c500_cs: Stop using struct scsi_pointer Date: Tue, 05 Apr 2022 18:07:36 +1000 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This driver doesn't use SCp.ptr to save a SCSI command data pointer which means "scsi pointer" is a complete misnomer here. Only a few members of struct scsi_pointer are needed so move those to private command data. Signed-off-by: Finn Thain --- The sym53c500_cs driver somehow missed out on complete scsi_pointer removal in Bart's recently queued patch series, unlike nsp32 for example. So this patch finishes the job. Compile-tested only. --- drivers/scsi/pcmcia/sym53c500_cs.c | 51 ++++++++++++++++-------------- 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/drivers/scsi/pcmcia/sym53c500_cs.c b/drivers/scsi/pcmcia/sym53c500_cs.c index c4a838635893..4980247f95bc 100644 --- a/drivers/scsi/pcmcia/sym53c500_cs.c +++ b/drivers/scsi/pcmcia/sym53c500_cs.c @@ -192,7 +192,13 @@ struct sym53c500_data { int fast_pio; }; -static struct scsi_pointer *sym53c500_scsi_pointer(struct scsi_cmnd *cmd) +struct sym53c500_cmd_priv { + int status; + int message; + int phase; +}; + +static struct sym53c500_cmd_priv *SYM53c500_priv(struct scsi_cmnd *cmd) { return scsi_cmd_priv(cmd); } @@ -356,7 +362,7 @@ SYM53C500_intr(int irq, void *dev_id) struct sym53c500_data *data = (struct sym53c500_data *)dev->hostdata; struct scsi_cmnd *curSC = data->current_SC; - struct scsi_pointer *scsi_pointer = sym53c500_scsi_pointer(curSC); + struct sym53c500_cmd_priv *scp = SYM53c500_priv(curSC); int fast_pio = data->fast_pio; spin_lock_irqsave(dev->host_lock, flags); @@ -403,12 +409,11 @@ SYM53C500_intr(int irq, void *dev_id) if (int_reg & 0x20) { /* Disconnect */ DEB(printk("SYM53C500: disconnect intr received\n")); - if (scsi_pointer->phase != message_in) { /* Unexpected disconnect */ + if (scp->phase != message_in) { /* Unexpected disconnect */ curSC->result = DID_NO_CONNECT << 16; } else { /* Command complete, return status and message */ - curSC->result = (scsi_pointer->Status & 0xff) | - ((scsi_pointer->Message & 0xff) << 8) | - (DID_OK << 16); + curSC->result = (scp->status & 0xff) | + ((scp->message & 0xff) << 8) | (DID_OK << 16); } goto idle_out; } @@ -419,7 +424,7 @@ SYM53C500_intr(int irq, void *dev_id) struct scatterlist *sg; int i; - scsi_pointer->phase = data_out; + scp->phase = data_out; VDEB(printk("SYM53C500: Data-Out phase\n")); outb(FLUSH_FIFO, port_base + CMD_REG); LOAD_DMA_COUNT(port_base, scsi_bufflen(curSC)); /* Max transfer size */ @@ -438,7 +443,7 @@ SYM53C500_intr(int irq, void *dev_id) struct scatterlist *sg; int i; - scsi_pointer->phase = data_in; + scp->phase = data_in; VDEB(printk("SYM53C500: Data-In phase\n")); outb(FLUSH_FIFO, port_base + CMD_REG); LOAD_DMA_COUNT(port_base, scsi_bufflen(curSC)); /* Max transfer size */ @@ -453,12 +458,12 @@ SYM53C500_intr(int irq, void *dev_id) break; case 0x02: /* COMMAND */ - scsi_pointer->phase = command_ph; + scp->phase = command_ph; printk("SYM53C500: Warning: Unknown interrupt occurred in command phase!\n"); break; case 0x03: /* STATUS */ - scsi_pointer->phase = status_ph; + scp->phase = status_ph; VDEB(printk("SYM53C500: Status phase\n")); outb(FLUSH_FIFO, port_base + CMD_REG); outb(INIT_CMD_COMPLETE, port_base + CMD_REG); @@ -471,24 +476,22 @@ SYM53C500_intr(int irq, void *dev_id) case 0x06: /* MESSAGE-OUT */ DEB(printk("SYM53C500: Message-Out phase\n")); - scsi_pointer->phase = message_out; + scp->phase = message_out; outb(SET_ATN, port_base + CMD_REG); /* Reject the message */ outb(MSG_ACCEPT, port_base + CMD_REG); break; case 0x07: /* MESSAGE-IN */ VDEB(printk("SYM53C500: Message-In phase\n")); - scsi_pointer->phase = message_in; + scp->phase = message_in; - scsi_pointer->Status = inb(port_base + SCSI_FIFO); - scsi_pointer->Message = inb(port_base + SCSI_FIFO); + scp->status = inb(port_base + SCSI_FIFO); + scp->message = inb(port_base + SCSI_FIFO); VDEB(printk("SCSI FIFO size=%d\n", inb(port_base + FIFO_FLAGS) & 0x1f)); - DEB(printk("Status = %02x Message = %02x\n", - scsi_pointer->Status, scsi_pointer->Message)); + DEB(printk("Status = %02x Message = %02x\n", scp->status, scp->message)); - if (scsi_pointer->Message == SAVE_POINTERS || - scsi_pointer->Message == DISCONNECT) { + if (scp->message == SAVE_POINTERS || scp->message == DISCONNECT) { outb(SET_ATN, port_base + CMD_REG); /* Reject message */ DEB(printk("Discarding SAVE_POINTERS message\n")); } @@ -500,7 +503,7 @@ SYM53C500_intr(int irq, void *dev_id) return IRQ_HANDLED; idle_out: - scsi_pointer->phase = idle; + scp->phase = idle; scsi_done(curSC); goto out; } @@ -548,7 +551,7 @@ SYM53C500_info(struct Scsi_Host *SChost) static int SYM53C500_queue_lck(struct scsi_cmnd *SCpnt) { - struct scsi_pointer *scsi_pointer = sym53c500_scsi_pointer(SCpnt); + struct sym53c500_cmd_priv *scp = SYM53c500_priv(SCpnt); int i; int port_base = SCpnt->device->host->io_port; struct sym53c500_data *data = @@ -565,9 +568,9 @@ static int SYM53C500_queue_lck(struct scsi_cmnd *SCpnt) VDEB(printk("\n")); data->current_SC = SCpnt; - scsi_pointer->phase = command_ph; - scsi_pointer->Status = 0; - scsi_pointer->Message = 0; + scp->phase = command_ph; + scp->status = 0; + scp->message = 0; /* We are locked here already by the mid layer */ REG0(port_base); @@ -682,7 +685,7 @@ static struct scsi_host_template sym53c500_driver_template = { .this_id = 7, .sg_tablesize = 32, .shost_groups = SYM53C500_shost_groups, - .cmd_size = sizeof(struct scsi_pointer), + .cmd_size = sizeof(struct sym53c500_cmd_priv), }; static int SYM53C500_config_check(struct pcmcia_device *p_dev, void *priv_data) -- 2.32.0