[PATCH v6 0/2] hwmon: Driver for Nuvoton NCT7363Y

baneric926@gmail.com posted 2 patches 1 month ago
.../bindings/hwmon/nuvoton,nct7363.yaml       |  66 +++
Documentation/hwmon/index.rst                 |   1 +
Documentation/hwmon/nct7363.rst               |  33 ++
MAINTAINERS                                   |   8 +
drivers/hwmon/Kconfig                         |  11 +
drivers/hwmon/Makefile                        |   1 +
drivers/hwmon/nct7363.c                       | 446 ++++++++++++++++++
7 files changed, 566 insertions(+)
create mode 100644 Documentation/devicetree/bindings/hwmon/nuvoton,nct7363.yaml
create mode 100644 Documentation/hwmon/nct7363.rst
create mode 100644 drivers/hwmon/nct7363.c
[PATCH v6 0/2] hwmon: Driver for Nuvoton NCT7363Y
Posted by baneric926@gmail.com 1 month ago
From: Ban Feng <kcfeng0@nuvoton.com>

NCT7363Y is an I2C based hardware monitoring chip from Nuvoton.

Changes since version 5:
- use lower case for inline function
- remove enum chips and refine code
- use regmap_read_bulk() to avoid the locks
- add fan speed low limit (register 0x6c, 0x6d) and alarm attributes
  (register 0x34, 0x35)
- add regmap caching capabilities
- fix "checkpatch --strict" report in FANIN_SEL
  - Macro argument reuse 'x' - possible side-effects

Changes since version 4:
- add Datasheet information and refine words in yaml and rst files
- remove fan-common.yaml since it is already in hwmon-next
- refine the commit messages
- modify the type of returned value in some functions
- refine lock/unlock in nct7363_write_pwm and accessing
  HVAL/LVAL registers
- refine nct7363_init_chip
- add range check in nct7363_present_pwm_fanin
- add i2c_device_id table
- add nct7362 to of_device_id and i2c_device_id table

Changes since version 3:
- Cherry-pick the fan-common.yaml in [1]
- Fix "checkpatch --strict" report
- Replace BIT_CHECK() with BIT()
- Fix CamelCase defines or variables
- Drop enum chips
- Drop all local caching and just read values through regmap
- Drop chip auto-detection since it increases boot time

[1]: https://patchwork.kernel.org/project/linux-hwmon/patch/
     20240221104025.1306227-2-billy_tsai@aspeedtech.com/

Changes since version 2:
- Cherry-pick the fan-common.yaml in [1]
- Fix nct736x typo and add unevaluatedProperties

[1]: https://patchwork.kernel.org/project/linux-hwmon/patch/
     20231107105025.1480561-2-billy_tsai@aspeedtech.com/

Changes since version 1:
- Modify NCT736X(nct736x) to NCT7363Y(nct7363)
- Convert to devm_hwmon_device_register_with_info API
- All ID tables are next to each other and should be consistent
  between i2c_device_id and of_device_id
- Ref. fan-common.yaml and modify properties (nuvoton,pwm-mask/
  nuvoton,fanin-mask) to (pwms/tach-ch)
- Convert to devm_regmap_init_i2c API
- Remove unused function (watchdog timer)
- Fix uninitialized symbol which is reported by kernel test robot

Ban Feng (2):
  dt-bindings: hwmon: Add NCT7363Y documentation
  hwmon: Add driver for I2C chip Nuvoton NCT7363Y

 .../bindings/hwmon/nuvoton,nct7363.yaml       |  66 +++
 Documentation/hwmon/index.rst                 |   1 +
 Documentation/hwmon/nct7363.rst               |  33 ++
 MAINTAINERS                                   |   8 +
 drivers/hwmon/Kconfig                         |  11 +
 drivers/hwmon/Makefile                        |   1 +
 drivers/hwmon/nct7363.c                       | 446 ++++++++++++++++++
 7 files changed, 566 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/hwmon/nuvoton,nct7363.yaml
 create mode 100644 Documentation/hwmon/nct7363.rst
 create mode 100644 drivers/hwmon/nct7363.c

-- 
2.34.1