Usual buisness: a driver fix, a DT fix, a minor core fix
-----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEOZGx6rniZ1Gk92RdFA3kzBSgKbYFAmUX8OkACgkQFA3kzBSg KbYasA/+KhTMt8iMduKHTjjHgB8hv3AYw5QY9gYxIFMMjM6UpSHqM+LI9bwAQTfq dpTykOXNHlROVs9iZeU8g7oYDX6H3ku5yYBJPptYDdcG7U3WLFt7ndUUOReQVU8L aPQ8yyFMuyDF1s5ItIE3DF0rSVX6OngIOOLcSGPALEcbUSuyfbjf0yw1bL2pW7dF 2bX8RLKaeuvo1tt9g4AUzg+7gOQs9dxCE44Lpiqy1R2gJC/2WBxRdkYVdCYOR23s CZX7ds1TKUQJiFpyZsgTQt0Qc9K7253TpqxemQAjsfN982VPmIjVeX4OvjjJlgul AFISVN58WW4V28drw6kN9oCOwTal8Use8nBzVtVKqa7ebJ46UrUM6oJRHr3Z/xDP nBPnS48MGwyEym7QKy97ZV10u14OSj9J5sHn+125EHPo6TnW2SvQ/qfr51ejs619 4lorzyBBwSgFoGk+jaeG85E46GkedmJmBm6iDlz+ADQIamMIlRgolNltClZusB3x DMsCI9zpx96tkHL7cG8OVynD+392kKSsSkYhzQbBQjZ10dbNtmBY92jkq2Q3zd2m w99pWhjREn82e4MYyAVwAMiNpCwDM4kbYVXr608FWryrctp0RKNNSS3Hu7w9AcT4 6QcKhQulmSBvstfLXHqxu1Nuey25j91sNfVnTUulCgdmaBK7c00= =Fla+ -----END PGP SIGNATURE----- Merge tag 'i2c-for-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux Pull i2c fixes from Wolfram Sang: "Usual business: a driver fix, a DT fix, a minor core fix" * tag 'i2c-for-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: i2c: npcm7xx: Fix callback completion ordering i2c: mux: Avoid potential false error message in i2c_mux_add_adapter dt-bindings: i2c: mxs: Pass ref and 'unevaluatedProperties: false'
This commit is contained in:
commit
cefc06e4de
@ -9,6 +9,9 @@ title: Freescale MXS Inter IC (I2C) Controller
|
||||
maintainers:
|
||||
- Shawn Guo <shawnguo@kernel.org>
|
||||
|
||||
allOf:
|
||||
- $ref: /schemas/i2c/i2c-controller.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
@ -37,7 +40,7 @@ required:
|
||||
- dmas
|
||||
- dma-names
|
||||
|
||||
additionalProperties: false
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
|
@ -694,6 +694,7 @@ static void npcm_i2c_callback(struct npcm_i2c *bus,
|
||||
{
|
||||
struct i2c_msg *msgs;
|
||||
int msgs_num;
|
||||
bool do_complete = false;
|
||||
|
||||
msgs = bus->msgs;
|
||||
msgs_num = bus->msgs_num;
|
||||
@ -722,23 +723,17 @@ static void npcm_i2c_callback(struct npcm_i2c *bus,
|
||||
msgs[1].flags & I2C_M_RD)
|
||||
msgs[1].len = info;
|
||||
}
|
||||
if (completion_done(&bus->cmd_complete) == false)
|
||||
complete(&bus->cmd_complete);
|
||||
break;
|
||||
|
||||
do_complete = true;
|
||||
break;
|
||||
case I2C_NACK_IND:
|
||||
/* MASTER transmit got a NACK before tx all bytes */
|
||||
bus->cmd_err = -ENXIO;
|
||||
if (bus->master_or_slave == I2C_MASTER)
|
||||
complete(&bus->cmd_complete);
|
||||
|
||||
do_complete = true;
|
||||
break;
|
||||
case I2C_BUS_ERR_IND:
|
||||
/* Bus error */
|
||||
bus->cmd_err = -EAGAIN;
|
||||
if (bus->master_or_slave == I2C_MASTER)
|
||||
complete(&bus->cmd_complete);
|
||||
|
||||
do_complete = true;
|
||||
break;
|
||||
case I2C_WAKE_UP_IND:
|
||||
/* I2C wake up */
|
||||
@ -752,6 +747,8 @@ static void npcm_i2c_callback(struct npcm_i2c *bus,
|
||||
if (bus->slave)
|
||||
bus->master_or_slave = I2C_SLAVE;
|
||||
#endif
|
||||
if (do_complete)
|
||||
complete(&bus->cmd_complete);
|
||||
}
|
||||
|
||||
static u8 npcm_i2c_fifo_usage(struct npcm_i2c *bus)
|
||||
|
@ -341,7 +341,7 @@ int i2c_mux_add_adapter(struct i2c_mux_core *muxc,
|
||||
priv->adap.lock_ops = &i2c_parent_lock_ops;
|
||||
|
||||
/* Sanity check on class */
|
||||
if (i2c_mux_parent_classes(parent) & class)
|
||||
if (i2c_mux_parent_classes(parent) & class & ~I2C_CLASS_DEPRECATED)
|
||||
dev_err(&parent->dev,
|
||||
"Segment %d behind mux can't share classes with ancestors\n",
|
||||
chan_id);
|
||||
|
Loading…
Reference in New Issue
Block a user