From patchwork Thu Apr 7 19:29:05 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sumit Saxena X-Patchwork-Id: 559414 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4C654C433F5 for ; Thu, 7 Apr 2022 19:32:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229690AbiDGTeF (ORCPT ); Thu, 7 Apr 2022 15:34:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51794 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229469AbiDGTeD (ORCPT ); Thu, 7 Apr 2022 15:34:03 -0400 Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0DC882B4481 for ; Thu, 7 Apr 2022 12:31:52 -0700 (PDT) Received: by mail-pl1-x631.google.com with SMTP id d15so5901403pll.10 for ; Thu, 07 Apr 2022 12:31:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:mime-version; bh=bg8mstvRCMBocBZgStR59YYl8gkaGHLnhDVu4be2oZ8=; b=Cpi6j2gF4157zNhQrFdj6Q5eHAJ1jpiCcwlF4qsCxvwjDDP1SlS8khCMXiK2nvJa6P CU3dJ59yEZrh0Xq+m4/cscRYukHq/VtCrrG6IeO4zBvhxxo217/FKgRVjwcsNL4ddgcl ZfeGxU6i9iM/57m7f5RzEUu7PWjuToclcxid8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version; bh=bg8mstvRCMBocBZgStR59YYl8gkaGHLnhDVu4be2oZ8=; b=HN0bVoGH/sLKN8RNnNO8GbvI0a25s1qekBdUtmprPrdZqbDZvsEOcA0Y2VkR148sNd d7A0qQup532Eu3pNnkl0tM+xX0LQpKp+EC/t+iotyc7oh8g5lpdVsswxYeXBYz2n9Cp6 xn9q2nePx3Fo7mlmWYPPXpcgedwmbiXohLw/nUTJUSetGF/q+GXNlm0ENjO92QCJrRtv 5MpUYTjbrT6iYwsKTC5mqSySRfdZUwpJ32leS/zyHxC9+/amSWSQo7FpIc2Nb8ogcH5U q+IAFepd5OVG6GAAGq7+mS4UOQ+8toRUTd/WEsEzgXs/Fv2sawS3iIO1FTuEeKAPYei4 HqTg== X-Gm-Message-State: AOAM532vG+pcVpkK0EvDIIavLFK5N0Ct41zhi+KoDNaGUxGejL1qPR4r Yd5Jv6h0zfdkpxkFbR/mKQQ5xAPC5xUGomdWSlXoMa/P3FKiXP6W1TD97HZ2RFV1PpoBOQpY5rq Fl2kDTL4jFgTRE12zzvu8ec0IC2o/WPM5yNTAjPQqmTzexdJHyEaXVb5Ianx1m4qbLXY5CtWcMx z6QMorNrwsjw== X-Google-Smtp-Source: ABdhPJxf8tNCKMupMIFH27EPkvs4E+RtxT07zyR4CGOsHiln6v+XSULu2HZ0dkrJV/E6yecyhkdwqw== X-Received: by 2002:a17:90a:5409:b0:1ca:8a21:323b with SMTP id z9-20020a17090a540900b001ca8a21323bmr17758286pjh.135.1649359788236; Thu, 07 Apr 2022 12:29:48 -0700 (PDT) Received: from dhcp-10-123-20-15.dhcp.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id o3-20020a056a0015c300b004fb24adc4b8sm23579275pfu.159.2022.04.07.12.29.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Apr 2022 12:29:47 -0700 (PDT) From: Sumit Saxena To: linux-scsi@vger.kernel.org Cc: martin.petersen@oracle.com, bvanassche@acm.org, hch@lst.de, sathya.prakash@broadcom.com, kashyap.desai@broadcom.com, chandrakanth.patil@broadcom.com, sreekanth.reddy@broadcom.com, prayas.patel@broadcom.com, Sumit Saxena Subject: [PATCH v3 0/8] mpi3mr: add BSG interface support for controller management Date: Thu, 7 Apr 2022 15:29:05 -0400 Message-Id: <20220407192913.345411-1-sumit.saxena@broadcom.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org This patchset adds BSG interface support for controller management. BSG layer facilitates communication/data exchange between application and driver/firmware through BSG device node. v3: -Moved MPI headers to /include/uapi/scsi/mpi3mr -As Bart suggested, moved struct mpi3mr_nvme_pt_sge from uapi header to driver header. v2: -Moved definitions to be used by user space applications to header scsi_bsg_mpi3mr.h in /include/upai/scsi Sumit Saxena (8): mpi3mr: add BSG device support mpi3mr: add support for driver commands mpi3mr: move MPI headers to uapi/scsi/mpi3mr mpi3mr: add support for MPT commands mpi3mr: add support for PEL commands mpi3mr: expose adapter state to sysfs mpi3mr: add support for nvme pass-through mpi3mr: update driver version to 8.0.0.69.0 drivers/scsi/mpi3mr/Kconfig | 1 + drivers/scsi/mpi3mr/Makefile | 1 + drivers/scsi/mpi3mr/mpi3mr.h | 146 +- drivers/scsi/mpi3mr/mpi3mr_app.c | 1612 +++++++++++++++++ drivers/scsi/mpi3mr/mpi3mr_debug.h | 37 +- drivers/scsi/mpi3mr/mpi3mr_fw.c | 331 +++- drivers/scsi/mpi3mr/mpi3mr_os.c | 52 +- .../uapi/scsi/mpi3mr}/mpi30_cnfg.h | 0 .../uapi/scsi/mpi3mr}/mpi30_image.h | 0 .../uapi/scsi/mpi3mr}/mpi30_init.h | 0 .../uapi/scsi/mpi3mr}/mpi30_ioc.h | 0 .../uapi/scsi/mpi3mr}/mpi30_pci.h | 0 .../uapi/scsi/mpi3mr}/mpi30_sas.h | 0 .../uapi/scsi/mpi3mr}/mpi30_transport.h | 0 include/uapi/scsi/mpi3mr/mpi3mr_bsg.h | 444 +++++ 15 files changed, 2599 insertions(+), 25 deletions(-) create mode 100644 drivers/scsi/mpi3mr/mpi3mr_app.c rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_cnfg.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_image.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_init.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_ioc.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_pci.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_sas.h (100%) rename {drivers/scsi/mpi3mr/mpi => include/uapi/scsi/mpi3mr}/mpi30_transport.h (100%) create mode 100644 include/uapi/scsi/mpi3mr/mpi3mr_bsg.h