Thread (17 messages) 17 messages, 3 authors, 2020-08-10

Re: [PATCH 9/9] mfd: mt6360: Merge different sub-devices I2C read/write

From: Gene Chen <hidden>
Date: 2020-08-07 10:16:23
Also in: linux-mediatek, lkml

Mark Brown [off-list ref] 於 2020年8月6日 週四 下午8:13寫道:
On Thu, Aug 06, 2020 at 11:30:56AM +0800, Gene Chen wrote:
quoted
Mark Brown [off-list ref] 於 2020年8月6日 週四 上午12:10寫道:
quoted
quoted
It's not clear why this isn't just done in the device regmap, there's
exactly one user?
quoted
because I use one regmap to access 4 I2C devices,
There appears to be only one device here?
quoted
I need change the regmap_bus struct to fit I2C read/write with CRC bit
Therefore, MFD reviewer suggests I can move the regmap api to regmap
folder such as regmap-ac97.c
AC'97 is an industry standard bus used by a range of devices in
different subsystems.  You can already have custom operations for a
device just in a regular regmap using the reg_read() and reg_write()
operations which are there so devices that individual device support
doesn't need to be added to the regmap core.
I need use regmap_raw_read to access MT6360 TYPEC part, so we need
implement bus read control
You really also need to write a much clearer changelog, I would be hard
pressed to tell from the changelog that this was moving things to the
regmap core rather than shuffling regmaps within the device.
MT6360 has 4 I2C worker devices
First, I increase reg_bits from 8 to 16 bits.
Higher 8 bits, bank, indicated which worker device I want access
Then, if worker devices is PMIC or LDO part, I need calculate or check
CRC8 bits when we write or read data.
CRC8 bits is calculated by 3 parts.
1'st part include 1 byte is worker address and R/W in LSB.
2'nd part include 1 byte is register address
3'nd part include written data or read data from MT6360
I also need 1 dummy byte when write data

@Lee Jones,
I found out drivers/iio/chemical/bme680_spi.c implement their own
regmap_bus too.
Can I move regmap control back to mt6360-core.c?

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help