1. 19 Mar, 2022 3 commits
    • Peter Rosin's avatar
      i2c: mux: demux-pinctrl: do not deactivate a master that is not active · 1a22aabf
      Peter Rosin authored
      Attempting to rollback the activation of the current master when
      the current master has not been activated is bad. priv->cur_chan
      and priv->cur_adap are both still zeroed out and the rollback
      may result in attempts to revert an of changeset that has not been
      applied and do result in calls to both del and put the zeroed out
      i2c_adapter. Maybe it crashes, or whatever, but it's bad in any
      case.
      
      Fixes: e9d1a0a4 ("i2c: mux: demux-pinctrl: Fix an error handling path in 'i2c_demux_pinctrl_probe()'")
      Signed-off-by: default avatarPeter Rosin <peda@axentia.se>
      Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
      1a22aabf
    • Lucas Tanure's avatar
      i2c: meson: Fix wrong speed use from probe · cb13aa16
      Lucas Tanure authored
      Having meson_i2c_set_clk_div after i2c_add_adapter
      causes issues for client drivers that try to use
      the bus before the requested speed is applied.
      
      The bus can be used just after i2c_add_adapter, so
      move i2c_add_adapter to the final step as
      meson_i2c_set_clk_div needs to be called before
      the bus is used.
      
      Fixes: 09af1c2f ("i2c: meson: set clock divider in probe instead of setting it for each transfer")
      Signed-off-by: default avatarLucas Tanure <tanure@linux.com>
      Reviewed-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
      Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
      cb13aa16
    • Jae Hyun Yoo's avatar
      i2c: add tracepoints for I2C slave events · d714fb25
      Jae Hyun Yoo authored
      I2C slave events tracepoints can be enabled by:
      
      	echo 1 > /sys/kernel/tracing/events/i2c_slave/enable
      
      and logs in /sys/kernel/tracing/trace will look like:
      
      	... i2c_slave: i2c-0 a=010 ret=0 WR_REQ []
      	... i2c_slave: i2c-0 a=010 ret=0 WR_RCV [02]
      	... i2c_slave: i2c-0 a=010 ret=0 WR_RCV [0c]
      	... i2c_slave: i2c-0 a=010 ret=0   STOP []
      	... i2c_slave: i2c-0 a=010 ret=0 RD_REQ [04]
      	... i2c_slave: i2c-0 a=010 ret=0 RD_PRO [b4]
      	... i2c_slave: i2c-0 a=010 ret=0  STOP []
      
      formatted as:
      
      	i2c-<adapter_nr>
      	a=<addr>
      	ret=<ret>	<- callback return value
      	<event>
      	[<data>]
      
      trace printings can be selected by adding a filter like:
      
      	echo adapter_nr==1 >/sys/kernel/tracing/events/i2c_slave/filter
      Signed-off-by: default avatarJae Hyun Yoo <quic_jaehyoo@quicinc.com>
      Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
      d714fb25
  2. 18 Mar, 2022 1 commit
  3. 11 Mar, 2022 7 commits
  4. 02 Mar, 2022 3 commits
  5. 01 Mar, 2022 11 commits
  6. 23 Feb, 2022 1 commit
  7. 21 Feb, 2022 1 commit
  8. 20 Feb, 2022 13 commits