From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964960AbbCSR1c (ORCPT ); Thu, 19 Mar 2015 13:27:32 -0400 Received: from mail-we0-f172.google.com ([74.125.82.172]:32914 "EHLO mail-we0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752908AbbCSR10 (ORCPT ); Thu, 19 Mar 2015 13:27:26 -0400 From: Bartosz Golaszewski To: LKML Cc: Guenter Roeck , lm-sensors , Andrew Morton , Steven Rostedt , Bartosz Golaszewski Subject: [PATCH v4 0/5] new macro: find_closest() Date: Thu, 19 Mar 2015 18:27:40 +0100 Message-Id: <1426786065-9798-1-git-send-email-bgolaszewski@baylibre.com> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series proposes to unduplicate the code used to find the member in an array closest to 'x'. The first patch adds a macro implementing the algorithm in two flavors - for arrays sorted in ascending and descending order. The second updates Documentation/CodingStyle on the naming convention for local variables in macros resembling functions. Other three patches replace duplicated code with calls to one of these macros in some hwmon drivers. v4: - use >= instead of > in find_closest_descending() - fix kernel docs - make local variables in added macros less likely to cause namespace collisions - use consistent statement expression syntax v3: https://lkml.org/lkml/2015/3/19/369 v2: https://lkml.org/lkml/2015/3/10/582 v1: https://lkml.org/lkml/2015/2/24/509 Bartosz Golaszewski (5): util_macros.h: add find_closest() macro documentation: update CodingStyle on local variables naming in macros hwmon: (ina2xx) replace ina226_avg_bits() with find_closest() hwmon: (lm85) use find_closest() in x_TO_REG() functions hwmon: (w83795) use find_closest_descending() in pwm_freq_to_reg() Documentation/CodingStyle | 13 +++++++++++++ drivers/hwmon/ina2xx.c | 17 +++-------------- drivers/hwmon/lm85.c | 26 ++++++++------------------ drivers/hwmon/w83795.c | 8 +++----- include/linux/util_macros.h | 40 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 67 insertions(+), 37 deletions(-) create mode 100644 include/linux/util_macros.h -- 2.1.4