uuid: Resolve colliding UUIDs via naming

In a few cases we have multiple component code trying to reuse the
same UUID value for differing purposes and with different names.  But
we can resolve that by sharing names rather than changing a permanent
UUID assignment:

* Post-name-normalization, the "dai-legacy" and "dai-zephyr"
  components share a single UUID with different names (they both used
  to be "dai"), AND with the trace context of another "dai" that has a
  different (!)  ID value in src/lib.  Fix this by using a single UUID
  for the former two that collide, and renaming the latter "dai_lib".

* A single UUID got cut/pasted between the irq drivers of mt8195, imx
  "irqsteer" and imx "generic".  Since these will never be used in a
  single image, give them all the single name "interrupt" and let them
  share the UUID value.

Signed-off-by: Andy Ross <andyross@google.com>
This commit is contained in:
Andy Ross 2024-06-25 15:20:20 -07:00 committed by Liam Girdwood
parent ad9c0e06a5
commit a3e72be7dc
6 changed files with 14 additions and 14 deletions

View File

@ -40,10 +40,10 @@ static const struct comp_driver comp_dai;
LOG_MODULE_REGISTER(dai_comp, CONFIG_SOF_LOG_LEVEL);
/* c2b00d27-ffbc-4150-a51a-245c79c5e54b */
SOF_DEFINE_UUID("dai_legacy", dai_legacy_uuid, 0xc2b00d27, 0xffbc, 0x4150,
SOF_DEFINE_UUID("dai", dai_uuid, 0xc2b00d27, 0xffbc, 0x4150,
0xa5, 0x1a, 0x24, 0x5c, 0x79, 0xc5, 0xe5, 0x4b);
DECLARE_TR_CTX(dai_comp_tr, SOF_UUID(dai_legacy_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(dai_comp_tr, SOF_UUID(dai_uuid), LOG_LEVEL_INFO);
#if CONFIG_COMP_DAI_GROUP
@ -1112,7 +1112,7 @@ static uint64_t dai_get_processed_data(struct comp_dev *dev, uint32_t stream_no,
static const struct comp_driver comp_dai = {
.type = SOF_COMP_DAI,
.uid = SOF_RT_UUID(dai_legacy_uuid),
.uid = SOF_RT_UUID(dai_uuid),
.tctx = &dai_comp_tr,
.ops = {
.create = dai_new,

View File

@ -54,10 +54,10 @@ static const struct comp_driver comp_dai;
LOG_MODULE_REGISTER(dai_comp, CONFIG_SOF_LOG_LEVEL);
/* c2b00d27-ffbc-4150-a51a-245c79c5e54b */
SOF_DEFINE_UUID("dai_zephyr", dai_zephyr_uuid, 0xc2b00d27, 0xffbc, 0x4150,
SOF_DEFINE_UUID("dai", dai_uuid, 0xc2b00d27, 0xffbc, 0x4150,
0xa5, 0x1a, 0x24, 0x5c, 0x79, 0xc5, 0xe5, 0x4b);
DECLARE_TR_CTX(dai_comp_tr, SOF_UUID(dai_zephyr_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(dai_comp_tr, SOF_UUID(dai_uuid), LOG_LEVEL_INFO);
#if CONFIG_COMP_DAI_GROUP
@ -1777,7 +1777,7 @@ int dai_zephyr_unbind(struct dai_data *dd, struct comp_dev *dev, void *data)
static const struct comp_driver comp_dai = {
.type = SOF_COMP_DAI,
.uid = SOF_RT_UUID(dai_zephyr_uuid),
.uid = SOF_RT_UUID(dai_uuid),
.tctx = &dai_comp_tr,
.ops = {
.create = dai_new,

View File

@ -21,10 +21,10 @@
LOG_MODULE_REGISTER(generic_irq_imx, CONFIG_SOF_LOG_LEVEL);
/* fa00558c-d653-4851-a03a-b21f125a9524 */
SOF_DEFINE_UUID("generic_irq_imx", generic_irq_imx_uuid, 0xfa00558c, 0xd653, 0x4851,
SOF_DEFINE_UUID("interrupt", interrupt_uuid, 0xfa00558c, 0xd653, 0x4851,
0xa0, 0x3a, 0xb2, 0x1f, 0x12, 0x5a, 0x95, 0x24);
DECLARE_TR_CTX(noirq_i_tr, SOF_UUID(generic_irq_imx_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(noirq_i_tr, SOF_UUID(interrupt_uuid), LOG_LEVEL_INFO);
/* this is needed because i.MX8 implementation assumes all boards have an irqsteer.
* Needs to be fixed.

View File

@ -22,10 +22,10 @@
LOG_MODULE_REGISTER(irq_imx, CONFIG_SOF_LOG_LEVEL);
/* fa00558c-d653-4851-a03a-b21f125a9524 */
SOF_DEFINE_UUID("irq_imx", irq_imx_uuid, 0xfa00558c, 0xd653, 0x4851,
SOF_DEFINE_UUID("interrupt", interrupt_uuid, 0xfa00558c, 0xd653, 0x4851,
0xa0, 0x3a, 0xb2, 0x1f, 0x12, 0x5a, 0x95, 0x24);
DECLARE_TR_CTX(irq_i_tr, SOF_UUID(irq_imx_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(irq_i_tr, SOF_UUID(interrupt_uuid), LOG_LEVEL_INFO);
/*
* The IRQ_STEER module takes 512 shared interrupts and delivers them

View File

@ -21,10 +21,10 @@
#include <stdint.h>
/* fa00558c-d653-4851-a03a-b21f125a9524 */
SOF_DEFINE_UUID("irq_mt8195", irq_mt8195_uuid, 0xfa00558c, 0xd653, 0x4851,
SOF_DEFINE_UUID("interrupt", interrupt_uuid, 0xfa00558c, 0xd653, 0x4851,
0xa0, 0x3a, 0xb2, 0x1f, 0x12, 0x5a, 0x95, 0x24);
DECLARE_TR_CTX(int_tr, SOF_UUID(irq_mt8195_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(int_tr, SOF_UUID(interrupt_uuid), LOG_LEVEL_INFO);
/* os timer reg value * 77ns 13M os timer
* 1 ms: 12987* 1.5ms: 19436

View File

@ -25,10 +25,10 @@
LOG_MODULE_REGISTER(dai, CONFIG_SOF_LOG_LEVEL);
/* 06711c94-d37d-4a76-b302-bbf6944fdd2b */
SOF_DEFINE_UUID("dai", dai_uuid, 0x06711c94, 0xd37d, 0x4a76,
SOF_DEFINE_UUID("dai_lib", dai_lib_uuid, 0x06711c94, 0xd37d, 0x4a76,
0xb3, 0x02, 0xbb, 0xf6, 0x94, 0x4f, 0xdd, 0x2b);
DECLARE_TR_CTX(dai_tr, SOF_UUID(dai_uuid), LOG_LEVEL_INFO);
DECLARE_TR_CTX(dai_tr, SOF_UUID(dai_lib_uuid), LOG_LEVEL_INFO);
struct dai_group_list {
struct list_item list;