Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753261AbdF2VQU (ORCPT ); Thu, 29 Jun 2017 17:16:20 -0400 Received: from mail-yb0-f169.google.com ([209.85.213.169]:33292 "EHLO mail-yb0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751776AbdF2VQS (ORCPT ); Thu, 29 Jun 2017 17:16:18 -0400 MIME-Version: 1.0 In-Reply-To: <4dfd04a55324c2bdb6c9e8e65adf3cd8c0f324c9.1498754314.git.jerry.hoemann@hpe.com> References: <4dfd04a55324c2bdb6c9e8e65adf3cd8c0f324c9.1498754314.git.jerry.hoemann@hpe.com> From: Dan Williams Date: Thu, 29 Jun 2017 14:16:17 -0700 Message-ID: Subject: Re: [PATCH v3 7/7] acpi, nfit: override mask To: Jerry Hoemann Cc: "linux-nvdimm@lists.01.org" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1780 Lines: 39 On Thu, Jun 29, 2017 at 9:56 AM, Jerry Hoemann wrote: > Have module parameter override_dsm_mask override the dsm_mask for > root calls like it does for non-root dsm calls. > > Signed-off-by: Jerry Hoemann > --- > drivers/acpi/nfit/core.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c > index 7d2f1a0..87acaf2 100644 > --- a/drivers/acpi/nfit/core.c > +++ b/drivers/acpi/nfit/core.c > @@ -1627,6 +1627,7 @@ static void acpi_nfit_init_dsms(struct acpi_nfit_desc *acpi_desc) > struct nvdimm_bus_descriptor *nd_desc = &acpi_desc->nd_desc; > const u8 *uuid = to_nfit_uuid(NFIT_DEV_BUS); > struct acpi_device *adev; > + unsigned long dsm_mask; > int i; > > nd_desc->cmd_mask = acpi_desc->bus_cmd_force_en; > @@ -1638,7 +1639,11 @@ static void acpi_nfit_init_dsms(struct acpi_nfit_desc *acpi_desc) > if (acpi_check_dsm(adev->handle, uuid, 1, 1ULL << i)) > set_bit(i, &nd_desc->cmd_mask); > set_bit(ND_CMD_CALL, &nd_desc->cmd_mask); > - for (i = 0; i < ND_CMD_CALL; i++) > + > + dsm_mask = 0x3bf; > + if (override_dsm_mask) > + dsm_mask = override_dsm_mask; > + for_each_set_bit(i, &dsm_mask, BITS_PER_LONG) > if (acpi_check_dsm(adev->handle, uuid, 1, 1ULL << i)) > set_bit(i, &nd_desc->bus_dsm_mask); > } I don't think we need this patch. 'override_dsm_mask' is there to make it easier for vendor-specific DSM testing and debug for DIMM-level DSMs. The root bus is not vendor specific and the command set is not evolving at the same rate we are seeing change at DIMM-level DSMs.