summaryrefslogtreecommitdiff
path: root/drivers/led/issi/is31fl3741.c
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2023-09-14 17:02:40 +1000
committerGitHub <noreply@github.com>2023-09-14 08:02:40 +0100
commit76daf29ef0820438902eb64027c403cc3e37b892 (patch)
tree3b67a3c9ba6632c84958f30f49678fc87eeaa070 /drivers/led/issi/is31fl3741.c
parentf9ed1e3ebc66b568a20848ae0f07052fbef5e4a8 (diff)
Add and use PWM frequency defines for ISSI LED drivers (#22009)
Diffstat (limited to 'drivers/led/issi/is31fl3741.c')
-rw-r--r--drivers/led/issi/is31fl3741.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/led/issi/is31fl3741.c b/drivers/led/issi/is31fl3741.c
index 2459677df0..2db1f021b1 100644
--- a/drivers/led/issi/is31fl3741.c
+++ b/drivers/led/issi/is31fl3741.c
@@ -49,6 +49,7 @@
#define IS31FL3741_REG_CONFIGURATION 0x00 // PG4
#define IS31FL3741_REG_GLOBALCURRENT 0x01 // PG4
#define IS31FL3741_REG_PULLDOWNUP 0x02 // PG4
+#define IS31FL3741_REG_PWM_FREQUENCY 0x36 // PG4
#define IS31FL3741_REG_RESET 0x3F // PG4
#ifndef IS31FL3741_I2C_TIMEOUT
@@ -63,6 +64,10 @@
# define IS31FL3741_CONFIGURATION 0x01
#endif
+#ifndef IS31FL3741_PWM_FREQUENCY
+# define IS31FL3741_PWM_FREQUENCY IS31FL3741_PWM_FREQUENCY_29K_HZ
+#endif
+
#ifndef IS31FL3741_SWPULLUP
# define IS31FL3741_SWPULLUP IS31FL3741_PUR_32KR
#endif
@@ -170,6 +175,8 @@ void is31fl3741_init(uint8_t addr) {
is31fl3741_write_register(addr, IS31FL3741_REG_GLOBALCURRENT, IS31FL3741_GLOBALCURRENT);
// Set Pull up & Down for SWx CSy
is31fl3741_write_register(addr, IS31FL3741_REG_PULLDOWNUP, ((IS31FL3741_CSPULLUP << 4) | IS31FL3741_SWPULLUP));
+ // Set PWM frequency
+ is31fl3741_write_register(addr, IS31FL3741_REG_PWM_FREQUENCY, (IS31FL3741_PWM_FREQUENCY & 0b1111));
// is31fl3741_update_led_scaling_registers(addr, 0xFF, 0xFF, 0xFF);