mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-23 07:23:12 +02:00
soundwire fix for 6.15
- Fix for irq domain creation race in the core -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmgot3wACgkQfBQHDyUj g0fbJhAAqJWsuC1O7gz5/FN/8T2/F1YzZcJmqODEmSDHLLXdxuNVZs5pQe5YMzW4 sk0k3+1M+C1BUn6UjFN0PN8BWqt6Y65omafHT/cF6dN0bIcJm3i6uT6E94FwhV9M GA88IiH9wgWbvXhg/tXUYmsGLqAHSDAG7Y9hNNmUf6/xr1e+bNVO5MPqzuawIPhm wgaxdcU353dE5dh6vYZQQb1rhMvmqU2XYUDPr3+XSqauJjhxeFVkWIK8K1Mk5ZP/ FwG32IN4dHwlHa4zaVLIU5i7fOVW3d1QLaAV3s8Suy5Q0A9xDcLqCMsnAorK4szz k13uDALnzZEgToHLukp3jpiPK/HPF1lD77SmYCK/xoQeYKZt8L9JaG7z5PfTIM4q HL8nRWghuCvjSClcLByQipLtXQUB6SDvY9PPUftgH4/Pg7dEPi/FSH+hhXWQflGy no5++YqbPvFDnOYlN1HsQP2kPtahKxBCmiEyc7oBJnAPryorJhzZX+tMu9WNqQPK +8J7Q9/ZJfan0itynLkv1zNHoIHPIQCvNRuKhB01azPeQJVvMZBoIlTmD9HfNqJ9 LHVF4cES+u/pdKugbKgG3c+5mpv+4kDGfFVfCEMFcPjrUWYYNwGZDXfuNUiRuT5U Py5rpDxxtyqP+jfPABP+haFAuW4YmzceoNeYsXaboD6yKjYrnhI= =fOZ6 -----END PGP SIGNATURE----- Merge tag 'soundwire-6.15-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire Pull soundwire fix from Vinod Koul: - Fix for irq domain creation race in the core * tag 'soundwire-6.15-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire: soundwire: bus: Fix race on the creation of the IRQ domain
This commit is contained in:
commit
6aa6f8ca08
|
@ -122,6 +122,10 @@ int sdw_bus_master_add(struct sdw_bus *bus, struct device *parent,
|
||||||
set_bit(SDW_GROUP13_DEV_NUM, bus->assigned);
|
set_bit(SDW_GROUP13_DEV_NUM, bus->assigned);
|
||||||
set_bit(SDW_MASTER_DEV_NUM, bus->assigned);
|
set_bit(SDW_MASTER_DEV_NUM, bus->assigned);
|
||||||
|
|
||||||
|
ret = sdw_irq_create(bus, fwnode);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* SDW is an enumerable bus, but devices can be powered off. So,
|
* SDW is an enumerable bus, but devices can be powered off. So,
|
||||||
* they won't be able to report as present.
|
* they won't be able to report as present.
|
||||||
|
@ -138,6 +142,7 @@ int sdw_bus_master_add(struct sdw_bus *bus, struct device *parent,
|
||||||
|
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
dev_err(bus->dev, "Finding slaves failed:%d\n", ret);
|
dev_err(bus->dev, "Finding slaves failed:%d\n", ret);
|
||||||
|
sdw_irq_delete(bus);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -156,10 +161,6 @@ int sdw_bus_master_add(struct sdw_bus *bus, struct device *parent,
|
||||||
bus->params.curr_bank = SDW_BANK0;
|
bus->params.curr_bank = SDW_BANK0;
|
||||||
bus->params.next_bank = SDW_BANK1;
|
bus->params.next_bank = SDW_BANK1;
|
||||||
|
|
||||||
ret = sdw_irq_create(bus, fwnode);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(sdw_bus_master_add);
|
EXPORT_SYMBOL(sdw_bus_master_add);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user