From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752208AbdBCBle (ORCPT ); Thu, 2 Feb 2017 20:41:34 -0500 Received: from mail-pg0-f67.google.com ([74.125.83.67]:35423 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751653AbdBCBlb (ORCPT ); Thu, 2 Feb 2017 20:41:31 -0500 From: Dmitry Torokhov To: "Rafael J. Wysocki" Cc: linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org, Andy Shevchenko , Mika Westerberg , Hans de Goede , Wolfram Sang Subject: [PATCH v5 0/4] Export APIs to copy device properties & more Date: Thu, 2 Feb 2017 17:41:24 -0800 Message-Id: <20170203014128.317-1-dmitry.torokhov@gmail.com> X-Mailer: git-send-email 2.11.0.483.g087da7b7c-goog Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Here is the refreshed series exporting APIs to copy statically declared device properties. The reason is that we want to augment ACPI-based devices with properties, and drivers usually have a largish DMI table for multiple models, so it is desirable to mark everything as __initdata/__initconst, and then copy only the entry matching the device we are running on and discard the rest. The last patch is not really about device property APIs, but rather allowing users to attach properties to i2c_board_info, and have them attached to instantiated device(s). The reason it is included is because it depends on device_add_properties() taking const pointer, which is patch #1. If it seems useful I hope Rafael and Wolfram would figure a way to merge it :) and ideally give me a stable branch as I have more patches to platform/chrome and Atmel touchscreen driver depending on them. v5: - reshuffle order of patches so that "constness" ones are first - factor out property_entry_free_data() and make sure we call it for properties already successfully copied when property_entry_copy_data() in property_entries_dup() fails - dropped old Acks as patches changed enough v4: - do not clobber retrun value of property_copy_string_array() with -ENOMEM v3: - fix memory leak in property_copy_string_array() pointed out by Mika Westerberg v2: - addressed Andy's comments - added property_entries_free() - added patch to allow constify values of property arrays - added i2c patch allowing to attach property to devices via board info v1: - initial posting Dmitry Torokhov (4): device property: allow to constify properties device property: constify property arrays values device property: export code duplicating array of property entries i2c: allow specify device properties in i2c_board_info drivers/base/property.c | 229 ++++++++++++++++++++++++++++++----------------- drivers/i2c/i2c-core.c | 16 +++- include/linux/i2c.h | 3 + include/linux/property.h | 19 ++-- 4 files changed, 177 insertions(+), 90 deletions(-) -- Dmitry