From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 80F7BC4741F for ; Thu, 1 Oct 2020 16:01:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 408B221D92 for ; Thu, 1 Oct 2020 16:01:20 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="uiz+6SVY" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732667AbgJAQBT (ORCPT ); Thu, 1 Oct 2020 12:01:19 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43858 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732287AbgJAQBT (ORCPT ); Thu, 1 Oct 2020 12:01:19 -0400 Received: from mail-pg1-x543.google.com (mail-pg1-x543.google.com [IPv6:2607:f8b0:4864:20::543]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C451EC0613D0; Thu, 1 Oct 2020 09:01:17 -0700 (PDT) Received: by mail-pg1-x543.google.com with SMTP id 197so4358607pge.8; Thu, 01 Oct 2020 09:01:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/BT+mSaBhy+x60yncvZYPTuqegplR6LX7kQt6UIW6QY=; b=uiz+6SVYOhHTocEk07NmkueAfxTx+uEgUcmr/tRlOPSy99Z4WVtmomMXinJOOVzJlw U6yjFflYzGXiTAM7X7f4fwsK0/l5PLQA9q7p66i3OcSGGGrfwY7eE5gope/ZKRa7aiYb ciaq9GdC9NcxGwdlAEMd2BUa7J4KhmM+Qe2c9AJl24N1I+GNw8Ifgl47ap64Y24TvxT2 uQsXbpUxCMF2dWEJ5QYNHWiyiEYtLWz82gOP2Ou2XMwfl/vr2qR+TrMNIVjOovHOmC8I I6AdpJUBIqk1UfhjZUL8ywpxjDeFLf6HbOPwwaWDexo4JwQdKoOsQCzxtKrBVlG0k0nu qFXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/BT+mSaBhy+x60yncvZYPTuqegplR6LX7kQt6UIW6QY=; b=FFX7+ucfnZn04MtyTAIyPF/8vJITM6sfTKMXWZM0Gwi9o6jCAxEDpUjBC3wxilV2N5 PfGDmoyDInbDl3aqGwTsJeCjgK968ZS9ETerQHSnsmx5yMZ46B/3uGi9ZC5Eynz+a8Se oLS8X2QEH31aV6Be+1TH4MU2XNwNnoezyhMQAqFh8q//x2cQQyT13Je56SdWShUT68KL 7YVU0oiojLkSpMhhNDZbjpaU8NRXaUsSoHlfpQNANI9UN/RkHd+b/CuLC9+olR6cG3Us NAIf7x7SrlyIbLc4/jYBatv/cFPn0q6Oy/QG8O0J4sEbl6O+rcEguweD1i+ubUuevKUl +ihA== X-Gm-Message-State: AOAM531U2VA9fvN6QimlpPdhdl7yJ1KcKoQHRLFi4064QPzmT4x1UNcl V9mN0arRnmMdGvYkThK1czq5ep+S/Hq/uouGMxM= X-Google-Smtp-Source: ABdhPJzVMReb2G/hBmJ5iwEAzORaIOh+ApRwc+ssYpSff8yc93mXT/iCELWHcknEK9zsoAQZyDxwLEaDPGVoAVyZ3hE= X-Received: by 2002:a63:4c1d:: with SMTP id z29mr6847757pga.203.1601568077262; Thu, 01 Oct 2020 09:01:17 -0700 (PDT) MIME-Version: 1.0 References: <20201001014250.26987-1-david.e.box@linux.intel.com> <20201001014250.26987-5-david.e.box@linux.intel.com> In-Reply-To: <20201001014250.26987-5-david.e.box@linux.intel.com> From: Andy Shevchenko Date: Thu, 1 Oct 2020 19:00:58 +0300 Message-ID: Subject: Re: [PATCH V7 4/5] platform/x86: Intel PMT Telemetry capability driver To: "David E. Box" Cc: Lee Jones , Darren Hart , Andy Shevchenko , Bjorn Helgaas , Alexander Duyck , Hans de Goede , alexey.budankov@linux.intel.com, Linux Kernel Mailing List , Platform Driver , linux-pci Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Oct 1, 2020 at 4:43 AM David E. Box wrote: > > From: Alexander Duyck > > PMT Telemetry is a capability of the Intel Platform Monitoring Technology. > The Telemetry capability provides access to device telemetry metrics that > provide hardware performance data to users from read-only register spaces. > > With this driver present the intel_pmt directory can be populated with > telem devices. These devices will contain the standard intel_pmt sysfs > data and a "telem" binary sysfs attribute which can be used to access the > telemetry data. ... > +static DEFINE_XARRAY_ALLOC(telem_array); > +static struct intel_pmt_namespace pmt_telem_ns = { > + .name = "telem", > + .xa = &telem_array Leave comma at the end. > +}; > + > +/* > + * driver initialization > + */ This is a useless comment. > + size = offsetof(struct pmt_telem_priv, entry[pdev->num_resources]); > + priv = devm_kzalloc(&pdev->dev, size, GFP_KERNEL); > + if (!priv) > + return -ENOMEM; Please, use struct_size() from overflow.h instead of custom approach. ... > +static struct platform_driver pmt_telem_driver = { > + .driver = { > + .name = TELEM_DEV_NAME, I'm not sure I have interpreted this: - Use 'raw' string instead of defines for device names correctly. Can you elaborate? > + }, > + .remove = pmt_telem_remove, > + .probe = pmt_telem_probe, > +}; ... > +MODULE_ALIAS("platform:" TELEM_DEV_NAME); Ditto. -- With Best Regards, Andy Shevchenko