From patchwork Mon Feb 10 06:48:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863964 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4ED67199237; Mon, 10 Feb 2025 06:49:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170168; cv=none; b=t2sBWlV/WjGPK8xiR6xDlzxRZhRiWRuMVllY8Le5hj5zAngVJApOI+dN2Fit67/Yo05kqVq81iXa48OaLZ+45/gcjQ/B3Ur7tuVkkp1I+ou+4mweakUx/PnWJQkYIK3naSOoZhPBZAxkPJ+RU1PZIU0CKEjD3l6sLwEcO4P8dhw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170168; c=relaxed/simple; bh=0/mIx0lDcKAufZebxBVJ3umyd0uC7bn2bFzKCrpc1rA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ba89MDMaISIOslIth0X+IqWiiObyybUkYVJTXvzlbdTBtny4pIaq1uQfZ7hp7OD3cZQAa4ETdU5OEfymzkbNEDLIoddEehbURfPaaDBsoisOfjI7trro8SEZWToZe1Mmcd2NBpgTgR3afyIzVGaB/YLDJVhHxPHr7AOD7XhfTWo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=b3BbtGM1; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="b3BbtGM1" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170167; x=1770706167; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=0/mIx0lDcKAufZebxBVJ3umyd0uC7bn2bFzKCrpc1rA=; b=b3BbtGM1YilcbuxSc06cqp+I2xj6r7aMHQH/aveTcfgnZjm6ILbeFSqG 86mJowXujpmhu94YzQJamAUQxECNMjaA6SSn9cnDfyoeByDlQPiWbkMbs FXwdVZMWqD9s35rlz03p1OWbMw11KiJuv1RAOZJVJ4OPASOeqvI0FVgwq UIadQMaDoMenst7JSYp/qwvmI2OrSmJy5BydwedPoqpjmGzBnsGMRYbqR MrxeDgdsWnw1mZLXeWrS/lhsoPwqm2IH3ILqBqNdhyybAeVUcmUkoMvt3 himooppvmsEbXJBgq/44xycGnQBwAdjXV0sqYK98JkAaXlvcDmyuTvEMM Q==; X-CSE-ConnectionGUID: WToqYP2kRtaLJEd5m4Ho5w== X-CSE-MsgGUID: nvcPWWtHQuesBI0gegb0nQ== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499290" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499290" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:49:26 -0800 X-CSE-ConnectionGUID: ozlGUaOcSsC/qRV2hHGpcA== X-CSE-MsgGUID: UmvCuoM0TH+zkcFUWpbv2Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122385" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:49:20 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 01/20] driver core: Split devres APIs to device/devres.h Date: Mon, 10 Feb 2025 12:18:47 +0530 Message-Id: <20250210064906.2181867-2-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: Andy Shevchenko device.h is a huge header which is hard to follow and easy to miss something. Improve that by splitting devres APIs to device/devres.h. In particular this helps to speedup the build of the code that includes device.h solely for a devres APIs. While at it, cast the error pointers to __iomem using IOMEM_ERR_PTR() and fix sparse warnings. Signed-off-by: Andy Shevchenko Signed-off-by: Raag Jadav --- include/linux/device.h | 119 +------------------------------- include/linux/device/devres.h | 125 ++++++++++++++++++++++++++++++++++ 2 files changed, 126 insertions(+), 118 deletions(-) create mode 100644 include/linux/device/devres.h diff --git a/include/linux/device.h b/include/linux/device.h index 80a5b3268986..78ca7fd0e625 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -26,9 +26,9 @@ #include #include #include -#include #include #include +#include #include #include #include @@ -281,123 +281,6 @@ int __must_check device_create_bin_file(struct device *dev, void device_remove_bin_file(struct device *dev, const struct bin_attribute *attr); -/* device resource management */ -typedef void (*dr_release_t)(struct device *dev, void *res); -typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data); - -void *__devres_alloc_node(dr_release_t release, size_t size, gfp_t gfp, - int nid, const char *name) __malloc; -#define devres_alloc(release, size, gfp) \ - __devres_alloc_node(release, size, gfp, NUMA_NO_NODE, #release) -#define devres_alloc_node(release, size, gfp, nid) \ - __devres_alloc_node(release, size, gfp, nid, #release) - -void devres_for_each_res(struct device *dev, dr_release_t release, - dr_match_t match, void *match_data, - void (*fn)(struct device *, void *, void *), - void *data); -void devres_free(void *res); -void devres_add(struct device *dev, void *res); -void *devres_find(struct device *dev, dr_release_t release, - dr_match_t match, void *match_data); -void *devres_get(struct device *dev, void *new_res, - dr_match_t match, void *match_data); -void *devres_remove(struct device *dev, dr_release_t release, - dr_match_t match, void *match_data); -int devres_destroy(struct device *dev, dr_release_t release, - dr_match_t match, void *match_data); -int devres_release(struct device *dev, dr_release_t release, - dr_match_t match, void *match_data); - -/* devres group */ -void * __must_check devres_open_group(struct device *dev, void *id, gfp_t gfp); -void devres_close_group(struct device *dev, void *id); -void devres_remove_group(struct device *dev, void *id); -int devres_release_group(struct device *dev, void *id); - -/* managed devm_k.alloc/kfree for device drivers */ -void *devm_kmalloc(struct device *dev, size_t size, gfp_t gfp) __alloc_size(2); -void *devm_krealloc(struct device *dev, void *ptr, size_t size, - gfp_t gfp) __must_check __realloc_size(3); -__printf(3, 0) char *devm_kvasprintf(struct device *dev, gfp_t gfp, - const char *fmt, va_list ap) __malloc; -__printf(3, 4) char *devm_kasprintf(struct device *dev, gfp_t gfp, - const char *fmt, ...) __malloc; -static inline void *devm_kzalloc(struct device *dev, size_t size, gfp_t gfp) -{ - return devm_kmalloc(dev, size, gfp | __GFP_ZERO); -} -static inline void *devm_kmalloc_array(struct device *dev, - size_t n, size_t size, gfp_t flags) -{ - size_t bytes; - - if (unlikely(check_mul_overflow(n, size, &bytes))) - return NULL; - - return devm_kmalloc(dev, bytes, flags); -} -static inline void *devm_kcalloc(struct device *dev, - size_t n, size_t size, gfp_t flags) -{ - return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO); -} -static inline __realloc_size(3, 4) void * __must_check -devm_krealloc_array(struct device *dev, void *p, size_t new_n, size_t new_size, gfp_t flags) -{ - size_t bytes; - - if (unlikely(check_mul_overflow(new_n, new_size, &bytes))) - return NULL; - - return devm_krealloc(dev, p, bytes, flags); -} - -void devm_kfree(struct device *dev, const void *p); -char *devm_kstrdup(struct device *dev, const char *s, gfp_t gfp) __malloc; -const char *devm_kstrdup_const(struct device *dev, const char *s, gfp_t gfp); -void *devm_kmemdup(struct device *dev, const void *src, size_t len, gfp_t gfp) - __realloc_size(3); - -unsigned long devm_get_free_pages(struct device *dev, - gfp_t gfp_mask, unsigned int order); -void devm_free_pages(struct device *dev, unsigned long addr); - -#ifdef CONFIG_HAS_IOMEM -void __iomem *devm_ioremap_resource(struct device *dev, - const struct resource *res); -void __iomem *devm_ioremap_resource_wc(struct device *dev, - const struct resource *res); - -void __iomem *devm_of_iomap(struct device *dev, - struct device_node *node, int index, - resource_size_t *size); -#else - -static inline -void __iomem *devm_ioremap_resource(struct device *dev, - const struct resource *res) -{ - return ERR_PTR(-EINVAL); -} - -static inline -void __iomem *devm_ioremap_resource_wc(struct device *dev, - const struct resource *res) -{ - return ERR_PTR(-EINVAL); -} - -static inline -void __iomem *devm_of_iomap(struct device *dev, - struct device_node *node, int index, - resource_size_t *size) -{ - return ERR_PTR(-EINVAL); -} - -#endif - /* allows to add/remove a custom action to devres stack */ int devm_remove_action_nowarn(struct device *dev, void (*action)(void *), void *data); diff --git a/include/linux/device/devres.h b/include/linux/device/devres.h new file mode 100644 index 000000000000..4ec4c658879a --- /dev/null +++ b/include/linux/device/devres.h @@ -0,0 +1,125 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _DEVICE_DEVRES_H_ +#define _DEVICE_DEVRES_H_ + +#include +#include +#include +#include +#include +#include +#include + +struct device; +struct device_node; +struct resource; + +/* device resource management */ +typedef void (*dr_release_t)(struct device *dev, void *res); +typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data); + +void * __malloc +__devres_alloc_node(dr_release_t release, size_t size, gfp_t gfp, int nid, const char *name); +#define devres_alloc(release, size, gfp) \ + __devres_alloc_node(release, size, gfp, NUMA_NO_NODE, #release) +#define devres_alloc_node(release, size, gfp, nid) \ + __devres_alloc_node(release, size, gfp, nid, #release) + +void devres_for_each_res(struct device *dev, dr_release_t release, + dr_match_t match, void *match_data, + void (*fn)(struct device *, void *, void *), + void *data); +void devres_free(void *res); +void devres_add(struct device *dev, void *res); +void *devres_find(struct device *dev, dr_release_t release, dr_match_t match, void *match_data); +void *devres_get(struct device *dev, void *new_res, dr_match_t match, void *match_data); +void *devres_remove(struct device *dev, dr_release_t release, dr_match_t match, void *match_data); +int devres_destroy(struct device *dev, dr_release_t release, dr_match_t match, void *match_data); +int devres_release(struct device *dev, dr_release_t release, dr_match_t match, void *match_data); + +/* devres group */ +void * __must_check devres_open_group(struct device *dev, void *id, gfp_t gfp); +void devres_close_group(struct device *dev, void *id); +void devres_remove_group(struct device *dev, void *id); +int devres_release_group(struct device *dev, void *id); + +/* managed devm_k.alloc/kfree for device drivers */ +void * __alloc_size(2) +devm_kmalloc(struct device *dev, size_t size, gfp_t gfp); +void * __must_check __realloc_size(3) +devm_krealloc(struct device *dev, void *ptr, size_t size, gfp_t gfp); +static inline void *devm_kzalloc(struct device *dev, size_t size, gfp_t gfp) +{ + return devm_kmalloc(dev, size, gfp | __GFP_ZERO); +} +static inline void *devm_kmalloc_array(struct device *dev, size_t n, size_t size, gfp_t flags) +{ + size_t bytes; + + if (unlikely(check_mul_overflow(n, size, &bytes))) + return NULL; + + return devm_kmalloc(dev, bytes, flags); +} +static inline void *devm_kcalloc(struct device *dev, size_t n, size_t size, gfp_t flags) +{ + return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO); +} +static inline __realloc_size(3, 4) void * __must_check +devm_krealloc_array(struct device *dev, void *p, size_t new_n, size_t new_size, gfp_t flags) +{ + size_t bytes; + + if (unlikely(check_mul_overflow(new_n, new_size, &bytes))) + return NULL; + + return devm_krealloc(dev, p, bytes, flags); +} + +void devm_kfree(struct device *dev, const void *p); + +void * __realloc_size(3) +devm_kmemdup(struct device *dev, const void *src, size_t len, gfp_t gfp); + +char * __malloc +devm_kstrdup(struct device *dev, const char *s, gfp_t gfp); +const char *devm_kstrdup_const(struct device *dev, const char *s, gfp_t gfp); +char * __printf(3, 0) __malloc +devm_kvasprintf(struct device *dev, gfp_t gfp, const char *fmt, va_list ap); +char * __printf(3, 4) __malloc +devm_kasprintf(struct device *dev, gfp_t gfp, const char *fmt, ...); + +unsigned long devm_get_free_pages(struct device *dev, gfp_t gfp_mask, unsigned int order); +void devm_free_pages(struct device *dev, unsigned long addr); + +#ifdef CONFIG_HAS_IOMEM + +void __iomem *devm_ioremap_resource(struct device *dev, const struct resource *res); +void __iomem *devm_ioremap_resource_wc(struct device *dev, const struct resource *res); + +void __iomem *devm_of_iomap(struct device *dev, struct device_node *node, int index, + resource_size_t *size); +#else + +static inline +void __iomem *devm_ioremap_resource(struct device *dev, const struct resource *res) +{ + return IOMEM_ERR_PTR(-EINVAL); +} + +static inline +void __iomem *devm_ioremap_resource_wc(struct device *dev, const struct resource *res) +{ + return IOMEM_ERR_PTR(-EINVAL); +} + +static inline +void __iomem *devm_of_iomap(struct device *dev, struct device_node *node, int index, + resource_size_t *size) +{ + return IOMEM_ERR_PTR(-EINVAL); +} + +#endif + +#endif /* _DEVICE_DEVRES_H_ */ From patchwork Mon Feb 10 06:48:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863963 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 352CB1AF0DB; Mon, 10 Feb 2025 06:49:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170178; cv=none; b=AZXwIBJSYRpUitPsN0dHQ5NWYVy9yketgCgBPZrdeUGRnALvWCdiVd0HEm1KGL22GddaQGgsk/rBM3H13C80fcqNRZp/lFHtzPk1RSw9DufU+ZCk5gbGqKc7o4kA/l40+9+Le4ab9naFz6XTLLeEMvb8/6SMx1riBb7yL3viG0k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170178; c=relaxed/simple; bh=yZUkpezDWb6PWJ0o7eQG3RTvuXmRTg1DIwLHbE6Jk/k=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Dai432PtX+NBc19vTkxruP5B7Mw4tHKxQBhu2dU/IepDEZVMop6IYVfCToAY3x3Tvs6CyQrbPKlRKUejWCzsHlCUPQw8MAZBRaP5Cy7f7/682t56iHTY6oap1kl+rtFMKkyH7MJvvUGgu59XRHYSs36Jmyc3PsUCrGVNfbb8gZ8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=KSVSJUHj; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="KSVSJUHj" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170178; x=1770706178; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=yZUkpezDWb6PWJ0o7eQG3RTvuXmRTg1DIwLHbE6Jk/k=; b=KSVSJUHjvMmVcJluP6iPyh61pHIn0JGnGd+NBDIOJnZ0L/Qaads5P3jn plE+z0UQUb/PYtnCaIEg/vsKpMY5gzVN60lDN4dx5+TVe89fOZzde+Y60 vQRITmtywGWLwaSjTkUXe604q2nGXZowixrXSEFrhS8CSeKMy3Mc/lBXo QaJCPllcva/Hbo4RUk/6H0D4xnnezru6p7jTIFVhdg7DLUcA5QkyUvIPr DCiCn5HSnwGp70jFfO9ekrDxFt0GZZAMsVzURwETzgd/sOiMgKcxRo1iL zqVl+H0tyfv4tRRFO2clPwgR2/6ML1r4ZFQNdlZkXmy0EIfBm3Gdqacuq A==; X-CSE-ConnectionGUID: fEVCVri0SMiCVDUs+goCNQ== X-CSE-MsgGUID: m9NuUVOaQwCa0siREiKkoQ== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499303" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499303" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:49:37 -0800 X-CSE-ConnectionGUID: vrD5siRwSFWTIdSrJpq8/A== X-CSE-MsgGUID: uwIr33ewT4aOepm0opVtrA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122423" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:49:32 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 03/20] devres: Introduce devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:49 +0530 Message-Id: <20250210064906.2181867-4-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Introduce '_array' variant of devm_kmemdup() which is more robust and consistent with alloc family of helpers. Suggested-by: Andy Shevchenko Signed-off-by: Raag Jadav Reviewed-by: Dmitry Torokhov Reviewed-by: Linus Walleij --- include/linux/device/devres.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/linux/device/devres.h b/include/linux/device/devres.h index 4ec4c658879a..634af06ec775 100644 --- a/include/linux/device/devres.h +++ b/include/linux/device/devres.h @@ -80,6 +80,11 @@ void devm_kfree(struct device *dev, const void *p); void * __realloc_size(3) devm_kmemdup(struct device *dev, const void *src, size_t len, gfp_t gfp); +static inline void *devm_kmemdup_array(struct device *dev, const void *src, + size_t n, size_t size, gfp_t flags) +{ + return devm_kmemdup(dev, src, size_mul(size, n), flags); +} char * __malloc devm_kstrdup(struct device *dev, const char *s, gfp_t gfp); From patchwork Mon Feb 10 06:48:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863962 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2E6331ADC8D; Mon, 10 Feb 2025 06:49:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170189; cv=none; b=rngSPrGm20I1Gq6ysTRnWPPHgKr+Ek8EPnIs0d8KcFEf8HseywpHgMrWZ5zbiUTYyvsCxdQ37GSNnuI+zAS2DiUUM/PdgC2Jby27KFiSWQYV6jIXaMdiToqNrzOzpz8UsjAPdYSmW4zuwt1dKn37oCrzsYew3GIvJRPriFaDHXI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170189; c=relaxed/simple; bh=NZrOpoIR0kcwzhW5RiAR7w3SpFSD3n21/pIeM0wBqjI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=S0pspEIR8o+u1r8zv7lhmhA8cIh/WC+bnh68dPZMInKHT8+N+uMfoXtiUxUczuIdIv4FxnNbvr2t0ea87RKMxNXX5ogvlXBai9f4blkaL6n9TIW8GLCN5E/VLFm+/kAjSv1xMRkGrfYrfGknvbzuclaPvNwPJP60OkgvhpQ20Mg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=MZ36aXnW; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="MZ36aXnW" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170189; x=1770706189; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NZrOpoIR0kcwzhW5RiAR7w3SpFSD3n21/pIeM0wBqjI=; b=MZ36aXnWjK7nmm/gNyVICO9TwJDdEG8chNVomAC97RB8PrvTsUpz9AT6 cDbzMQ5SaRrjcYo5rgEc0xifwf/CvytnUcYl0nBKs5kaCBAeFzaU5sKER dzPEMzPdlZvkgaxjMy0J/ZMHrd/M0mAxkCZCH/ZXcCiCX8Xqz23VFzV8q +Vjejj7sLl3tLybfHbdMGn/HDK8fei+/4EJ+PjqUPk4fy0Xtcs+dJucu8 VelcC6WkOUOw+DRrU+Np5eVJZMhbNuVK3mNgn4J6ZA3Pcl/N7GXUTydO4 VMstFxYyQLTVOceTAysHxG1nZDS/LEady+czjwuSXC/s7nWZTNTJcBsCh g==; X-CSE-ConnectionGUID: Ce6M/7KfRX2faHiVDBN6Mg== X-CSE-MsgGUID: FNgY+MOFQdyUmkwewlb6nw== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499338" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499338" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:49:48 -0800 X-CSE-ConnectionGUID: hm7soczWSCy4NSeEe6nnUQ== X-CSE-MsgGUID: iew0Pi8ITduN6ADbQ8mFNA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122446" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:49:43 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 05/20] pinctrl: baytrail: copy communities using devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:51 +0530 Message-Id: <20250210064906.2181867-6-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Copy communities using devm_kmemdup_array() instead of doing it manually. Signed-off-by: Raag Jadav Reviewed-by: Linus Walleij --- drivers/pinctrl/intel/pinctrl-baytrail.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-baytrail.c b/drivers/pinctrl/intel/pinctrl-baytrail.c index c4458ac539ff..969137c4cb06 100644 --- a/drivers/pinctrl/intel/pinctrl-baytrail.c +++ b/drivers/pinctrl/intel/pinctrl-baytrail.c @@ -1560,16 +1560,14 @@ static int byt_set_soc_data(struct intel_pinctrl *vg, vg->soc = soc; vg->ncommunities = vg->soc->ncommunities; - vg->communities = devm_kcalloc(vg->dev, vg->ncommunities, - sizeof(*vg->communities), GFP_KERNEL); + vg->communities = devm_kmemdup_array(vg->dev, vg->soc->communities, vg->ncommunities, + sizeof(*vg->soc->communities), GFP_KERNEL); if (!vg->communities) return -ENOMEM; for (i = 0; i < vg->soc->ncommunities; i++) { struct intel_community *comm = vg->communities + i; - *comm = vg->soc->communities[i]; - comm->pad_regs = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(comm->pad_regs)) return PTR_ERR(comm->pad_regs); From patchwork Mon Feb 10 06:48:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863961 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 403B71922F5; Mon, 10 Feb 2025 06:49:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170200; cv=none; b=fIcgy4gNxsc/teEgS8+G7m1AXze+W6+CPcPzjbnH/9OtWUEMI4jOZgVg2MHvcubEVxhGbGDMimwnz60t648LrCGh/OspHuZFBIRQX4EchIbLp5BPFjK45EffbiQIi4zx5hwMOE+tKLiBSczx7LtPBGMlDnsAXYBrJ0Wlk/cuI2c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170200; c=relaxed/simple; bh=i0Vg6izha13aWDeJ5vn8MBrolGY/TSxc4KHdVaVAYEk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=EqzYpVFaE1l28konr1PtPRA/Jf43O2thUEk+xjblKIGKn/zW6xh0BsEIsZttDMJfOb6MWZsE2iErd+E6ZWielAOoRMS/yCw3aheNtk0IVT+zvatffuOuoyNbV7I2b2GOrB+hjKaCQbksn2fXemm2yRKDRk+XwFfVgiIpfOn4ReE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=QahnAxoh; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="QahnAxoh" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170200; x=1770706200; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=i0Vg6izha13aWDeJ5vn8MBrolGY/TSxc4KHdVaVAYEk=; b=QahnAxohRD7lRhf7YS+1w/eZQD7NIPDclfZ9GNzyOD9bFc/+yzrC2AKx OijIIJ9j+LQkxFsqIYGiC0PTHbG3hpyhZWwXu4+ZetXHqf9d3vo9uIE+g AA7pUg+nycHoIKCsoiQPDeQozZoVLot40JG0JxImk2IIMkzH8jYuYsYdL 4fFNB7DkUJaIRJbPhYpZPagfmwtUlNDTc64NK0tbyn8uMRLGYC3EBRL3r qYSceyDOpDxJ4+FgPzSPH8Ae+ze8IRRUYSpy8CENuTSfp4+K85RxkSQcZ /9pu+hcMGcj5d4dff80zXt+K1/2rboVJDzZV9uekLj/6Am+47Srd0vXV1 w==; X-CSE-ConnectionGUID: M0fvyJC+Sfy8tjloTl3jqA== X-CSE-MsgGUID: olRUnz+PTn+30XDzbO1IEQ== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499350" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499350" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:00 -0800 X-CSE-ConnectionGUID: E+ROVhLtTI+VrnN5ZC0aug== X-CSE-MsgGUID: vO2An57dRFyXBQ64iPr2sQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122462" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:49:54 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 07/20] pinctrl: tangier: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:53 +0530 Message-Id: <20250210064906.2181867-8-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() and while at it, use source size instead of destination. Signed-off-by: Raag Jadav Reviewed-by: Andy Shevchenko Reviewed-by: Linus Walleij --- drivers/pinctrl/intel/pinctrl-tangier.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-tangier.c b/drivers/pinctrl/intel/pinctrl-tangier.c index d3baf0f4eea0..ac61e632b487 100644 --- a/drivers/pinctrl/intel/pinctrl-tangier.c +++ b/drivers/pinctrl/intel/pinctrl-tangier.c @@ -524,7 +524,6 @@ static int tng_pinctrl_probe(struct platform_device *pdev, struct device *dev = &pdev->dev; struct tng_family *families; struct tng_pinctrl *tp; - size_t families_len; void __iomem *regs; unsigned int i; @@ -543,8 +542,8 @@ static int tng_pinctrl_probe(struct platform_device *pdev, * Make a copy of the families which we can use to hold pointers * to the registers. */ - families_len = size_mul(sizeof(*families), tp->nfamilies); - families = devm_kmemdup(dev, tp->families, families_len, GFP_KERNEL); + families = devm_kmemdup_array(dev, tp->families, tp->nfamilies, + sizeof(*tp->families), GFP_KERNEL); if (!families) return -ENOMEM; From patchwork Mon Feb 10 06:48:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863960 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 362751BEF7A; Mon, 10 Feb 2025 06:50:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170211; cv=none; b=Ib1BzgCV8yc8qEINRocE8crhzEFXaf+468cc6QAn8rtU4xgTX6tsqGK0ngEB2eUqOuKtEJj2d473YUhx90O8H7wFIWLJTEvQjRUbeSfn/KpNfD4dpnCiwcyu+bwvEDB7dGbSkb6GyVp8G9cdpLWSl5qIqvE74EF5WPhbDdzemtk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170211; c=relaxed/simple; bh=lUStIRYPZjB0P64Z7kGwVsTZ33TcqKuazW93nUPcXMw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=h0SpMbCSfhskv2qcKRaHJ0JbiH3UFJSBhGHu3KRxjDbVtdNJoomYiId+/G3Hu7X92CwYL5amfelaB7jIVruKyzZFSToPanmn0Jx3gSYYgg5OTvCnp4g59/ANjFhvIgag2PZSx/RIKZwJF2abL1LpxcbcDgYavyW2tvNJn6wDyTE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=JnwQl3P8; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="JnwQl3P8" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170211; x=1770706211; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=lUStIRYPZjB0P64Z7kGwVsTZ33TcqKuazW93nUPcXMw=; b=JnwQl3P8w4dL4B6DOa4v2TJ4jbvwKFqzMrlmmgEzW/ZzAO3ehpKYEnsm ywm7bfpnEOK8gpMQ75RZUw9yPu818f1lUz4/NVpvihEKOZcHARWDto102 WENpio9cFUOH1dsLs40MACk4gVTdKAoLl8KHT2cm0qKPDYCiPZERCNMHH oCMHsINUEX4ePmrBSbEdoVmP8tnMSbM5/SZgkxEeOmrmbznrw443i97s6 XXszfjtoaYhf0PZaef3tjGdOKFz7APyZeTShaIYOYa37sDEhn3QtaYUa2 quhj4kqciiHK98Zz6s1jT+0uzfPDgXLRsBGJBlKE9VkN4pFv8W68RxbFH Q==; X-CSE-ConnectionGUID: 9MwkVPX0S5a/N0fgNAs81Q== X-CSE-MsgGUID: aGq+w9F8QGGntubOLl0kTA== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499372" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499372" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:10 -0800 X-CSE-ConnectionGUID: n8ubXwU7Ruu8sRoHRXIrXA== X-CSE-MsgGUID: MP/WNh3lQEeAr1TazIWQKw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122545" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:50:05 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 09/20] input: sparse-keymap: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:55 +0530 Message-Id: <20250210064906.2181867-10-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() and while at it, use source size instead of destination. Signed-off-by: Raag Jadav Acked-by: Dmitry Torokhov Reviewed-by: Linus Walleij --- drivers/input/sparse-keymap.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/input/sparse-keymap.c b/drivers/input/sparse-keymap.c index 25bf8be6e711..96f23ae57d5a 100644 --- a/drivers/input/sparse-keymap.c +++ b/drivers/input/sparse-keymap.c @@ -176,8 +176,7 @@ int sparse_keymap_setup(struct input_dev *dev, for (e = keymap; e->type != KE_END; e++) map_size++; - map = devm_kmemdup(&dev->dev, keymap, map_size * sizeof(*map), - GFP_KERNEL); + map = devm_kmemdup_array(&dev->dev, keymap, map_size, sizeof(*keymap), GFP_KERNEL); if (!map) return -ENOMEM; From patchwork Mon Feb 10 06:48:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863959 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1351D1B4247; Mon, 10 Feb 2025 06:50:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170222; cv=none; b=aEDdm1utF3MQ/SHFVl8fvP7Kx9Q7yWLyaTmhq3OJiShqUzxFegRZCxPNojTO4jeGDj5s86VtdDlr0E11aPS5kVj5gD//c7fMDmdEwvEwn3QpsiWspPXU5kY0VtdhoIsT2ILHAVRqYJFSxhXFMXy9R1gOsj8lf09sYoSTCCoajDM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170222; c=relaxed/simple; bh=A43sWN4sdLq3tQc+IB25Ps/3Ig8snwsi8Gmk90X6cpQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=UCk2y9lw6QfJ0R9RzT6GLTFUvK6VAChBi+N7eyLiq4Met1kZ9oMVwlfI/RctQcVcXNLsdIYTJJ2UHAglV/9X+9kajU8xZNfWrEk269Ka1XrOo+ulqgubc9mgL/SJsbdGHvWwYKd6Z2YEhnwlsc1Jl3rgYUvJtPSPoUHYBLHpCH4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=GEvA3ksp; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="GEvA3ksp" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170222; x=1770706222; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=A43sWN4sdLq3tQc+IB25Ps/3Ig8snwsi8Gmk90X6cpQ=; b=GEvA3kspBf/QXizartks/llrGmqgFxynuxZCcPiMmE5yjHXgGDO19rWE hzw7rgMgk+i5mOtJClSpgpFnI7bD8zlz54Kpl6xXjyH2gKrA3cjFZUib+ tFdZReS0OST8Z+z805CM4sBUCrF6I+uA7fEfJh0UkkXix3jFuX2pDff+p r+B+2h+0PbMgW5P9GuEzH525XIDYORaQI7/vy1uqdJLmz6KlgBzVQzSWb oL84jr8rH9FqIqtNVb1Q2jPDpJCKkKTBH3ahKRUOc4OBUfCRtyUwWy4LU CuYpgtqpgaIr8xZu13rT088ZhXpshzsD3VhKQaM/3S9Kv18OkZRp9CfO4 A==; X-CSE-ConnectionGUID: E710izjbSq2yHzYLYoT06g== X-CSE-MsgGUID: LNaOf3RiRJKcaFBTvuY2Kg== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499391" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499391" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:21 -0800 X-CSE-ConnectionGUID: Lg6IrC95Tp6+J/HKNqFazA== X-CSE-MsgGUID: 00l51m7rSr2f6sjRR3brpA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122577" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:50:16 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 11/20] regulator: devres: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:57 +0530 Message-Id: <20250210064906.2181867-12-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() which is more robust. Signed-off-by: Raag Jadav --- drivers/regulator/devres.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/regulator/devres.c b/drivers/regulator/devres.c index 36164aec30e8..ab238579879c 100644 --- a/drivers/regulator/devres.c +++ b/drivers/regulator/devres.c @@ -332,9 +332,8 @@ int devm_regulator_bulk_get_const(struct device *dev, int num_consumers, const struct regulator_bulk_data *in_consumers, struct regulator_bulk_data **out_consumers) { - *out_consumers = devm_kmemdup(dev, in_consumers, - num_consumers * sizeof(*in_consumers), - GFP_KERNEL); + *out_consumers = devm_kmemdup_array(dev, in_consumers, num_consumers, + sizeof(*in_consumers), GFP_KERNEL); if (*out_consumers == NULL) return -ENOMEM; From patchwork Mon Feb 10 06:48:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863958 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F2C7A1C3C12; Mon, 10 Feb 2025 06:50:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170233; cv=none; b=eiqTkMsGBA8qF/Si3yxHawCIQ44tPKjeLUEZKU62wUFRb0xM7UkrV/h/cvvrfwl5J42507xDRXAShhM5AQIqaGg6fkVME2ZfS11YkeITseiFNQ99cDakNBNk6+cae/TpkXOASd8bvY/KoqQ1cJP3E4Z7rWD/t7ybLlYxLBmn1fg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170233; c=relaxed/simple; bh=WQcQgwN6rj0CXjCqPcouJGQfDiiFhGzfaeRKYbGINW0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Hh4H5Tsn1LJ9Ug9bdoW7CYQkWRzVhgtn8s7/6qhTVNBywG9biSVgaoaY8FEIHh13HQTN/F25BGR2jPpOUvwNnFAI5UhiagsD2AdwoYQ1Id8P6filnNpQy+sQs75DnUfjNk1yCZgDlGD7n7sBjurWtxuNEY9/PdWESEKLPDqoOgc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=dfXbxFnh; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="dfXbxFnh" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170233; x=1770706233; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=WQcQgwN6rj0CXjCqPcouJGQfDiiFhGzfaeRKYbGINW0=; b=dfXbxFnh8sq0dlNhLKUfIJsn6Nl22ExcRjbmTFYz/9hO4SMpCsKJZ1ct aGbxCC/ZVHoF7iVYYK0nFIk0wT8VoNMSvvC1yhxy4m+Eb9o6TJk4dXCf4 k4c4rrN3rrlOdpPh+mAoniLJA0dyY1Mxw47C5pT6ITiQ2QYDHN/yY7nN1 e34DrU3W+PFITX8z+7n2Tq8wOd44IkwVG4dYzS1Vea5gyyHg0P66yJiUU 9NPphBPAVYEX2RlOEaC6QAVgKIQwvl/KYdD0kivjlAfs4rpa8hJx7EIXs jG4TsK58lQE1jXJdC0rVJm1+odwZoZkxbuLhWdhvLkVbLRmv84UnQU27S A==; X-CSE-ConnectionGUID: LNUhDXP/SNOaFuGhRGyH5w== X-CSE-MsgGUID: XAx1tMNRQY+IWfl4Yzsg8Q== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499416" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499416" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:32 -0800 X-CSE-ConnectionGUID: 7cqpstVVQ4i+LnWUtkNRqQ== X-CSE-MsgGUID: 6iWeD21WQVe5eDI02Un6nw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122621" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:50:27 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 13/20] power: supply: sc27xx: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:18:59 +0530 Message-Id: <20250210064906.2181867-14-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() which is more robust. Signed-off-by: Raag Jadav --- drivers/power/supply/sc27xx_fuel_gauge.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/power/supply/sc27xx_fuel_gauge.c b/drivers/power/supply/sc27xx_fuel_gauge.c index f36edc2ba708..573838ca8ed8 100644 --- a/drivers/power/supply/sc27xx_fuel_gauge.c +++ b/drivers/power/supply/sc27xx_fuel_gauge.c @@ -1014,9 +1014,8 @@ static int sc27xx_fgu_hw_init(struct sc27xx_fgu_data *data) if (!table) return -EINVAL; - data->cap_table = devm_kmemdup(data->dev, table, - data->table_len * sizeof(*table), - GFP_KERNEL); + data->cap_table = devm_kmemdup_array(data->dev, table, data->table_len, + sizeof(*table), GFP_KERNEL); if (!data->cap_table) { power_supply_put_battery_info(data->battery, info); return -ENOMEM; From patchwork Mon Feb 10 06:49:01 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863957 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5DEA21B87C8; Mon, 10 Feb 2025 06:50:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170245; cv=none; b=OqPkEpgI++GFhvGf7PmQjmQnqgIzudzYbc08yzBQMZhhS1sdtVNhY8zerBoiYCILkzP1+lSDxqwY0RRlNceE/Je0FV/0iQ5MVaU2HxOEJkaLHHmEE8ccZ0FoP0g0GdpU9vWo4RT4LaWootSbZrbKWR7NauJeVOP/d4p5FWGXwIo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170245; c=relaxed/simple; bh=/m+iPWmk6kJV3QtWKryVvX1MLMg/lAVfhh9LHnQYHeM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=gk3KPKuIo9IX1ECfyD+ZKayuSwEFbachkhIMjT9e3O6fBgrHoLyjkPrck/gq+gEI/KPjKXS/s1PdNRt3f2XE1ojWgxGKa50TcR/5Hh6dqtB7DZeXTGPQufDlMNM0YT+JfOl76lsTD+AdoYuMvoa5fHMKxg7pqdV4gK4P8I/AgDo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=lQAybuW7; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="lQAybuW7" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170244; x=1770706244; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=/m+iPWmk6kJV3QtWKryVvX1MLMg/lAVfhh9LHnQYHeM=; b=lQAybuW7X0vIV1C0Y+WUINWm+tiGVq9OyICl4W5jEd8iVu/0FLmQUbJV fymf9LVSELkr+HGQKep5Tb533bs5HHur5mGt3yOwUXm1uPBYdsxI/H567 /9zW4IIlaj+xb8VebNFGOBeNDyJujzFW79DUEuShmpNMJPPN0m5xZ+zbC F4CT/QZl9XZIkHvjnXLreQsTI1pjSr/jgQjRetBZf9mWLEyAcUdXln7aT lEzJH2TJF0NZwR33WohEuNaW12F3S1lsdziQQkp6fW1CIJjxIcSQy12OQ EjGfSIOYXi4fIft9t1Cc7Jj+R924WJr3nFQ6ilLpvZrZWhbvPurfeAptx Q==; X-CSE-ConnectionGUID: PpobOoZxRrO7qY/GBtO8Zw== X-CSE-MsgGUID: 5B6veR/HT9mEOvZXHMeTJw== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499428" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499428" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:44 -0800 X-CSE-ConnectionGUID: PHEWWnVCQQOevVOt/FBB3A== X-CSE-MsgGUID: zHvuCSFjQCSTBrIU+CAv3g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122644" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:50:37 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav , =?utf-8?q?Amadeusz_S=C5=82awi=C5=84ski?= Subject: [PATCH v4 15/20] ASoC: Intel: avs: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:19:01 +0530 Message-Id: <20250210064906.2181867-16-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() and while at it, use source size instead of destination. Signed-off-by: Raag Jadav Acked-by: Mark Brown Reviewed-by: Amadeusz Sławiński Reviewed-by: Linus Walleij --- sound/soc/intel/avs/boards/da7219.c | 3 ++- sound/soc/intel/avs/boards/es8336.c | 3 ++- sound/soc/intel/avs/boards/nau8825.c | 3 ++- sound/soc/intel/avs/boards/rt274.c | 3 ++- sound/soc/intel/avs/boards/rt286.c | 3 ++- sound/soc/intel/avs/boards/rt298.c | 3 ++- sound/soc/intel/avs/boards/rt5663.c | 3 ++- sound/soc/intel/avs/boards/rt5682.c | 3 ++- 8 files changed, 16 insertions(+), 8 deletions(-) diff --git a/sound/soc/intel/avs/boards/da7219.c b/sound/soc/intel/avs/boards/da7219.c index 76078a7005b0..9507a96f26ac 100644 --- a/sound/soc/intel/avs/boards/da7219.c +++ b/sound/soc/intel/avs/boards/da7219.c @@ -113,7 +113,8 @@ static int avs_da7219_codec_init(struct snd_soc_pcm_runtime *runtime) } num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/es8336.c b/sound/soc/intel/avs/boards/es8336.c index 426ce37105ae..6f3c4f6c9302 100644 --- a/sound/soc/intel/avs/boards/es8336.c +++ b/sound/soc/intel/avs/boards/es8336.c @@ -109,7 +109,8 @@ static int avs_es8336_codec_init(struct snd_soc_pcm_runtime *runtime) data = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/nau8825.c b/sound/soc/intel/avs/boards/nau8825.c index bf902540744c..6833eebd82d6 100644 --- a/sound/soc/intel/avs/boards/nau8825.c +++ b/sound/soc/intel/avs/boards/nau8825.c @@ -88,7 +88,8 @@ static int avs_nau8825_codec_init(struct snd_soc_pcm_runtime *runtime) jack = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/rt274.c b/sound/soc/intel/avs/boards/rt274.c index 4b6c02a40204..f5caafc21861 100644 --- a/sound/soc/intel/avs/boards/rt274.c +++ b/sound/soc/intel/avs/boards/rt274.c @@ -98,7 +98,8 @@ static int avs_rt274_codec_init(struct snd_soc_pcm_runtime *runtime) jack = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/rt286.c b/sound/soc/intel/avs/boards/rt286.c index e40563ca99fd..1eb0399c0fae 100644 --- a/sound/soc/intel/avs/boards/rt286.c +++ b/sound/soc/intel/avs/boards/rt286.c @@ -59,7 +59,8 @@ static int avs_rt286_codec_init(struct snd_soc_pcm_runtime *runtime) jack = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/rt298.c b/sound/soc/intel/avs/boards/rt298.c index 94fce07c83f9..85269a3be981 100644 --- a/sound/soc/intel/avs/boards/rt298.c +++ b/sound/soc/intel/avs/boards/rt298.c @@ -70,7 +70,8 @@ static int avs_rt298_codec_init(struct snd_soc_pcm_runtime *runtime) jack = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/rt5663.c b/sound/soc/intel/avs/boards/rt5663.c index b456b9d14665..e3310b3268ba 100644 --- a/sound/soc/intel/avs/boards/rt5663.c +++ b/sound/soc/intel/avs/boards/rt5663.c @@ -65,7 +65,8 @@ static int avs_rt5663_codec_init(struct snd_soc_pcm_runtime *runtime) jack = &priv->jack; num_pins = ARRAY_SIZE(card_headset_pins); - pins = devm_kmemdup(card->dev, card_headset_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_headset_pins, num_pins, + sizeof(card_headset_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; diff --git a/sound/soc/intel/avs/boards/rt5682.c b/sound/soc/intel/avs/boards/rt5682.c index 335960cfd7ba..339df0b944c1 100644 --- a/sound/soc/intel/avs/boards/rt5682.c +++ b/sound/soc/intel/avs/boards/rt5682.c @@ -102,7 +102,8 @@ static int avs_rt5682_codec_init(struct snd_soc_pcm_runtime *runtime) jack = snd_soc_card_get_drvdata(card); num_pins = ARRAY_SIZE(card_jack_pins); - pins = devm_kmemdup(card->dev, card_jack_pins, sizeof(*pins) * num_pins, GFP_KERNEL); + pins = devm_kmemdup_array(card->dev, card_jack_pins, num_pins, + sizeof(card_jack_pins[0]), GFP_KERNEL); if (!pins) return -ENOMEM; From patchwork Mon Feb 10 06:49:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863956 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D96F31C5F3B; Mon, 10 Feb 2025 06:50:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170256; cv=none; b=OmGuhM/yO252EF2O/rCcTX8IL+M8roCkC1dn1eV4XALprZdSvw1uTr+/B5gtUuZQc1V3YwT+6C8wySS8AMzQjSyK+2IM/KSaZY4so2u3DvfvcqsT71DDCDqOuFr6ctT1Kt98W//5qkd9rcR7sV7AGCIxy4FxFFJuQ774CrQ7aFA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170256; c=relaxed/simple; bh=NSXN9VYfQFUizYJYR++h6usWkL8OeRS3X1QV/7FBf64=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=OD2vW+bn4VzKlc6JVd1HBTRHD8fwKVpj5uD15PGX0nUwLxADY1qi+d2ZOx6+wm7wbPzounRBbZWFvHnswkBb5Atlulm3z6fpGyGY9bSiC+ql4lO4YMwOW1s9CBuMDEgJQo0T4iH/DuacdK8by0MS8/BBOktfRRWFL9iiPhTbCpM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=lkMuap7x; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="lkMuap7x" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170255; x=1770706255; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NSXN9VYfQFUizYJYR++h6usWkL8OeRS3X1QV/7FBf64=; b=lkMuap7xCdhc/77pjJCuwIsaxQZlhNv+jmtS0fzwNoCwp/F1cnz2k7i1 a+R1AQydmx2jEiBXJ9021FF0PvluYrmkhuYKGYNVkLUBeoxFgKDeSJF2c jMO0+jxyBI5qUyAKH6DR46cYySmaKj6vwpQCc26gPH5NyQbEs5VGmydwt J1x2wZERRPKNz1YtVrnUXMPG+Ehr/1qFF7mxIYAROoX9VTYXxt5lRMcuM lfooZM7GAAQ8/Ah9jEp9HbONoardhU2SYl0s9r0XEjaQJotWncidDh5CN N60MaHxCPCD2uzpNSRT4HcDZplFggeyXThLTydOtHgsyNVCWLVuA7QdG4 g==; X-CSE-ConnectionGUID: kIDRTBTKSBCJoLwuFlrl9g== X-CSE-MsgGUID: MWQMGfVeRHWQDPkDyYFGXA== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499443" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499443" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:50:55 -0800 X-CSE-ConnectionGUID: udeWm2XeQnaSvtQ5ckvBHg== X-CSE-MsgGUID: vbdnxsgIQw6TsqiagwaPQA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122660" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:50:49 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 17/20] ASoC: tlv320dac33: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:19:03 +0530 Message-Id: <20250210064906.2181867-18-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() and while at it, make the size robust against type changes. Signed-off-by: Raag Jadav --- sound/soc/codecs/tlv320dac33.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/tlv320dac33.c b/sound/soc/codecs/tlv320dac33.c index fa46f51d4341..423b9264a205 100644 --- a/sound/soc/codecs/tlv320dac33.c +++ b/sound/soc/codecs/tlv320dac33.c @@ -1477,10 +1477,8 @@ static int dac33_i2c_probe(struct i2c_client *client) if (dac33 == NULL) return -ENOMEM; - dac33->reg_cache = devm_kmemdup(&client->dev, - dac33_reg, - ARRAY_SIZE(dac33_reg) * sizeof(u8), - GFP_KERNEL); + dac33->reg_cache = devm_kmemdup_array(&client->dev, dac33_reg, ARRAY_SIZE(dac33_reg), + sizeof(dac33_reg[0]), GFP_KERNEL); if (!dac33->reg_cache) return -ENOMEM; From patchwork Mon Feb 10 06:49:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raag Jadav X-Patchwork-Id: 863955 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 598831BBBDD; Mon, 10 Feb 2025 06:51:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.14 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170266; cv=none; b=W089om/0Ae4bRMhfAAdCsM8CERaTQc+yaF0tqQNeWs7RsTQXltDi1s2jMOB7WHSJQPeq4zSLUkwWMIT8cOyHn3VXKELrpDIEJ5WrKzDSUYSwjffpC/XA61oLaqPZt2wc7bmvb50s4v5fr8ErLb4T08q6g4BIco82SjUv6A9dOpo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739170266; c=relaxed/simple; bh=9jklcU8zXeb2fq/kZyVr5PcF5WyfIGqHTEgky7Oh+0o=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=em3ZotvcRsAx07PFDE/Z++Ro81CmYzVdHheCvwbfw9slBwVakTSktxYhAqoVKI9+/ehWM84vfqBNxj8HbMI1obA55vxTIjRNX8Pytg+gRHt4auSJHyva4KVzAqnXdD64iLNeS6jM+nGqhTrTQRtiO+akYW9NQgHqrAl5elacfBg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=SB9GMaDZ; arc=none smtp.client-ip=198.175.65.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="SB9GMaDZ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739170266; x=1770706266; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9jklcU8zXeb2fq/kZyVr5PcF5WyfIGqHTEgky7Oh+0o=; b=SB9GMaDZZm6qXtD0x4M5hii3WPAdeduVjk+ld0IzZ+ByCMTyxERub1HK Wy0nHmzskxLim1DVgyLQEnM0Il/11GqEoTaG4j99dVV8aG7kLoTen9ZlU 9wiBypZjc5DGIMHl/Gj25LbHelBQ8FFl5lQZ5GCyjs1IQsrgTd/I305qJ 7IV0Lk3MsCFPjJbWLfBXe/NvfDH7bu69VXelQ6b4W+0MOeGABzS1b8/dY kXXEoyl6VeEu25nOp+L+KD9y39EJcBfJEwBwHNfTrzoigjBrkO0592NkK Z8RMdiltf7ZW/PycTCO2XsTXIvScE09c1pnL8F+kmO5oAsPJM7A9CN1Jd g==; X-CSE-ConnectionGUID: Cd7E5JIFTLGSYoPb6CObcg== X-CSE-MsgGUID: +0k6dbxQQGimnbE0Cuq1nA== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43499457" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43499457" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 22:51:06 -0800 X-CSE-ConnectionGUID: oaVYRkPrS9Od603demoHJQ== X-CSE-MsgGUID: qCLmA8brR3CZKCwycekT8Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="117122690" Received: from jraag-z790m-itx-wifi.iind.intel.com ([10.190.239.23]) by orviesa004.jf.intel.com with ESMTP; 09 Feb 2025 22:51:00 -0800 From: Raag Jadav To: gregkh@linuxfoundation.org, rafael@kernel.org, linus.walleij@linaro.org, mika.westerberg@linux.intel.com, andriy.shevchenko@linux.intel.com, dmitry.torokhov@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, sre@kernel.org, jic23@kernel.org, przemyslaw.kitszel@intel.com Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-sound@vger.kernel.org, linux-pm@vger.kernel.org, linux-iio@vger.kernel.org, Raag Jadav Subject: [PATCH v4 19/20] ASoC: meson: axg-tdm-interface: use devm_kmemdup_array() Date: Mon, 10 Feb 2025 12:19:05 +0530 Message-Id: <20250210064906.2181867-20-raag.jadav@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250210064906.2181867-1-raag.jadav@intel.com> References: <20250210064906.2181867-1-raag.jadav@intel.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Convert to use devm_kmemdup_array() which is more robust. Signed-off-by: Raag Jadav --- sound/soc/meson/axg-tdm-interface.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sound/soc/meson/axg-tdm-interface.c b/sound/soc/meson/axg-tdm-interface.c index 09103eef2a97..421b5d719fb3 100644 --- a/sound/soc/meson/axg-tdm-interface.c +++ b/sound/soc/meson/axg-tdm-interface.c @@ -529,7 +529,6 @@ static int axg_tdm_iface_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct snd_soc_dai_driver *dai_drv; struct axg_tdm_iface *iface; - int i; iface = devm_kzalloc(dev, sizeof(*iface), GFP_KERNEL); if (!iface) @@ -541,15 +540,11 @@ static int axg_tdm_iface_probe(struct platform_device *pdev) * We'll change the number of channel provided by DAI stream, so dpcm * channel merge can be done properly */ - dai_drv = devm_kcalloc(dev, ARRAY_SIZE(axg_tdm_iface_dai_drv), - sizeof(*dai_drv), GFP_KERNEL); + dai_drv = devm_kmemdup_array(dev, axg_tdm_iface_dai_drv, ARRAY_SIZE(axg_tdm_iface_dai_drv), + sizeof(axg_tdm_iface_dai_drv[0]), GFP_KERNEL); if (!dai_drv) return -ENOMEM; - for (i = 0; i < ARRAY_SIZE(axg_tdm_iface_dai_drv); i++) - memcpy(&dai_drv[i], &axg_tdm_iface_dai_drv[i], - sizeof(*dai_drv)); - /* Bit clock provided on the pad */ iface->sclk = devm_clk_get(dev, "sclk"); if (IS_ERR(iface->sclk))