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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C691C433FE for ; Thu, 13 Oct 2022 12:29:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229511AbiJMM3d (ORCPT ); Thu, 13 Oct 2022 08:29:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41142 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229516AbiJMM3b (ORCPT ); Thu, 13 Oct 2022 08:29:31 -0400 Received: from mail-qt1-x831.google.com (mail-qt1-x831.google.com [IPv6:2607:f8b0:4864:20::831]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0510611B2E5 for ; Thu, 13 Oct 2022 05:29:30 -0700 (PDT) Received: by mail-qt1-x831.google.com with SMTP id h24so518458qta.7 for ; Thu, 13 Oct 2022 05:29:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=mWjMckfYO6R3pT1gH/T7HL/KjgENyPTv8P7zBRmvj2E=; b=XvDln5twKivFEbGCXI+A5Pm/le3Z6axjz7FnqktjCKTSru73E7KUZtJ7bz7/AGR3T9 GoXY5M5rTphPUyLT9MVVaKopNZEgGXP7HGdMWURJ7oBNU4RPTdUcILdpUZIvo4bQkvt8 dTBKnFcU9CAv/kMpWOBMi/wauHGyFlcTxPlCYS/Q0HNCSs3NraT5VllMG06lh8WjoyWM JhGAuQY9IE7FqV8RQhJwsfBcmmFhOh1oDkBILgi+SW+R61jamHKA91QPrMUvQmek4542 IRA3zuOmu+XrAKPjtV3gv+uTTjbMb1D2GeH973VoqdS7S8+CoLyplGRyxhoDqmvXg27d qi6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=mWjMckfYO6R3pT1gH/T7HL/KjgENyPTv8P7zBRmvj2E=; b=JC42CehIshRbG2i9/M9aGuVPJLOOZYjGpwADKSXGnZLaJm5htUtou2uR8lZrTHk/ss 18sND+zmXkvAAMOo86iP85j8n7H70As2CpoRfOFGaxfr5m2zXSG+jWfXHMzKLn2xfNng lmWGyAlC/wmDNW4c1kUzCv2EuxJRXmSX0Q6zMZOYbRFMGN5WjqVD0HhCUETebgyHODvV 9Ir3qiMpi2ZWrH/M3nO/ql+OvGkxci2JIU00+rL7gVBvdd8LNndEzvaR4u82NQer05LJ LjQw397mZjNDiGn7iFB047OqSF/UwfGtfAWNNwSTvwg4GUE9s4jZIe/xTu4V7A5QoYi0 Z/Rg== X-Gm-Message-State: ACrzQf3AzySxunIFDfKjLeEJh77L4NdaUjosX8ymIr525/lE1zAr1RVg 1RnG/pSQbqAKRUz1Zhd+2Nh2EI6kNUgEtQ== X-Google-Smtp-Source: AMsMyM5sv0Vga4IZ3dJIN7R/wSMuZUBhI82PmiMBNMK7yz2Vh/tmREqvUu0S6OmCnZGsdEy5COcy2w== X-Received: by 2002:a05:620a:2891:b0:6bc:5c73:9728 with SMTP id j17-20020a05620a289100b006bc5c739728mr23863484qkp.178.1665664158502; Thu, 13 Oct 2022 05:29:18 -0700 (PDT) Received: from [192.168.1.57] (cpe-72-225-192-120.nyc.res.rr.com. [72.225.192.120]) by smtp.gmail.com with ESMTPSA id f7-20020a05620a408700b006bbc3724affsm18599984qko.45.2022.10.13.05.29.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 13 Oct 2022 05:29:17 -0700 (PDT) Message-ID: Date: Thu, 13 Oct 2022 08:27:05 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.2 Subject: Re: [PATCH v1 1/5] soc: hpe: add support for HPE GXP Programmable Register Driver To: "Hawkins, Nick" Cc: "Verdun, Jean-Marie" , "robh+dt@kernel.org" , "krzysztof.kozlowski+dt@linaro.org" , "linux@armlinux.org.uk" , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" References: <20221011185525.94210-1-nick.hawkins@hpe.com> <20221011185525.94210-2-nick.hawkins@hpe.com> Content-Language: en-US From: Krzysztof Kozlowski In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org On 12/10/2022 16:25, Hawkins, Nick wrote: > Greetings Krysztof, > > Thanks for the feedback! I have several questions below: > >>> + >>> +static ssize_t server_id_show(struct device *dev, struct >>> +device_attribute *attr, char *buf) { >>> + struct gxp_plreg_drvdata *drvdata = dev_get_drvdata(dev); >>> + int value_upper; >>> + int value_lower; >>> + ssize_t ret; >>> + u32 trans_offset; >>> + u32 trans_shift; >>> + >>> + /* read upper first */ >>> + address_translation(drvdata->server_id.upper[BYTE], >>> + &trans_offset, >>> + &trans_shift); >>> + regmap_read(drvdata->plreg_map, trans_offset, &value_upper); >>> + value_upper = value_upper >> trans_shift; >>> + value_upper = value_upper & drvdata->server_id.upper[MASK]; >>> + >>> + /* read lower last */ >>> + address_translation(drvdata->server_id.lower[BYTE], >>> + &trans_offset, >>> + &trans_shift); >>> + regmap_read(drvdata->plreg_map, trans_offset, &value_lower); >>> + value_lower = value_lower >> trans_shift; >>> + value_lower = value_lower & drvdata->server_id.lower[MASK]; >>> + >>> + ret = sprintf(buf, "0x%04x", value_upper | value_lower); >>> + >>> + return ret; >>> +} >>> + >>> +static DEVICE_ATTR_RO(server_id); > >> Missing sysfs documentation. > > Can you point me at the proper location / documentation for documenting sysfs? Thanks! Documentation/ABI/README > >>> + for (i = 0; i <= MASK; i++) { >>> + if (of_property_read_u32_index(np, "grp5", i, >>> + &drvdata->grp_intr_flags.grp5[i])) { >>> + dev_err(&pdev->dev, >>> + "grp5intsflags is missing its 'grp5' property index %d\n", i); >>> + return -ENODEV; >>> + } >>> + } >>> + >>> + np = of_get_child_by_name(pdev->dev.of_node, "pwrbtn"); >>> + if (!np) { >>> + dev_err(&pdev->dev, "%pOF is missing its 'pwrbtn' node\n", np); >>> + return -ENODEV; >>> + } >>> + >>> + for (i = 0; i <= VALUE; i++) { >>> + if (of_property_read_u32_index(np, "latch", i, >>> +&drvdata->pwrbtn.latch[i])) { > >> Undocumented properties. NAK. > > If each child node of hpe,gxp-plreg were documented with their respective properties would this be acceptable? I would need to see the bindings. Best regards, Krzysztof