Linux-Kernel-PMIC-Drivers

Rohm power management IC drivers for Linux kernel.

Drivers Home

This project is maintained by RohmSemiconductor

ROHM Power Management IC BD71851

The ROHM BD71851 is a Power Management IC which has: 8 BUCK regulators and 4 LDOs. There’s also an ADC with an accumulator for current/voltage sensing, RTC and 32.768 kHz clock gate and interrupt capable GPIOs*.

(*)Available functions depend on OTP configuration. The pins are shared and amount of available GPIOs depend on what are the other enabled functions

Linux:

Source Code:

Downstream

Here is an unmaintained reference driver which you can try.

The driver branch is unstable, meaning it is under development and the git branch can be changed without a warning. Changes include rebases and other operations which can break the change history and modify the commits. If git tags are created, they should stay stable. Please note, drivers under development are expected to be buggy, sometimes even up to the point where compilation may fail. You should know the risks of trying such code. Even hardware breakages are possible and it is user’s responsibility to ensure the code is safe before using it. Please note that this reference driver is provided as is, without a warranty. It is not a “production ready quality”, and you are required to do all porting, fixing and testing while writing your driver using it as a starting point.

Upstream plan

Upstream driver is currently expected to land in Linux during spring 2025

Configuration:

Configuration options one may want to enable for kernel build are:

- CONFIG_MFD_ROHM_BD71828
- CONFIG_REGULATOR_BD71828
- CONFIG_COMMON_CLK_BD718XX
- CONFIG_GPIO_BD71851
config description subsystem
CONFIG_MFD_ROHM_BD71828 Enables the MFD core driver which handles interrupts and bus access. The core driver also launches the sub device drivers. mfd
CONFIG_REGULATOR_BD71828 Enables the regulator driver which allows the kernel to control PMIC’s regulatos. regulator
CONFIG_COMMON_CLK_BD718XX Enables the clk driver which provides control for the clock gate. clk
CONFIG_GPIO_BD71851 Enables the GPIO driver which provides control for the PMIC’s generic purpose input/output pins. gpio

uBoot:

An uBoot driver for evaluating some of the PMIC functionalities is done. Please contact matti.vaittinen(at)fi.rohmeurope.com for the details.