[PATCH v10 0/3] Add Ampere's Altra SMPro child drivers

Quan Nguyen quan at os.amperecomputing.com
Thu Nov 17 14:23:27 AEDT 2022



On 17/11/2022 10:11, Joel Stanley wrote:
> On Wed, 16 Nov 2022 at 03:56, Quan Nguyen <quan at os.amperecomputing.com> wrote:
>>
>> Dear Joel,
>>
>> As this patch set was all accepted in linux-next tree, May you help to
>> pick them to your openbmc/linux dev-6.0 branch?
> 
> Done. Great work, well done.
> 
> Cheers,
> 
> 

Thanks a lot for the help.
- Quan

> 
>>
>> The list of commits is as below (as some was picked in v9 and the remain
>> was picked in v10):
>>
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=072b9545e5cf470eea01f8e59c3dbd4b81181a2e
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=026d99699101db523f444d0fc3dddb75fef42594
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=4a4a4e9ebaa3ce903a3cdf8bb173eeaf87828cea
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=763dc90e9a4332f82ad43c866c6878742b15d4ab
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=2202e8df80936fa0d92d49cc7db1562e7772308e
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=c157f6e8ea2e61ab72f85567f37faa4711c291d7
>> +
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20221115&id=37618918f6c7219e1bfb86e4c3fe7834092643d0
>>
>> Thank you for the help.
>> - Quan
>>
>>
>> On 31/10/2022 09:44, Quan Nguyen wrote:
>>> The SMpro co-processor on Ampere Altra processor family is to monitor
>>> and report various data included hwmon-related info, RAS errors, and
>>> other miscellaneous information. The SMPro MFD driver initializes the
>>> register map and instantiates all sub-devices. All the specifics will
>>> be handled in the child drivers.
>>>
>>> As some patches in previous version were picked, this patchset includes
>>> the remain patches which are Ampere SMpro errmon, SMPRO misc and dt
>>> bindings document for SMPro MFD driver. The errmon driver supports
>>> monitoring and reporting RAS-related errors. The misc driver supports
>>> reporting boot progress and other miscellaneous information.
>>>
>>> Discussion for v9:
>>> https://lore.kernel.org/lkml/Y1aHiaZ1OpHZIzS9@google.com/T/
>>>
>>> v10:
>>>     + Revise and fix document format                             [Bagas]
>>>     + Update commit message: s/This commit adds/Add/             [Bagas]
>>>     + Use
>>>       Documentation/ABI/testing/sysfs-bus-platform-devices-ampere-smpro
>>>                                                                   [Greg]
>>>     + Drop Documentation/misc-devices/smpro-[errmon|misc].rst     [Greg]
>>>
>>> v9:
>>>     + Fix issue when building htmldocs                           [Bagas]
>>>     + Insert 'break;' to avoid fall-through          [kernel test robot]
>>>     + Update SPDX license                                         [Greg]
>>>     + Fix messy goto                                              [Greg]
>>>     + Use ATTRIBUTE_GROUPS()                                      [Greg]
>>>     + Use dev_groups instead of sysfs_create_group() to avoid
>>>     user space racing issue                                       [Greg]
>>>     + Fix ugly static struct define                               [Greg]
>>>     + Rename smpro-mfd.c to smpro-core.c                     [Lee Jones]
>>>     + Fix include files in alphabetical order                [Lee Jones]
>>>     + Add defines to avoid using magic numbers               [Lee Jones]
>>>     + Return -EINVAL if device does not match                [Lee Jones]
>>>     + Remove unnecessary comment                             [Lee Jones]
>>>     + Remove unnecessary channel info for VRD and DIMM event      [Quan]
>>>     + Separate error_[smpro|pmpro] to error_* and warn_*          [Quan]
>>>     + Add minor refactor code                                     [Quan]
>>>
>>> v8:
>>>     + Insert 'break;' to avoid fall-through          [kernel test robot]
>>>     + Avoid uninitialized variable use               [kernel test robot]
>>>     + Remove unused #*_cells                                 [Krzysztof]
>>>     + Switch to use sysfs_emit()                                  [Greg]
>>>     + Sysfs to return single value only                           [Greg]
>>>     + Fix KernelVerion field in Documentation/ABI/testing doc     [Greg]
>>>     + Change errors_* sysfs to error_*                            [Quan]
>>>     + Add overflow_[core|mem|pcie|other]_[ce|ue] sysfs to report
>>>     overflow status of each type of HW errors                     [Quan]
>>>     + Update wording in Kconfig for smpro-errmon and smpro-misc   [Quan]
>>>     + Masks reserved bit when read 10-bit power value             [Quan]
>>>     + Add some minor refactor                                     [Quan]
>>>
>>> v7:
>>>     + Add docs to Documentation/ABI/testing                       [Greg]
>>>     + Re-order patches to avoid compile dependency           [Lee Jones]
>>>     + Remove regmap_acquire/release_lock()                        [Quan]
>>>     + Install regmap bus->read/write() to handle multiple types of bus
>>>       access                                                      [Quan]
>>>     + Replace i2c block read by regmap_noinc_read()               [Quan]
>>>     + Fix wrong return type of *show/store()         [kernel test robot]
>>>     + Update GPL version                                          [Quan]
>>>     + Add some others minor code refactor                         [Quan]
>>>
>>> v6:
>>>     + Introduced smpro-errmon, smpro-misc as smpro-mfd sub-device [Quan]
>>>
>>> v5:
>>>     + Introduced the smpro-mfd driver and drop the use of
>>>     simple-mfd-i2c driver to avoid DT node with no resource in child
>>>     device DT nodes [Rob]
>>>     + Removed the use of reg DT property in child driver [Quan]
>>>     + Validated ManufactureID when probing smpro-mfd drivers [Quan]
>>>     + As child devices are instantiated by SMPro MFD driver, drop the
>>>     ManufacturerID checking in child driver, ie: smpro-hwmon [Quan]
>>>     + Revised commit messages [Quan]
>>>
>>> v4:
>>>     + Revised commit message [Quan]
>>>     + Fixed build issue found by kernel test robot [Guenter]
>>>     + Returned regmap_read() error code [Guenter]
>>>
>>> v3:
>>>     + Supported list of compatible string [Rob]
>>>     + Introduced reg property in DT to specify reg offset [Rob]
>>>     + Updated description and other minor changes in yaml file [Rob]
>>>     + Handled negative temperature value [Guenter]
>>>     + Returned -ENODEV if Manufacturer ID is wrong [Guenter]
>>>     + Refactored smpro_read_string() and smpro_temp_read() [Guenter]
>>>     + Removed smpro_write() function [Guenter]
>>>     + Added minor refactor changes [Quan]
>>>
>>> v2:
>>>     + Used 'struct of_device_id's .data attribute [Lee Jones]
>>>     + Removed "virtual" sensors [Guenter]
>>>     + Fixed typo "mili" to "milli", "nanoWatt" to "microWatt" [Guenter]
>>>     + Reported SOC_TDP as "Socket TDP" using max attributes [Guenter]
>>>     + Clarified "highest" meaning in documentation [Guenter]
>>>     + Corrected return error code when host is turn off [Guenter]
>>>     + Reported MEM HOT Threshold for all DIMMs as temp*_crit [Guenter]
>>>     + Removed license info as SPDX-License-Identifier existed [Guenter]
>>>     + Added is_visible() support [Guenter]
>>>     + Used HWMON_CHANNEL_INFO() macro and LABEL attributes [Guenter]
>>>     + Made is_valid_id() return boolean [Guenter]
>>>     + Returned -EPROBE_DEFER when smpro reg inaccessible [Guenter]
>>>     + Removed unnecessary error message when dev register fail [Guenter]
>>>     + Removed Socket TDP sensor [Quan]
>>>     + Changed "ampere,ac01-smpro" to "ampere,smpro" [Quan]
>>>     + Included sensor type and channel in labels [Quan]
>>>     + Refactorized code to fix checkpatch.pl --strict complaint [Quan]
>>>
>>> Quan Nguyen (3):
>>>     dt-bindings: mfd: Add bindings for Ampere Altra SMPro MFD driver
>>>     misc: smpro-errmon: Add Ampere's SMpro error monitor driver
>>>     misc: smpro-misc: Add Ampere's Altra SMpro misc driver
>>>
>>>    .../sysfs-bus-platform-devices-ampere-smpro   | 312 +++++++++++
>>>    .../devicetree/bindings/mfd/ampere,smpro.yaml |  42 ++
>>>    drivers/misc/Kconfig                          |  22 +
>>>    drivers/misc/Makefile                         |   2 +
>>>    drivers/misc/smpro-errmon.c                   | 529 ++++++++++++++++++
>>>    drivers/misc/smpro-misc.c                     | 145 +++++
>>>    6 files changed, 1052 insertions(+)
>>>    create mode 100644 Documentation/ABI/testing/sysfs-bus-platform-devices-ampere-smpro
>>>    create mode 100644 Documentation/devicetree/bindings/mfd/ampere,smpro.yaml
>>>    create mode 100644 drivers/misc/smpro-errmon.c
>>>    create mode 100644 drivers/misc/smpro-misc.c
>>>


More information about the openbmc mailing list