Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp569145pxk; Thu, 1 Oct 2020 09:05:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzfghAfK1HIwZ0MasjKnm2sPIi1A5c5fBwsKDKCJAgDmYYTEEfq8n1rGJGePaAdmUtU+eem X-Received: by 2002:a17:906:270f:: with SMTP id z15mr8777788ejc.6.1601568307390; Thu, 01 Oct 2020 09:05:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601568307; cv=none; d=google.com; s=arc-20160816; b=aukg2opdCV6TIDxd85Ys9TzT3I/f8wj7R4ORzqPFP2HoLGE98ZV7D9eXv5al5bhH6B g/9n6nCM+5usb1jISI/U6QLW1MN/C/mDOnq8OBRZewfD/LerGxku4n+7lFEX2C+hZjkY dFODMnqaC7k1tHmgcyrRAN4PixctRBKL/vkd5zP4dICYFGhwqMqqiHEzrj8iiHSXXnjx DrowjWryZQrpMiwif1kUazbGkK5YPZRJ4Jh+hO+A8fSrotaAZbgMeP+DP9anu4zHunNI 3iNSjRyOkN07X8jmxwmU88UOs7d6I37lafm1uTh4rIUhRoy05ChfZeLB3FhK/bv5m8xK C+og== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=/BT+mSaBhy+x60yncvZYPTuqegplR6LX7kQt6UIW6QY=; b=oM859f/9COzq3u9eVZSrd/eN8gUGiGZdSp8denA9GfL3OUcf21EP3dH5I3UVBC6s5s B6grzT1EzCM7+Q0isL2+GomFVTJ1Va5Q1kMNv6wZfMqBIZL8SqYntriklnVoBrolBiW2 ztktVXcRIu+RYwxU7VYPkt28QyLc8thmaI4jluZeOnwzBCFOdIUglLM63qx7flZrLCGy T1ojpiIsCygv2mGNfGrThDKMzCk+bsLC+4PVUyWs0PYiLpEukywHGCTEZ35XHVFlHD6q Dl9ovrOIcUw7Kna/1bhEDINN1d8LlPtA3I8we2v1ek+JCC4LeNH5YUxgU7fG97fjM9CY q+vw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=uiz+6SVY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s26si1484657eds.49.2020.10.01.09.04.41; Thu, 01 Oct 2020 09:05:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=uiz+6SVY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732642AbgJAQBT (ORCPT + 99 others); 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-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