Hi, > On Tue, Oct 01, 2024 at 04:29:34PM +0800, Michael Wu wrote: > > In commit 35eba185fd1a ("i2c: designware: Calculate SCL timing parameter > > for High Speed Mode") hs_hcnt and hs_lcnt are calculated based on fixed > > tHIGH = 160 and tLOW = 120. However, the set of these fixed values only > > applies to the combination of hardware parameters IC_CAP_LOADING = > 400pF > > and IC_CLK_FREQ_OPTIMIZATION = 1. Outside of this combination, if these > > fixed tHIGH = 160 and tLOW = 120 are still used, the calculated hs_hcnt > > and hs_lcnt may not be small enough, making it impossible for the SCL > > frequency to reach 3.4 MHz. > > > > Section 3.15.4.5 in DesignWare DW_apb_i2b Databook v2.03 says that when > > IC_CLK_FREQ_OPTIMIZATION = 0, > > > > MIN_SCL_HIGHtime = 60 ns for 3.4 Mbps, bus loading = 100pF > > = 120 ns for 3.4 Mbps, bus loading = 400pF > > MIN_SCL_LOWtime = 160 ns for 3.4 Mbps, bus loading = 100pF > > = 320 ns for 3.4 Mbps, bus loading = 400pF > > > > and section 3.15.4.6 says that when IC_CLK_FREQ_OPTIMIZATION = 1, > > > > MIN_SCL_HIGHtime = 60 ns for 3.4 Mbps, bus loading = 100pF > > = 160 ns for 3.4 Mbps, bus loading = 400pF > > MIN_SCL_LOWtime = 120 ns for 3.4 Mbps, bus loading = 100pF > > = 320 ns for 3.4 Mbps, bus loading = 400pF > > > > In order to calculate more accurate hs_hcnt amd hs_lcnt, two hardware > > parameters IC_CAP_LOADING and IC_CLK_FREQ_OPTIMIZATION must be > > considered together. > > ... > > > + * @bus_capacitance_pf: bus capacitance in picofarads > > Since it seems a new version of the series is warranted, and looking into > the current kernel source (no other users of this unit were observed), > I think we may do correct capitalisation here for the sake of physics > and unit system, i.e. > > * @bus_capacitance_pF: bus capacitance in picofarads Are you serious? I have never seen capital letters used to declare a variable name. Although checkpatch.pl does not consider this as an issue, is this against everyone's custom or unspoken rules? Sincerely, Michael