Linux-Kernel-PMIC-Drivers

Rohm power management IC drivers for Linux kernel.

Drivers Home

This project is maintained by RohmSemiconductor

ROHM Power Management IC BD71837, BD71847 and BD71850 device drivers.

Linux:

Source Code:

Upstream

The ROHM Finland SWDC has created a Linux driver in collaboration with the Linux kernel community. Driver is included in the Upstream Linux from 4.19-rc1 onwards.

The Linux kernel can be obtained from:

https://www.kernel.org/

or by cloning Linus Torvald’s official linux development tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux.git

NOTE: Please note that a multiple crucial patches has been applied since initial release. It is highly recommended to use driver included in the most recent Linux kernel version.

The device-tree compatible for the BD71850 is missing from initial releases. If such Linux release is used the BD71850 can be described using exactly same device-tree bindings as BD71847. Please use

compatible = “rohm,bd71847”;

also for BD71850 if

compatible = “rohm,bd71850”;

is not recognized.

Configuration:

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

- CONFIG_MFD_ROHM_BD718XX
- CONFIG_REGULATOR_BD718XX
- CONFIG_COMMON_CLK_BD718XX
- CONFIG_KEYBOARD_GPIO
config description subsystem
CONFIG_MFD_ROHM_BD718XX Enables the MFD core driver which handles interrupts and bus access. The core driver also launches the sub device drivers. mfd
CONFIG_REGULATOR_BD718XX 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_KEYBOARD_GPIO Enables support for sending shutdown request using power button. input

Upstream driver support

Please use the regular upstream maintenance information for support. The maintenance information can be found from the linux MAINTAINERS file. You can read the MAINTAINERS manually or use the get_maintainer.pl. See why support via upstream for reason.

Das u-Boot:

Limited u-Boot regulator driver for BD71837 and BD71847 is included in the official Denx u-boot. First u-boot release containing the driver is the 1.st release candidate for 2019.10 (version u-boot-2019.10-rc1). The u-boot driver works with pmic device-tree which is compatible with dt-documentation included in the Linux source code but a few of the properties are ignored. BD71850 can be used with same u-boot driver using the BD71847 device-tree bindings.

The Denx u-boot:

https://www.denx.de/wiki/U-Boot/SourceCode
ftp://ftp.denx.de/pub/u-boot/

The linux dt-documentations

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt