This is patchset v10, it takes care of review comments provided in v8 and v9. v9 --> v10: - Removed version specific socinfo objects. - Added a couple of PMIC models in pmic_model array. - Corrected interpretation of PMIC information related fields. v8 --> v9: - Removed qcom_odm attribute. - Re-introduce soc_of_id array to map soc-id into human readable string. v7 --> v8: - Fixed compilation warning detected in v7 v6 --> v7: - Some minor style changes - Rather than showing string for h/w types, just show the number obtained from SMEM. The reader of this number is supposed to parse this into a human readable string as this information may be different for different ODMs - Create an attribute 'qcom_odm' depending on the presence of corresponding property in SMEM DT entry. This information can be used for ODM specific interpretation of SMEM socinfo content - Read machine value from DT, rather than using soc-id as index in an ever increasing array of machine names v5 --> v6: - use dev_ext_attribute to represent SMEM image items - Avoid redundant function calls - Avoid use of unnecessary global variables - Remove redundant enums - Avoid redundant checking of socinfo being NULL or not - Avoid redundant checking of socinfo format version - Rename show/store function of attributes as _show/_store rather than _get/_set - Use an array to represent socinfo attributes and create attribute files in a loop depending on the minimum socinfo format version for which these attributes are supported - if obtained socinfo format version is greater than the maximum known version return an error rather than falling back to maximum known version v4 --> v5: - Removed redundant function socinfo_print v3 --> v4: - Corrected makefile so that smem and socinfo are treated as one module - Moved the code snippet to get socinfo smem item into socinfo.c - Removed redundant use of socinfo major version as it is always zero - Removed unused enums - Removed redundant indirections - Use image_version object to store information about each entry in the smem image table - Replaced usage of snprintf with sprintf and scnprintf - Get the address of image version table at the beginning and setup image version attributes only if image version table is available - Do the same for platform_subtype - Make different type of image version objects read only or readable/ writable depending on their types. For example apps image attributes can be modified via sysfs but the same can't be done for modem image - Show PMIC model in a human readable form rather than a numeric number - Avoid using table in single sysfs entry - Removed checkpatch warnings about S_IRUGO v2 --> v3: - Add support to toss soc information data into entropy pool - Since socinfo is rolled into smem driver, compile the relevant portion of socinfo driver with smem driver v1 --> v2: - Removed inclusion of system_misc.h - merged socinfo.h into socinfo.c - made platform type and subtype arrays static - replaced uint32_t with u32 - made functions static to avoid exposing vendor specific interface - Replaced usage of IS_ERR_OR_NULL with IS_ERR. - Remove raw-id attribute usage as human readable soc-id will suffice here - Avoid using a separate platform driver for socinfo by rolling it into smem driver itself. The sysfs setup is being done in a separate file (socinfo.c) - Replaced macro BUILD_ID_LENGTH with SMEM_SOCINFO_BUILD_ID_LENGTH. - For failure cases where socinfo can not be read use a single dummy socinfo with error values. - Removed usage of early_machine_is_xxx. Imran Khan (2): soc: qcom: Add SoC info driver Documentation/ABI: Add ABI infomation for QCOM socinfo driver .../ABI/testing/sysfs-driver-qcom_socinfo | 171 +++++++ drivers/soc/qcom/Kconfig | 1 + drivers/soc/qcom/Makefile | 3 +- drivers/soc/qcom/smem.c | 5 + drivers/soc/qcom/socinfo.c | 518 +++++++++++++++++++++ 5 files changed, 697 insertions(+), 1 deletion(-) create mode 100644 Documentation/ABI/testing/sysfs-driver-qcom_socinfo create mode 100644 drivers/soc/qcom/socinfo.c -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html