Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp505213imm; Fri, 28 Sep 2018 02:06:36 -0700 (PDT) X-Google-Smtp-Source: ACcGV60U3n4BLHwPkb2Gp3WrqE/t+zJ8chUC6BhRKppop6PbZ4QkkZqt4tSqmzWrLrrsI03ELu4m X-Received: by 2002:a62:8a91:: with SMTP id o17-v6mr3945964pfk.184.1538125596506; Fri, 28 Sep 2018 02:06:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538125596; cv=none; d=google.com; s=arc-20160816; b=A58iEyYKRLJHulEgoCJa2vGubhMhw3Z0xXX+jHbxjk2pZXWipzjAwsU/p+icfJryoB P+9cUZcTvqVvg3Z1Xgr7Rn78TWmeIRX78pdUFd3r0NC5vbcWOWlRE31aKuPpYdNOVsQo FtjoWgstlCmbFPSI6OaDIwqGLzkTsDzBvU9IzUf67ysXpKeAeAO96jqipJT3s44aFwmN MUaT+/5cICMFzD54M0nZ/a4w6tMe5+22uwgXeVeYoZAwhTAZtoI9d6rv1CFwYm6gfi+W M8V8el2v0IHR07atcJ5HAM8uhnLY5HZ8y8HCWGb+6nzSCcrzjYVz/Rb5YPmu91d+Uk2c nNiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=b9EJnHDpoIikFB2pJG1iawXE70HuqjIU3jUKHsRIGvM=; b=ECnRrIBOcSVOaWGYGXaKmN2sL3TopyUYsFYl/vOQ3YmBmYjSjoGvDsPkjFg3iAM1Fo dsZemDdCyfhR+O53bvCB4qcXpXDbA6TN2+gfsfh4BIeOYNj1ACc3eLRxIcQmBdUG/nEp 32kuyZFCRqHDH2EfYud4pdsw3iv8rB9jri2UdccEfJSBh0dCp2eRdT7KF7K/CgTKP+Tz AWSoa2A+lraA0YE5JQOhxlvylWvzZ7tB0GrA5iNCSJgXhxcXBYEG30EqbMOxzoQbg3Yr RlyY5wAiT4xajZJ96TFANgH/F5jjTm77PyTuPCRXZaPq7ChPriwmPrft63fCaHl/NXzW LNBw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@raspberrypi.org header.s=google header.b=R4DJTxZU; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=raspberrypi.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u190-v6si4188384pgu.305.2018.09.28.02.06.20; Fri, 28 Sep 2018 02:06:36 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@raspberrypi.org header.s=google header.b=R4DJTxZU; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=raspberrypi.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729148AbeI1P1a (ORCPT + 99 others); Fri, 28 Sep 2018 11:27:30 -0400 Received: from mail-pf1-f193.google.com ([209.85.210.193]:46632 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726440AbeI1P1a (ORCPT ); Fri, 28 Sep 2018 11:27:30 -0400 Received: by mail-pf1-f193.google.com with SMTP id d8-v6so3861686pfo.13 for ; Fri, 28 Sep 2018 02:04:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=b9EJnHDpoIikFB2pJG1iawXE70HuqjIU3jUKHsRIGvM=; b=R4DJTxZUF6o091yHbSpChA7THlszAOwlOXHCCbuR/sfIrw3hju8vR0GUHwAZtcAqAT oRtUe9XKPxM0DJq28sEdKyZBNGQoSR7JNIz3MeRXcxaRpwQL9ScsQjmYryzeRRewEzlk /ePujeBanMNYKgfqtFy1CZ6kjC0sk+gBYgUR0rxpGnTasIMHgolJfHFZ5MyBsp0yO8LQ Xl8UzJK8vtbleGSr6HyvgCgckNavPW/8uPHw6LhIB1sqU28C8DDxTfVRj4/V82mI0437 2J3uQZSG833UZftralROrcOzoRmeBshQYSjNqL0y3QIhA4q9bUxF34SX8RBmd47xtSW+ Hfqw== 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=b9EJnHDpoIikFB2pJG1iawXE70HuqjIU3jUKHsRIGvM=; b=pFnkZmBpXBKhi4Bz8NFfe2YPbGh4r6tFF61N/gqMIstSHWqkmtdZv28Rd/Xub8vB/n 2lsMyfp9wpmO5rBbQorigOZqM8ynj8i9TwHq0ua4L+4QIXN7QG2SkpGxj3Y7RZV0puqC Qu28rOitv6HkOnMt00zL/L/JklUdCOssC5ZY5T/B0Ug4/ZfQajLVWDZ6iUanH5uw2rgi /8DDZ/uHMv0dGqNdGJGLtFP+QTO2gKOj50shPLSiAZdJQsjdVHlR0m1m/tXbinQ4wKwF 1Hp6tlsEnevZkXobHxu91BYc/yPyHBufZD5+iGPkeEuSB5emmk7xcYtbMQDtdnF4REGk YN4Q== X-Gm-Message-State: ABuFfojSOG7x7IpWtkKhokPxkoswUcIKbm2uj+UG48lAXniD9iH0Q/3B 0YLmu9xW+wimwpcGbpdwHGOwaacKFF7reWDYcMAb X-Received: by 2002:a17:902:e85:: with SMTP id 5-v6mr14835799plx.73.1538125482911; Fri, 28 Sep 2018 02:04:42 -0700 (PDT) MIME-Version: 1.0 References: <20180928005038.1697-1-natechancellor@gmail.com> In-Reply-To: <20180928005038.1697-1-natechancellor@gmail.com> From: Dave Stevenson Date: Fri, 28 Sep 2018 10:04:29 +0100 Message-ID: Subject: Re: [PATCH] staging: bcm2835-camera: Avoid unneeded internal declaration warning To: natechancellor@gmail.com Cc: Eric Anholt , Stefan Wahren , Greg KH , devel@driverdev.osuosl.org, ndesaulniers@google.com, linux-kernel@vger.kernel.org, "moderated list:BROADCOM BCM2835 ARM ARCHITECTURE" , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Nate Thanks for the patch. On Fri, 28 Sep 2018 at 01:53, Nathan Chancellor wrote: > > Clang warns: > > drivers/staging/vc04_services/bcm2835-camera/controls.c:59:18: warning: > variable 'mains_freq_qmenu' is not needed and will not be emitted > [-Wunneeded-internal-declaration] > static const s64 mains_freq_qmenu[] = { > ^ > 1 warning generated. > > This is because mains_freq_qmenu is currently only used in an ARRAY_SIZE > macro, which is a compile time evaluation in this case. Avoid this by > adding mains_freq_qmenu as the imenu member of this structure, which > matches all other controls that uses the ARRAY_SIZE macro in v4l2_ctrls. > This turns out to be a no-op because V4L2_CID_MPEG_VIDEO_BITRATE_MODE is > defined as a MMAL_CONTROL_TYPE_STD_MENU, which does not pass the imenu > definition along to v4l2_ctrl_new in bm2835_mmal_init_controls. There's a slight confusion betwen V4L2_CID_MPEG_VIDEO_BITRATE_MODE and V4L2_CID_POWER_LINE_FREQUENCY in your description. However you're right that MMAL_CONTROL_TYPE_STD_MENU calls v4l2_ctrl_new_std_menu which doesn't need a menu array (it's v4l2_ctrl_new_int_menu that does). That means the correct fix is to define the max value using the relevant enum (in this case V4L2_CID_POWER_LINE_FREQUENCY_AUTO) and remove the array. The same is true for V4L2_CID_MPEG_VIDEO_BITRATE_MODE - max should be V4L2_MPEG_VIDEO_BITRATE_MODE_CBR, and remove the bitrate_mode_qmenu array. Thanks, Dave > Link: https://github.com/ClangBuiltLinux/linux/issues/122 > Signed-off-by: Nathan Chancellor > --- > drivers/staging/vc04_services/bcm2835-camera/controls.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/vc04_services/bcm2835-camera/controls.c b/drivers/staging/vc04_services/bcm2835-camera/controls.c > index cff7b1e07153..a2c55cb2192a 100644 > --- a/drivers/staging/vc04_services/bcm2835-camera/controls.c > +++ b/drivers/staging/vc04_services/bcm2835-camera/controls.c > @@ -1106,7 +1106,7 @@ static const struct bm2835_mmal_v4l2_ctrl v4l2_ctrls[V4L2_CTRL_COUNT] = { > { > V4L2_CID_POWER_LINE_FREQUENCY, MMAL_CONTROL_TYPE_STD_MENU, > 0, ARRAY_SIZE(mains_freq_qmenu) - 1, > - 1, 1, NULL, > + 1, 1, mains_freq_qmenu, > MMAL_PARAMETER_FLICKER_AVOID, > &ctrl_set_flicker_avoidance, > false > -- > 2.19.0 > > > _______________________________________________ > linux-rpi-kernel mailing list > linux-rpi-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-rpi-kernel