)]}'
{
  "log": [
    {
      "commit": "7082da960fb1c9722efdd594dae52a2b108d5223",
      "tree": "f1485f53d8b54a2d5f3ed52d999211541d0a1639",
      "parents": [
        "a8a78063b6bb64212a038b715174203eff972b79",
        "c5e90e8844692deb7bbcd029e8b92b3a20441903"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:32:18 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:32:18 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027\n"
    },
    {
      "commit": "c5e90e8844692deb7bbcd029e8b92b3a20441903",
      "tree": "0657c0a3254ac12d65755debba8e72705b1ae1c4",
      "parents": [
        "15c0f794acc900cc71b5a54b35c864c88e4ec8bc",
        "4346d91cfa47b0d9303533edde8acd33e4b9ca40"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:19:22 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:19:22 2026 +0200"
      },
      "message": "Merge tag \u0027asoc-v7.2\u0027 of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus\n\nASoC: Updates for v7.2\n\nThere\u0027s been quite a lot of framework improvements this time around,\nthough mainly cleanups and robustness rather than user visible features.\nThe same pattern is seen with a lot of the driver work that\u0027s going on,\nthere are new features but a huge proportion of this is bug fixing and\ncleanup work.  We also have a good selectio of new device support.\n\n - Improvements to SDCA jack handling from Charles Keepax.\n - Use of device links to make suspend handling more robust from Richard\n   Fitzgerald.\n - Use of a new helper to factor out a common pattern in SoundWire\n   enmeration from Charles Keepax.\n - Slimming down of the component from Kuninori Morimoto.\n - Simplification of format auto selection from Kuninori Morimoto.\n - Lots of conversions to guard() from Bui Duc Phuc.\n - Addition of a simple-amplifier driver supporting more featureful GPIO\n   controller amplifiers than the previous basic driver from Herve\n   Codina.\n - Support for AMD ACP 7.x, Cirrus Logic CS42448/CS42888, Everest Semi\n   ES9356, Mediatek MT2701 and MT8196, Renesas RZ/G3E, Spacemit K3,\n   Texas Instruments TAC5xx2 and TAS67524.\n"
    },
    {
      "commit": "a8a78063b6bb64212a038b715174203eff972b79",
      "tree": "d3455d1e692dbb1e7a5e5aceac1ef25902440c49",
      "parents": [
        "419f8dc84429d67db48393ffe6aa420ea38064e0",
        "15c0f794acc900cc71b5a54b35c864c88e4ec8bc"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:19:11 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 20:19:11 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027\n"
    },
    {
      "commit": "15c0f794acc900cc71b5a54b35c864c88e4ec8bc",
      "tree": "30edec074b5d85855db61f7ea2cac1d8ff41b0d6",
      "parents": [
        "3a3e810e91080a5121170ee11554a55ed89a1c8b"
      ],
      "author": {
        "name": "Lianqin Hu",
        "email": "hulianqin@vivo.com",
        "time": "Mon Jun 15 12:05:01 2026 +0000"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 15:45:21 2026 +0200"
      },
      "message": "ALSA: usb-audio: Add iface reset and delay quirk for XIBERIA K03S\n\nSetting up the interface when suspended/resumeing fail on this card.\nAdding a reset and delay quirk will eliminate this problem.\n\nusb 1-1: New USB device found, idVendor\u003d36f9, idProduct\u003dc009\nusb 1-1: New USB device strings: Mfr\u003d1, Product\u003d2, SerialNumber\u003d0\nusb 1-1: Product: XIBERIA K03S\nusb 1-1: Manufacturer: Actions\nusb 1-1: usb_probe_device\n\nSigned-off-by: Lianqin Hu \u003chulianqin@vivo.com\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nLink: https://patch.msgid.link/TYUPR06MB621706287FE30F4D8EE4618BD2E62@TYUPR06MB6217.apcprd06.prod.outlook.com\n"
    },
    {
      "commit": "419f8dc84429d67db48393ffe6aa420ea38064e0",
      "tree": "29f7fd3ac88c9a9337f0c4b05810e081bb63f3c1",
      "parents": [
        "e7180ecc6fc4e0627a23c6d7a0705efaf32e1401",
        "3a3e810e91080a5121170ee11554a55ed89a1c8b"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 13:28:50 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 13:28:50 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027\n"
    },
    {
      "commit": "3a3e810e91080a5121170ee11554a55ed89a1c8b",
      "tree": "2e138d99b4cda7dd934417de087fdbd142369790",
      "parents": [
        "f61bc797ac0075dbaac5e44238674858e9dbe399"
      ],
      "author": {
        "name": "Viktor Menshin",
        "email": "ripeeerr@gmail.com",
        "time": "Mon Jun 15 18:25:15 2026 +0900"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 13:28:34 2026 +0200"
      },
      "message": "ALSA: hda/realtek: Add quirk for Lenovo Xiaoxin 14 GT\n\nThe Lenovo Xiaoxin 14 GT (Chinese market model, AMD Ryzen AI 9 365)\nproduces constant electrical hissing and crackling noise from both\ninternal speakers and 3.5mm headphone jack during audio playback.\nAudio works correctly on Windows.\n\nThe PCI SSID 17aa:3912 is not present in the quirk list. The device\nshares the same AMD platform and ALC287 codec as neighboring Lenovo\n14\" AMD models (17aa:3911, 17aa:390d), so apply the same fixup.\n\nNote: the fixup selection is based on similarity with neighboring\nmodels and has not been verified by testing a compiled kernel.\nGuidance from maintainers on the correct fixup is welcome.\n\nSigned-off-by: Viktor Menshin \u003cripeeerr@gmail.com\u003e\nLink: https://patch.msgid.link/20260615092515.1082-1-ripeeerr@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "f61bc797ac0075dbaac5e44238674858e9dbe399",
      "tree": "dcfd6ede43f6d86378968ef2728c48a1a384bd74",
      "parents": [
        "9afa4bc774d2b0d4fbebdbe7e8e8492ffef9c6e0"
      ],
      "author": {
        "name": "Colton Jones",
        "email": "cjones1308@pm.me",
        "time": "Mon Jun 15 03:36:20 2026 +0000"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 09:29:15 2026 +0200"
      },
      "message": "ALSA: hda/realtek: Add CS35L41 I2C quirk for ASUS UM3405GA\n\nThe ASUS Zenbook 14 UM3405GA uses a Realtek ALC294 codec with two\nCirrus Logic CS35L41 speaker amplifiers exposed through the CSC3551 ACPI\ndevice. The machine reports the Realtek subsystem ID 1043:19f4.\n\nWithout a PCI quirk, the codec falls back to generic pin matching and the\ninternal speakers remain silent even though PCM playback completes.\n\nAdd the UM3405GA subsystem ID and reuse the same ASUS I2C headset-mic\nfixup used by the closely related UM3406HA. That fixup configures the\nheadset microphone pin and chains to CS35L41 I2C speaker-amp binding.\n\nSigned-off-by: Colton Jones \u003ccjones1308@pm.me\u003e\nLink: https://patch.msgid.link/20260615033619.7-1-cjones1308@pm.me\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "e7180ecc6fc4e0627a23c6d7a0705efaf32e1401",
      "tree": "e8a9f62d3049b9c0382e2034a740551ebe5c42e1",
      "parents": [
        "380d45d215a6e27715135f6c568f7257f0f626b9",
        "9afa4bc774d2b0d4fbebdbe7e8e8492ffef9c6e0"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 09:28:50 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 09:28:50 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027\n"
    },
    {
      "commit": "9afa4bc774d2b0d4fbebdbe7e8e8492ffef9c6e0",
      "tree": "8b52b69a3487c8ae875361983fc5fd2acea78466",
      "parents": [
        "100407f548ca54a8c235fafba9d7c60c953c0d7e",
        "b0d1553d51c3d188baae6d77e6f3dfb415a7b623"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 09:28:24 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jun 15 09:28:30 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "380d45d215a6e27715135f6c568f7257f0f626b9",
      "tree": "e8a9f62d3049b9c0382e2034a740551ebe5c42e1",
      "parents": [
        "8f77f025e20b5c9815d4255af2b5e53f9548c839",
        "100407f548ca54a8c235fafba9d7c60c953c0d7e"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 17:32:28 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 17:32:28 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "100407f548ca54a8c235fafba9d7c60c953c0d7e",
      "tree": "3fe97b72808810b19b890a984e785f2bf483b53e",
      "parents": [
        "b113a891252c3fa4fab11ec8c2894a22ecaf278c"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 11:07:11 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 17:32:18 2026 +0200"
      },
      "message": "ALSA: timer: Fix racy timeri-\u003etimer changes with rwlock\n\nAlthough we\u0027ve covered the races around the timer object assignment\nand release for timer instances, there are still races at starting or\nstopping the timer instance.  They refer to timeri-\u003etimer without\nlock, hence they can still trigger UAFs.\n\nFor addressing it, this patch changes the existing slave_active_lock\nspinlock to timeri_lock rwlock.  It\u0027s a global rwlock applied as\nread-lock when snd_timer_start() \u0026 co are called as well as\nsnd_timeri_timer_get() is called.  In turn, the places where\ntimeri-\u003etimer is assigned or released are covered by the write-lock.\n\nThe patch replaces spinlock_irqsave with spinlock in a couple of\nspaces because they are now already protected by timeri_lock, too.\n\nReported-by: Kyle Zeng \u003ckylebot@openai.com\u003e\nLink: https://patch.msgid.link/20260614090714.773216-1-tiwai@suse.de\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "b113a891252c3fa4fab11ec8c2894a22ecaf278c",
      "tree": "30a96853e92c75721368acc345916507a3bfc517",
      "parents": [
        "e546128291f8d688dcb931827e2efd2aa6c0734d"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 11:05:05 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 17:31:54 2026 +0200"
      },
      "message": "ALSA: core: Fix unintuitive behavior of snd_power_ref_and_wait()\n\nsnd_power_ref_and_wait() takes the power refcount and doesn\u0027t leave it\nno matter whether it returns an error or not.  However, the majority\nof callers don\u0027t expect but just returns without unreferencing in the\ncaller side upon errors.\n\nFor addressing the potential refcount unbalance, rather correct the\nbehavior of snd_power_ref_wait() to unreference upon returning an\nerror.\n\nNote that the problem above is likely negligible; the function returns\nan error only when the sound card is being shutdown, hence it doesn\u0027t\nmatter about the power refcount any longer at such a state.\n\nFixes: e94fdbd7b25d (\"ALSA: control: Track in-flight control read/write/tlv accesses\")\nReported-by: WenTao Liang \u003cvulab@iscas.ac.cn\u003e\nCloses: https://lore.kernel.org/20260612022121.14329-1-vulab@iscas.ac.cn\nLink: https://patch.msgid.link/20260614090507.772540-1-tiwai@suse.de\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "8f77f025e20b5c9815d4255af2b5e53f9548c839",
      "tree": "356d0166677a40e8573c943aa27d176a75ea993c",
      "parents": [
        "0f61da59e079142b2407151d2c5c149a541afa01",
        "e546128291f8d688dcb931827e2efd2aa6c0734d"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 10:58:47 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 10:58:47 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "e546128291f8d688dcb931827e2efd2aa6c0734d",
      "tree": "3c4f1b0c93d9278bb136894fded520e93f1bf714",
      "parents": [
        "49ce92d207820f588b0406add82f053decfbe5d9"
      ],
      "author": {
        "name": "Cen Zhang",
        "email": "zzzccc427@gmail.com",
        "time": "Sun Jun 14 08:48:01 2026 +0800"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 10:57:10 2026 +0200"
      },
      "message": "ALSA: seq: avoid stale FIFO cells during resize\n\nsnd_seq_fifo_resize() still needs to publish the replacement pool\nbefore it waits for FIFO users. A blocking snd_seq_read() holds\nf-\u003euse_lock while it sleeps, so concurrent senders must be able to\nqueue to the new pool and wake that reader instead of failing against a\nclosing old pool.\n\nHowever, snd_seq_fifo_event_in() duplicates an event before it takes\nf-\u003elock, and snd_seq_read() can dequeue a cell and later call\nsnd_seq_fifo_cell_putback() if copy_to_user() or\nsnd_seq_expand_var_event() fails. If resize swaps f-\u003epool and detaches\noldhead in between, either path can relink an old-pool cell after the\nsnapshot. That stale cell sits outside the drained oldhead list, keeps\noldpool-\u003ecounter elevated, and can leave snd_seq_pool_delete() waiting\nfor the retired pool to drain.\n\nKeep the existing swap-before-wait ordering in snd_seq_fifo_resize(),\nbut reject stale cells before any FIFO relink. Revalidate event-in cells\nunder f-\u003elock and retry them against the published replacement pool, and\nfree stale putback cells instead of linking them back into the FIFO.\n\nThe buggy scenario involves two paths, with each column showing the\norder within that path:\n\nresize path:                    relink path:\n1. Allocate newpool.             1. Take f-\u003euse_lock.\n2. Swap f-\u003epool to newpool and   2. Duplicate or dequeue an old-pool\n   detach oldhead.                  cell before oldpool closes.\n3. Mark oldpool closing and      3. Reach a later relink point after\n   wait for FIFO users.             resize published newpool.\n4. Free oldhead and delete       4. Relink the old-pool cell after\n   oldpool.                         resize detached oldhead.\n                                 5. Drop f-\u003euse_lock.\n\nThe reproducer reports a resize ioctl blocked in the expected pool\nteardown path:\n\nsignal: resize iteration\u003d98 target_pool\u003d4 exceeded 250ms\n        (elapsed\u003d251ms)\ndiagnostic: resize_tid\u003d651 wchan\u003dsnd_seq_pool_done\ndiagnostic: resize_tid\u003d651 stack\u003d\n  snd_seq_pool_done+0x5b/0x140\n  snd_seq_pool_delete+0x7a/0x90\n  snd_seq_fifo_resize+0x193/0x1e0\n  snd_seq_ioctl_set_client_pool+0x214/0x260\n  snd_seq_ioctl+0x119/0x540\n  __x64_sys_ioctl+0xd1/0x120\n  do_syscall_64+0xbb/0x2f0\n  entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\nA second run with larger pools hit the same target path:\n\nsignal: resize iteration\u003d32 target_pool\u003d64 exceeded 250ms\n        (elapsed\u003d251ms)\ndiagnostic: resize_tid\u003d663 wchan\u003dsnd_seq_pool_done\ndiagnostic: resize_tid\u003d663 stack\u003d\n  snd_seq_pool_done+0x5b/0x140\n  snd_seq_pool_delete+0x7a/0x90\n  snd_seq_fifo_resize+0x193/0x1e0\n  snd_seq_ioctl_set_client_pool+0x214/0x260\n  snd_seq_ioctl+0x119/0x540\n  __x64_sys_ioctl+0xd1/0x120\n  do_syscall_64+0xbb/0x2f0\n  entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\nFixes: 2d7d54002e39 (\"ALSA: seq: Fix race during FIFO resize\")\n\nSigned-off-by: Cen Zhang \u003czzzccc427@gmail.com\u003e\nLink: https://patch.msgid.link/20260614004801.3507773-2-zzzccc427@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "49ce92d207820f588b0406add82f053decfbe5d9",
      "tree": "275a6a100d3edb2fb2c268729a0394fe92203dd9",
      "parents": [
        "9420958c51514e02bc5af5c710990766ec244856"
      ],
      "author": {
        "name": "Cen Zhang",
        "email": "zzzccc427@gmail.com",
        "time": "Sun Jun 14 08:48:00 2026 +0800"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sun Jun 14 10:54:21 2026 +0200"
      },
      "message": "ALSA: seq: oss: Serialize readq reset state with q-\u003elock\n\nsnd_seq_oss_readq_clear() resets qlen, head, and tail without\nq-\u003elock even though the normal reader and producer paths serialize the\nsame ring state under that spinlock. A reset can therefore race\nsnd_seq_oss_readq_free() or snd_seq_oss_readq_put_event() and leave\nstale records in the queue, drop freshly queued ones, or report the\nwrong readiness after wakeup. KCSAN reports a data race between\nsnd_seq_oss_readq_clear() and snd_seq_oss_readq_free().\n\nTake q-\u003elock while clearing the ring and resetting input_time. Factor\nthe enqueue logic into a caller-locked helper so\nsnd_seq_oss_readq_put_timestamp() updates its suppression state under\nthe same lock instead of racing the reset path.\n\nThe buggy scenario involves two paths, with each column showing the\norder within that path:\n\nreset path:                      locked readq updater:\n1. snd_seq_oss_reset() or        1. A reader or callback producer\n   release reaches                  takes q-\u003elock on the same queue.\n   snd_seq_oss_readq_clear().\n2. snd_seq_oss_readq_clear()     2. The updater tests or modifies\n   resets qlen, head, tail,         qlen, head, and tail.\n   and input_time.\n3. snd_seq_oss_readq_clear()     3. The updater completes its\n   wakes sleepers on                read-modify-write sequence.\n   q-\u003emidi_sleep.\n4. Without q-\u003elock, the reset    4. The resulting ring state drives\n   can overlap the locked           later reads and readiness.\n   update.\n\nKCSAN reports:\n\nBUG: KCSAN: data-race in snd_seq_oss_readq_clear /\nsnd_seq_oss_readq_free\n\nwrite to 0xffff8881069fe608 of 4 bytes by task 120516 on cpu 0:\n  snd_seq_oss_readq_free+0x6c/0x80\n  snd_seq_oss_read+0xcb/0x250\n  odev_read+0x38/0x60\n  vfs_read+0xff/0x600\n  ksys_read+0xb4/0x140\n  __x64_sys_read+0x46/0x60\n  do_syscall_64+0xbb/0x2f0\n  entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\nread to 0xffff8881069fe608 of 4 bytes by task 120517 on cpu 1:\n  snd_seq_oss_readq_clear+0x1f/0x90\n  snd_seq_oss_reset+0xa7/0xf0\n  snd_seq_oss_ioctl+0x6f6/0x7e0\n  odev_ioctl+0x56/0xc0\n  __x64_sys_ioctl+0xd1/0x120\n  do_syscall_64+0xbb/0x2f0\n  entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\nvalue changed: 0x00000001 -\u003e 0x00000000\n\nFixes: 1da177e4c3f4 (\"Linux-2.6.12-rc2\")\n\nSigned-off-by: Cen Zhang \u003czzzccc427@gmail.com\u003e\nLink: https://patch.msgid.link/20260614004801.3507773-1-zzzccc427@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "4346d91cfa47b0d9303533edde8acd33e4b9ca40",
      "tree": "9470aabfd2664f0f1aed623e8973c2bda07b9aec",
      "parents": [
        "fc408ab6e9cd76ad0c9638642d56ba05ab447d79"
      ],
      "author": {
        "name": "Rob Herring (Arm)",
        "email": "robh@kernel.org",
        "time": "Fri Jun 12 16:49:11 2026 -0500"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Sun Jun 14 01:03:38 2026 +0100"
      },
      "message": "ASoC: dt-bindings: Fix RT5677 \"realtek,gpio-config\" type\n\n\"realtek,gpio-config\" is described as six 8-bit GPIO configuration\nvalues, and the RT5677 driver stores and reads those values as bytes.\nThe binding incorrectly documented the property as a uint32 array.\n\nDocument \"realtek,gpio-config\" as a uint8-array so the generated\nschema matches the hardware definition and the existing driver helper.\n\nAssisted-by: Codex:gpt-5-5\nSigned-off-by: Rob Herring (Arm) \u003crobh@kernel.org\u003e\nReviewed-by: Krzysztof Kozlowski \u003ckrzysztof.kozlowski@oss.qualcomm.com\u003e\nLink: https://patch.msgid.link/20260612214911.1883234-1-robh@kernel.org\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "fc408ab6e9cd76ad0c9638642d56ba05ab447d79",
      "tree": "b04c1ae466531d1e1f5e836805d828367b83eb38",
      "parents": [
        "69b4141b428bcf2cf7a863950c0d6e5c5ae89ac1",
        "442cfd58e71260dcd983e393f750e36fe7ab34d0"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:58:00 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:58:00 2026 +0100"
      },
      "message": "ASoC: don\u0027t use array if single pattern\n\nKuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e says:\n\nCurrent ASoC supports snd_soc_daifmt_parse_format() which can specify DAI\nformat by \"dai-format\" property from DT.\nBut strictly speaking, it is SW settings, so doesn\u0027t match to DT\u0027s policy.\n\nCurrent ASoC is supporting auto format select via\nsnd_soc_dai_ops :: .auto_selectable_formats.\nBut the user is very few today.\n\nDT doesn\u0027t need to specify the DAI format via \"dai-format\", if both CPU\nand Codec drivers were supporting .auto_selectable_formats. It will be\nautomatically selected from .auto_selectable_formats.\n\nBut, I noticed that current auto format select method can\u0027t handle all cases.\nFor example, current .auto_selectable_formats is like below\n\n\tstatic u64 xxx_auto_formats[] \u003d {\n(A)\t\t/* First Priority */\n\t\tSND_SOC_POSSIBLE_DAIFMT_I2S\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_LEFT_J\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_NB_NF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_NB_IF\t|\t(x)\n\t\tSND_SOC_POSSIBLE_DAIFMT_IB_NF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_IB_IF,\t\t(x)\n\n\t\t/* Second Priority */\n(B)\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_A\t|\t(y)\n\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_B,\t\t(y)\n\t};\n\nIt try to find DAI format from (A) first, and next it will use (A | B).\nBut it can\u0027t handle the format if some format were independent.\nFor example, DSP_x (y) can\u0027t use with xB_IF (x), etc.\n\nSo, I would like to update the method. New method doesn\u0027t use OR.\nIt try to find DAI format from (a), next it will use (b).\n\n\tstatic u64 xxx_auto_formats[] \u003d {\n(a)\t\t/* First Priority */\n\t\tSND_SOC_POSSIBLE_DAIFMT_I2S\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_LEFT_J\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_NB_NF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_NB_IF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_IB_NF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_IB_IF,\n\n\t\t/* Second Priority */\n(b)\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_A\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_B\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_NB_NF\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_IB_NF,\n\t};\n\nSwitch old method to new method, Current auto select user need to update\n.auto_selectable_formats. Fortunately, current few users doesn\u0027t have\nabove limitation. update (A)(B) to (a)(b) style is possible.\n\n\ta \u003d A\n\tb \u003d A | B\n\nI would like to update method, and add .auto_selectable_formats\nsupport on all drivers.\n\nOne note is that auto select might not find best format on some CPU/Codec\ncombination. So \"dai-format\" is necessary anyway.\n\nAnd, there haven\u0027t been any big problems on .auto_selectable_formats,\nbecause there were few users.\nBut if all drivers try to use this, it cannot be denied that they may\nencounter unknown problems... In such case, \"dai-format\" can help, though.\n\nLink: https://patch.msgid.link/87v7bs36m0.wl-kuninori.morimoto.gx@renesas.com\n"
    },
    {
      "commit": "442cfd58e71260dcd983e393f750e36fe7ab34d0",
      "tree": "297d5a6e89030a579c80b7751b50ca7783050761",
      "parents": [
        "c6b09cda390496bcc7bbbc4ec7eec26cf43d3f97"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:41 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:59 2026 +0100"
      },
      "message": "ASoC: audio-graph-card2: recommend to use auto select DAI format\n\n\"Simple Audio Card\", \"Audio Graph Card\", \"Audio Graph Card2\" are\npossible to set DAI format via DT.\n\nOTOH, ASoC is supporting .auto_selectable_formats to select DAI\nformat automatically. Let\u0027s recommend to use it on \"Audio Graph Card2\".\nOne note is that it keeps supporting DAI format setting via DT.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87ik7s36k2.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "c6b09cda390496bcc7bbbc4ec7eec26cf43d3f97",
      "tree": "a354eb94fb734f31ed09bedc3d056f51a411b0fa",
      "parents": [
        "97c7d3d20348b480a0bd714fc152768a08e12696"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:35 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:58 2026 +0100"
      },
      "message": "ASoC: update auto format selection method\n\nCurrent DAI supports auto format selection. It allow to have array like\nbelow.\n\n(X)\tstatic u64 xxx_auto_formats[] \u003d {\n(A)\t\t/* First Priority */\n\t\tSND_SOC_POSSIBLE_DAIFMT_I2S\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_LEFT_J,\n\n\t\t/* Second Priority */\n(B)\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_A\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_B,\n\t};\n\nIt try to find available format from I2S/LEFT_J first (A).\nThen, try to find from I2S/LEFT_J/DSP_A/DSP_B if couldn\u0027t find (A)+(B).\n(OR:ed)\n\nIn this method, it can\u0027t handle if there is format combination.\nFor example, some driver has pattern.\n\nPattern1\n\tI2S/RIFHT_J/LEFT_J (FORMAT) and NB_NF/IB_IF/IB_NF/NB_IF (INV)_\nPattern2\n\tDSP_A/DSP_B        (FORMAT) and NB_NF/      IB_NF\n\nBecause it will try to OR Pattern1 and Pattern2, un-supported\npattern might be selected.\n\nThis patch update method not to use OR, and assumes full format array.\nAbove sample (X) need to be\n\n\tstatic u64 xxx_auto_formats[] \u003d {\n\t\t/* First Priority */\n\t\tSND_SOC_POSSIBLE_DAIFMT_I2S\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_LEFT_J,\n\n\t\t/* Second Priority */\n\t\tSND_SOC_POSSIBLE_DAIFMT_I2S\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_LEFT_J\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_A\t|\n\t\tSND_SOC_POSSIBLE_DAIFMT_DSP_B,\n\t};\n\nNote: It doesn\u0027t support Multi CPU/Codec for now\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87jys836k8.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "97c7d3d20348b480a0bd714fc152768a08e12696",
      "tree": "c394e2c268743da4c2531d5ee64d346716925cb9",
      "parents": [
        "06449c0c47b190d75ac0185cdc5e827d8deee13e"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:28 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:57 2026 +0100"
      },
      "message": "ASoC: renesas: rcar: update auto select format\n\nCurrent auto select format start with the highest priority format and\ngradually add lower priority formats one by one, and search matched\nformat. Like A+X -\u003e A+B+X -\u003e A+B+C+X+Y... (a)\n\nBut in this method, we can\u0027t handle format if HW has some kind of\npatterns, like A+X or B+Y etc (b).\n\nCurrent drivers are using (a) style, this patch switch to use (b) style.\nThis is needed before update auto select format method.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87ldco36kf.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "06449c0c47b190d75ac0185cdc5e827d8deee13e",
      "tree": "f6239e669871208c35221376ee8b84d50d35c157",
      "parents": [
        "23ad6257cea2d64c37da6d6973ccd7981bf566e9"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:22 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:56 2026 +0100"
      },
      "message": "ASoC: codecs: pcm3168a: update auto select format\n\nCurrent auto select format start with the highest priority format and\ngradually add lower priority formats one by one, and search matched\nformat. Like A+X -\u003e A+B+X -\u003e A+B+C+X+Y... (a)\n\nBut in this method, we can\u0027t handle format if HW has some kind of\npatterns, like A+X or B+Y etc (b).\n\nCurrent drivers are using (a) style, this patch switch to use (b) style.\nThis is needed before update auto select format method.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87mrx436kl.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "23ad6257cea2d64c37da6d6973ccd7981bf566e9",
      "tree": "41e14a20c236167c06195175d56af6d70d734f6a",
      "parents": [
        "ca446ac6b38bc311d400db7049ada9e9cf1cd109"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:18 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:55 2026 +0100"
      },
      "message": "ASoC: codecs: ak4619: update auto select format\n\nCurrent auto select format start with the highest priority format and\ngradually add lower priority formats one by one, and search matched\nformat. Like A+X -\u003e A+B+X -\u003e A+B+C+X+Y... (a)\n\nBut in this method, we can\u0027t handle format if HW has some kind of\npatterns, like A+X or B+Y etc (b).\n\nCurrent drivers are using (a) style, this patch switch to use (b) style.\nThis is needed before update auto select format method.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87o6hk36kp.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "ca446ac6b38bc311d400db7049ada9e9cf1cd109",
      "tree": "a2b2285ea762fa1c9c9adbb038d1dfb86c7f04d9",
      "parents": [
        "9b5101c373081750523fe9647bbff18f814c6cbe"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:14 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:54 2026 +0100"
      },
      "message": "ASoC: codecs: peb2466: don\u0027t use array if single pattern\n\nBecause it is confusable during debugging ASoC FW update, tidyup\nauto format style not to use array if single pattern case.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87pl2036kt.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "9b5101c373081750523fe9647bbff18f814c6cbe",
      "tree": "ed33629c2604789a4966760e7b88f8488673c5f7",
      "parents": [
        "da2d7ecd6b32dd753089b4629326019791d052e9"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:23:09 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:54 2026 +0100"
      },
      "message": "ASoC: codecs: idt821034: don\u0027t use array if single pattern\n\nBecause it is confusable during debugging ASoC FW update, tidyup\nauto format style not to use array if single pattern case.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87qzmg36ky.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "da2d7ecd6b32dd753089b4629326019791d052e9",
      "tree": "86ed9607da1fc763b762027161077d9e5cbab761",
      "parents": [
        "04c93ea9ce1421a6778bcda21856599f4821e737"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:22:57 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:53 2026 +0100"
      },
      "message": "ASoC: codecs: framer-codec: don\u0027t use array if single pattern\n\nBecause it is confusable during debugging ASoC FW update, tidyup\nauto format style not to use array if single pattern case.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87se6w36la.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "04c93ea9ce1421a6778bcda21856599f4821e737",
      "tree": "a612c225d7134575ff1af3cfdcb74df43848f01b",
      "parents": [
        "da6899fc88e4105d896798c630e7ef740ec5822a"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Tue Jun 09 00:22:50 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:57:52 2026 +0100"
      },
      "message": "ASoC: remove SND_SOC_POSSIBLE_xBx_xFx\n\nClock provider / consumer selection is based on board, we can\u0027t select\nautomatically from software. Let\u0027s remove SND_SOC_POSSIBLE_xBx_xFx.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87tsrc36li.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "69b4141b428bcf2cf7a863950c0d6e5c5ae89ac1",
      "tree": "5aa27f47b0cdb5e5d4fb31d71a045bc689956b11",
      "parents": [
        "7165d138c6e71a6b7845eff83ca8be8e129f8bff"
      ],
      "author": {
        "name": "Guangshuo Li",
        "email": "lgs201920130244@gmail.com",
        "time": "Thu Jun 04 20:55:20 2026 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 18:26:05 2026 +0100"
      },
      "message": "ASoC: adau1372: Clear PLL_EN on failed PLL lock without reset GPIO\n\nThe PLL lock failure path in adau1372_set_power() unwinds by putting\nthe regmap back in cache-only mode, asserting the optional power-down\nGPIO and disabling mclk.\n\nadau1372_enable_pll() enables CLK_CTRL.PLL_EN before polling the PLL\nlock bit. If the lock fails on a board without a power-down GPIO, the\nerror path disables mclk and returns an error, but leaves PLL_EN set in\nthe hardware register. The normal power-off path already handles the\nno-GPIO case by explicitly clearing PLL_EN.\n\nMirror that cleanup in the PLL lock failure path and clear PLL_EN while\nthe regmap is still live, before switching it back to cache-only mode.\n\nFixes: bfe6a264effc (\"ASoC: adau1372: Fix clock leak on PLL lock failure\")\nSigned-off-by: Guangshuo Li \u003clgs201920130244@gmail.com\u003e\nLink: https://patch.msgid.link/20260604125520.1428905-1-lgs201920130244@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "0f61da59e079142b2407151d2c5c149a541afa01",
      "tree": "a195ad1f8f2a67b9fefb68daf59ef17a1ac949a6",
      "parents": [
        "dca8a11e5d8c201eceb6c870af5f2dba64491b82",
        "9420958c51514e02bc5af5c710990766ec244856"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 17:30:13 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 17:30:13 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "9420958c51514e02bc5af5c710990766ec244856",
      "tree": "3d98d1eb2c40ffc43b5caae27697c19b920c96e6",
      "parents": [
        "0ec17ee704615125c0b6e100c38129393a346bcc"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 13:33:45 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 17:30:08 2026 +0200"
      },
      "message": "ALSA: seq: Don\u0027t re-bounce the error event\n\nThe error bouncing may fail again, and we have no check for\nre-bouncing.  For avoiding the loop, add the event type check at\nbouncing, and stop re-bouncing if it\u0027s already a bounce error.\n\nLink: https://patch.msgid.link/20260612113350.407465-1-tiwai@suse.de\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "7165d138c6e71a6b7845eff83ca8be8e129f8bff",
      "tree": "f6b189a16f1d02201926ddeea2391065fb670254",
      "parents": [
        "c429fbea6174a7dd40c4215288589a50e8a33ff6",
        "9741aad24432ae2cef0fe3d5c2c2d1c2ecc803f2"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:12:13 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:12:13 2026 +0100"
      },
      "message": "ASoC: use scoped OF node handling in manual cleanup paths\n\nCássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e says:\n\nSome ASoC drivers still manually release child OF nodes\nwhen leaving child-node iteration loops early.\n\nConvert these focused cases to scoped OF node cleanup\nso early returns and normal loop exits keep the same node\nlifetime handling without explicit of_node_put() calls.\n\n- Patch 1 updates qcom_snd_parse_of() to use\n  for_each_available_child_of_node_scoped() for link nodes and\n  __free(device_node) for temporary cpu/platform/codec child nodes.\n- Patch 2 updates fsl_qmc_audio to use\n  for_each_available_child_of_node_scoped() for DAI child-node parsing.\n- Patch 3 updates cygnus-ssp to use\n  for_each_available_child_of_node_scoped() for SSP child-node parsing.\n\nLink: https://patch.msgid.link/20260608-asoc-of-node-scoped-cleanup-v1-0-9e3ac518dc2e@gmail.com\n"
    },
    {
      "commit": "9741aad24432ae2cef0fe3d5c2c2d1c2ecc803f2",
      "tree": "cb6f4d935a01f7a4702a5c0010a0dde92f2f8b67",
      "parents": [
        "065df02692f06d38e032edd5cd2d554b81c8b48e"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Mon Jun 08 10:39:13 2026 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:12:11 2026 +0100"
      },
      "message": "ASoC: bcm: cygnus: use scoped child node loop\n\ncygnus_ssp_probe() manually puts the current child node before returning\nfrom the child parsing loop on error.\n\nUse for_each_available_child_of_node_scoped() so the current child node is\nreleased automatically on early return and normal loop exit.\n\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260608-asoc-of-node-scoped-cleanup-v1-3-9e3ac518dc2e@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "065df02692f06d38e032edd5cd2d554b81c8b48e",
      "tree": "ec7d9941af061a2b6740d4499a6121935d59a89f",
      "parents": [
        "22aed576add03c2f8083c1122087fbe4d18e4bf4"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Mon Jun 08 10:39:12 2026 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:12:10 2026 +0100"
      },
      "message": "ASoC: fsl: fsl_qmc_audio: use scoped child node loop\n\nqmc_audio_probe() manually puts the current child node before returning\nfrom the DAI parsing loop on error.\n\nUse for_each_available_child_of_node_scoped() so the current child node is\nreleased automatically on early return and normal loop exit.\n\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260608-asoc-of-node-scoped-cleanup-v1-2-9e3ac518dc2e@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "22aed576add03c2f8083c1122087fbe4d18e4bf4",
      "tree": "87095ac7685534c2e9448ef096303766576784e8",
      "parents": [
        "4549871118cf616eecdd2d939f78e3b9e1dddc48"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Mon Jun 08 10:39:11 2026 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:12:09 2026 +0100"
      },
      "message": "ASoC: qcom: common: use scoped OF node handling\n\nqcom_snd_parse_of() manually drops the link child node and the\ncpu/platform/codec child nodes on error paths and at the end of each\niteration.\n\nUse for_each_available_child_of_node_scoped() for the link node and\n__free(device_node) for the named child nodes. This keeps the existing\nownership rules for DAI component phandle references, while removing the\nmanual cleanup labels from a path that has previously needed OF refcount\nfixes.\n\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260608-asoc-of-node-scoped-cleanup-v1-1-9e3ac518dc2e@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "c429fbea6174a7dd40c4215288589a50e8a33ff6",
      "tree": "df5c5dd3225cc8b4dc4711609b4c1c27d8567c91",
      "parents": [
        "bebfc08c1b86f0b6a848e16fa4ccdf80fc21b01e"
      ],
      "author": {
        "name": "Chia-Lin Kao (AceLan)",
        "email": "acelan.kao@canonical.com",
        "time": "Wed Jun 10 12:17:53 2026 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:57 2026 +0100"
      },
      "message": "ASoC: sdw_utils: fix missing component_name for cs42l43 part_id 0x2A3B\n\ncommit 87a3f5c8ac20 (\"ASoC: sdw_utils: cs42l43: allow spk component names\nto be combined\") moved spk:cs42l43-spk generation from rtd_init() into\nthe asoc_sdw_rtd_init() generic path by adding component_name to\ncodec_info_list entries. However, only the 0x4243 cs42l43 entry was\nupdated; the 0x2A3B entry (vendor_id 0x01fa, Cirrus Logic cs42l43 with\nsidecar bridge) was missed.\n\nWithout component_name on the 0x2A3B dp6 DAI, asoc_sdw_rtd_init() never\naccumulates spk_components and never appends \u0027spk:cs42l43-spk\u0027 (or its\nsidecar alias \u0027spk:cs35l56-bridge\u0027) to card-\u003ecomponents. The sof-soundwire\nUCM regex \u0027 spk:([a-z0-9]+...)\u0027 then fails to match, causing WirePlumber\nto mark all HiFi profiles as unavailable\u003dno and fall back to the Off\nprofile — resulting in Dummy Output in GNOME.\n\nThe existing sidecar redirect in asoc_sdw_rtd_init() already handles the\nSOC_SDW_SIDECAR_AMPS case: when component_name is \u0027cs42l43-spk\u0027 and\nsidecar amps are active, it substitutes \u0027cs35l56-bridge\u0027 into\ncard-\u003ecomponents, which matches the existing cs35l56-bridge.conf UCM file.\n\nFixes: 87a3f5c8ac20 (\"ASoC: sdw_utils: cs42l43: allow spk component names to be combined\")\nSigned-off-by: Chia-Lin Kao (AceLan) \u003cacelan.kao@canonical.com\u003e\nLink: https://patch.msgid.link/20260610041753.1151088-1-acelan.kao@canonical.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "bebfc08c1b86f0b6a848e16fa4ccdf80fc21b01e",
      "tree": "67c7955f7e5a8ebb0791d569162eff057ea75a57",
      "parents": [
        "da6899fc88e4105d896798c630e7ef740ec5822a",
        "c1530e7b8c035e6a80d193e9f6de37ed49f10614"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:06 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:06 2026 +0100"
      },
      "message": "ASoC: mediatek: tidyup details\n\nKuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e says:\n\nThese are tidyup details of mediatek drivers. Basically there is no\nfunctional change. This is prepare for later Card capsuling.\nThis makes code review easy when Card capsuling happen.\n\nKuninori Morimoto (6):\n\nLink: https://patch.msgid.link/87ik7tesdw.wl-kuninori.morimoto.gx@renesas.com\n"
    },
    {
      "commit": "c1530e7b8c035e6a80d193e9f6de37ed49f10614",
      "tree": "4f835bce41810c6ddc735ada04b1b9dc51d9046b",
      "parents": [
        "fd83ba0c7de698219eea6b4107d8c3fba86daf13"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:25:03 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:04 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8365_mt6357: use *dev in mt8365_mt6357_gpio_probe()\n\nuse *dev, instead of card-\u003edev.\nNo functional change, but is preparation for cleanup driver.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87a4t5escw.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "fd83ba0c7de698219eea6b4107d8c3fba86daf13",
      "tree": "5b16a804a6c43bf4ab9df1559070cf3e1a477385",
      "parents": [
        "e611c2ccf75f7c4c96b95084d2544f0ae23fd753"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:24:59 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:03 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8186-mt6366: use *dev in mt8186_mt6366_soc_card_probe()\n\nuse *dev, instead of card-\u003edev.\nNo functional change, but is preparation for cleanup driver.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87bjdlesd0.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "e611c2ccf75f7c4c96b95084d2544f0ae23fd753",
      "tree": "02d94af6fc9285fa8f60e1f7e98a82c902390d05",
      "parents": [
        "7042c5dc12cae829238cd5fb0a7c372e8fb39cba"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:24:55 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:02 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8186-mt6366: tidyup mt8186_mt6366_card_set_be_link()\n\nmt8186_mt6366_card_set_be_link() requests *card, but necessary is\ncard-\u003edev. Tidyup it.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87cxy1esd4.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "7042c5dc12cae829238cd5fb0a7c372e8fb39cba",
      "tree": "acb6241de9287a67b5afbf3d7f936b45072757c9",
      "parents": [
        "1ddd7dcbc858a580449e8afa602df63456ad4c6b"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:24:52 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:01 2026 +0100"
      },
      "message": "ASoC: mediatek: mtk-soundcard-driver: tidyup set_dailink_daifmt()\n\ncard is not used. Remove it.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87ecihesd8.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "1ddd7dcbc858a580449e8afa602df63456ad4c6b",
      "tree": "57de9fa6bfcd1b8630022ac3cdb78a1ee3e3ce08",
      "parents": [
        "d7d3dc1dd345b505d2f02175464ff0b12e5ea37e"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:24:48 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:07:00 2026 +0100"
      },
      "message": "ASoC: mediatek: mtk-soundcard-driver: tidyup set_card_codec_info()\n\nset_card_codec_info() requests *card, but necessary is card-\u003edev.\nTidyup it.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87fr2xesdc.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "d7d3dc1dd345b505d2f02175464ff0b12e5ea37e",
      "tree": "16c01b6051d00bb9e67d3daeedc60d06b9afdfec",
      "parents": [
        "38b75d81a066789dc98404c1387731074c103119"
      ],
      "author": {
        "name": "Kuninori Morimoto",
        "email": "kuninori.morimoto.gx@renesas.com",
        "time": "Mon Jun 08 01:24:43 2026 +0000"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 16:06:59 2026 +0100"
      },
      "message": "ASoC: mediatek: cleanup mtk_sof_dailink_parse_of() param\n\nmtk_sof_dailink_parse_of() is using unnecessarily complicated parameters.\nLet\u0027s cleanup it.\n\nSigned-off-by: Kuninori Morimoto \u003ckuninori.morimoto.gx@renesas.com\u003e\nLink: https://patch.msgid.link/87h5ndesdg.wl-kuninori.morimoto.gx@renesas.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "da6899fc88e4105d896798c630e7ef740ec5822a",
      "tree": "67373acdf425d09fda58224b3a13c07654e56ecd",
      "parents": [
        "d46f9f23897261da53ffbeb89d48a13982ba7d28"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Fri Jun 12 19:31:50 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Fri Jun 12 14:20:37 2026 +0100"
      },
      "message": "ASoC: hisilicon: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260612123150.74696-1-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "dca8a11e5d8c201eceb6c870af5f2dba64491b82",
      "tree": "d864846be1c8153d4a1aee3387e74c8329456e7e",
      "parents": [
        "1c77374b169a7e1cd2ac29e2897bd64328e7c580",
        "0ec17ee704615125c0b6e100c38129393a346bcc"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 14:20:58 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 14:20:58 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "0ec17ee704615125c0b6e100c38129393a346bcc",
      "tree": "c6956543c68bcbfd638c9c41832e8e1da2515c80",
      "parents": [
        "efc86691e4d8083d9e380ea95042c2cf679f65fd"
      ],
      "author": {
        "name": "Cameron Graham",
        "email": "cam.graham@gmail.com",
        "time": "Fri Jun 12 21:46:01 2026 +1200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 14:20:38 2026 +0200"
      },
      "message": "ALSA: hda/hdmi: Add force-connect quirk for HP EliteDesk 800 G5 Mini\n\nThe HP EliteDesk 800 G5 Mini (PCI subsystem 103c:8595) uses\nCannon Lake PCH cAVS HDA with DisplayPort audio pins 0x05 and\n0x06 set to AC_JACK_PORT_NONE (N/A) in BIOS defaults, causing\nhdmi_add_pin() to skip them and the DP audio device to not\nappear in ALSA.\n\nAdd the board to the existing force_connect_list alongside the\nsimilar HP EliteDesk 800 G4 entries.\n\nSigned-off-by: Cameron Graham \u003ccam.graham@gmail.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nLink: https://patch.msgid.link/20260612094601.1209845-1-cam.graham@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "1c77374b169a7e1cd2ac29e2897bd64328e7c580",
      "tree": "54bac702fcda756c521eb22388866c987d322e1a",
      "parents": [
        "7a1022cd9b36a6edb2f6e510934fa4e6a70db6e5",
        "efc86691e4d8083d9e380ea95042c2cf679f65fd"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 13:34:07 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 13:34:07 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "efc86691e4d8083d9e380ea95042c2cf679f65fd",
      "tree": "06e7eda246b92a98fcd00cc0142fdd81507dbeae",
      "parents": [
        "e76296d137944be2e9f25abef9514aca98b4ca79"
      ],
      "author": {
        "name": "HanQuan",
        "email": "eilaimemedsnaimel@gmail.com",
        "time": "Fri Jun 12 10:32:22 2026 +0000"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 13:26:31 2026 +0200"
      },
      "message": "ALSA: seq: Fix kernel heap address leak in bounce_error_event()\n\nThe comment above bounce_error_event() documents that user clients\nshould receive SNDRV_SEQ_EVENT_BOUNCE with the original event embedded\nas variable-length data, while kernel clients should receive\nSNDRV_SEQ_EVENT_KERNEL_ERROR with a quoted kernel pointer.\n\nHowever, the implementation unconditionally uses\nSNDRV_SEQ_EVENT_KERNEL_ERROR with data.quote.event set to the raw\nstruct snd_seq_event pointer for all clients.  When a bounce error\nevent is delivered to a USER_CLIENT via snd_seq_read(), the kernel\nheap address in data.quote.event is exposed to userspace through\ncopy_to_user() in the fixed-length branch.\n\nThis is a distinct leak path from the one addressed by commit\n705dd6dcbc0e (\"ALSA: seq: Clear variable event pointer on read\"),\nwhich sanitizes data.ext.ptr in the variable-length branch of\nsnd_seq_read().  The bounce_error_event() leak uses fixed-length\nevents that take the else branch where no sanitization occurs.\n\nDifferentiate the bounce event by client type.  For USER_CLIENT,\nsend SNDRV_SEQ_EVENT_BOUNCE with SNDRV_SEQ_EVENT_LENGTH_VARIABLE\nand data.ext pointing to the original event.  The variable-length\npath in snd_seq_event_dup() copies the event data into chained\ncells, and snd_seq_expand_var_event() copies only the content --\nnever the pointer -- to userspace.  For KERNEL_CLIENT, keep the\nexisting SNDRV_SEQ_EVENT_KERNEL_ERROR behavior with the quoted\npointer.\n\nFixes: 1da177e4c3f4 (\"Linux-2.6.12-rc2\")\nSigned-off-by: HanQuan \u003ceilaimemedsnaimel@gmail.com\u003e\nLink: https://patch.msgid.link/20260612103222.2528305-1-eilaimemedsnaimel@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "7a1022cd9b36a6edb2f6e510934fa4e6a70db6e5",
      "tree": "8d0a3eeb4142574823236142eb01193f501ca7f3",
      "parents": [
        "0f6f60115bfc536c1935d3d0da66cf1d5c7d6055",
        "e76296d137944be2e9f25abef9514aca98b4ca79"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 11:08:08 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 11:08:08 2026 +0200"
      },
      "message": "Merge branch \u0027for-next\u0027\n"
    },
    {
      "commit": "e76296d137944be2e9f25abef9514aca98b4ca79",
      "tree": "cc7120b434f2235c4bf7e06a9e68f81c8c8f410b",
      "parents": [
        "2773023abb381e36ce02d364022d901f6f7a416d"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Fri Jun 12 00:43:55 2026 -0300"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 11:07:34 2026 +0200"
      },
      "message": "ALSA: pcxhr: Share PLL frequency register calculation\n\nThe PCXHR and HR222 clock paths duplicate the PLL divider calculation and\nregister encoding. The HR222 variant extends the same format with an\nadditional range for rates above those supported by the older boards.\n\nMove the complete encoding into pcxhr_pll_freq_register() and pass each\nhardware path its existing maximum frequency. The additional encoding\nbranch is unreachable with the older 110 kHz limit, so this preserves both\npaths\u0027 accepted ranges and generated register values while removing the\nduplicate implementation and its long-standing TODO.\n\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260612-alsa-pcxhr-pll-helper-v1-1-c84ae2bd2e9b@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "2773023abb381e36ce02d364022d901f6f7a416d",
      "tree": "5e2d14e167bdf3c7c6ad164aa47d955a47ce9eed",
      "parents": [
        "ab8f7ffd63d5074c865935ad3720f0d995d2160f"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Thu Jun 11 10:57:22 2026 -0300"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 12 11:01:47 2026 +0200"
      },
      "message": "ALSA: usb-audio: qcom: Guard sideband endpoint removal\n\nqmi_stop_session() conditionally looks up the cached data and sync\nendpoints, but removes each endpoint unconditionally.\n\nThe data endpoint is always present for an active offload stream, while\nthe sync endpoint is optional. When no sync endpoint exists, ep still\nrefers to the data endpoint and the code attempts to remove that endpoint\na second time. The current sideband implementation rejects the duplicate\nremoval, but the teardown path should not pass an unrelated endpoint for\nan absent sync endpoint.\n\nOnly look up and remove an endpoint when its cached pipe exists, check the\nlookup result, and clear the cached pipe after handling it. This matches\nthe normal stream-disable path.\n\nFixes: 326bbc348298 (\"ALSA: usb-audio: qcom: Introduce QC USB SND offloading support\")\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260611-alsa-usb-qcom-guard-sideband-endpoint-removal-v1-1-00e73787c156@gmail.com\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "d46f9f23897261da53ffbeb89d48a13982ba7d28",
      "tree": "2ce229a7bfa783067d79d7d24dab4733f55ba843",
      "parents": [
        "f07dde7074252653a17905b45bf92150029a47ae"
      ],
      "author": {
        "name": "Zhao Dongdong",
        "email": "zhaodongdong@kylinos.cn",
        "time": "Wed Jun 10 15:20:43 2026 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 21:41:33 2026 +0100"
      },
      "message": "ASoC: SOF: topology: fix memory leak in snd_sof_load_topology\n\nWhen the topology filename contains \"dummy\" and tplg_cnt is 0, the\nfunction returns -EINVAL directly without freeing the tplg_files\nallocated by kcalloc() at line 2497. This leaks memory on every\nsuch topology load attempt.\n\nFix this by setting ret \u003d -EINVAL and jumping to the out: label,\nwhich already handles the kfree(tplg_files) cleanup.\n\nFixes: 99c159279c6d (\"ASoC: SOF: don\u0027t check the existence of dummy topology\")\nCc: stable@vger.kernel.org\nSigned-off-by: Zhao Dongdong \u003czhaodongdong@kylinos.cn\u003e\nAcked-by: Peter Ujfalusi \u003cpeter.ujfalusi@linux.intel.com\u003e\nLink: https://patch.msgid.link/tencent_3EED6D778DC52C3703A2D1EE8119372E8E08@qq.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "f07dde7074252653a17905b45bf92150029a47ae",
      "tree": "223d1adfeaac51844965a64050148d39bd49e6be",
      "parents": [
        "5542791d509d07d5e2e9d089f6e0b805c755eee8",
        "62bde3771c3b83587a4549c92111d141954806c4"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:21 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:21 2026 +0100"
      },
      "message": "ASoC: mediatek: Use guard() for mutex \u0026 spin locks\n\nbui duc phuc \u003cphucduc.bui@gmail.com\u003e says:\n\nThis series converts mutex and spinlock handling in Mediatek ASoC drivers\nto use guard() helpers.\n\nMost patches are straightforward conversions to guard() helpers with no\nfunctional change intended.\n\nOne exception is mt8192-afe-gpio, where the mutex release point moves from\nimmediately before dev_warn() to scope exit. However, the affected path\nonly emits a warning and immediately returns -EINVAL, without any further\nprocessing.\n\nCompile-tested only.\n\nLink: https://patch.msgid.link/20260610102021.83273-1-phucduc.bui@gmail.com\n"
    },
    {
      "commit": "62bde3771c3b83587a4549c92111d141954806c4",
      "tree": "3e5bb8a992654143f1bd2316aff698c58756f2b8",
      "parents": [
        "754c2fbf8bbc2d76006fc0f69eeee956c262aeed"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:21 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:20 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8195: mt8365-dai-i2s: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-11-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "754c2fbf8bbc2d76006fc0f69eeee956c262aeed",
      "tree": "2a076af4ad7e9add469853015fad3632b3eb0b92",
      "parents": [
        "befae7299ab468853afc9b8315334dcecdaa38b5"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:20 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:19 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8195: mt8365-dai-adda: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-10-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "befae7299ab468853afc9b8315334dcecdaa38b5",
      "tree": "640a353fbeb490b268b4a60bb5751feaabdf3f53",
      "parents": [
        "a57e39c7ff0384166fd915c64587ff2c6ebb4d38"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:19 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:19 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8195: mt8365-afe-clk: Use guard() for mutex \u0026 spin locks\n\nClean up the code using guard() for mutex \u0026 spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-9-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "a57e39c7ff0384166fd915c64587ff2c6ebb4d38",
      "tree": "4f0c4a82c02977f5c75a265bdb3ed3bcd3ca373a",
      "parents": [
        "a9f8d09ab10916696768da2454a4b09ef38ecc94"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:18 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:18 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8195: mt8195-dai-etdm: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-8-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "a9f8d09ab10916696768da2454a4b09ef38ecc94",
      "tree": "63b4602159c0168faf63fcbe22b747a45dbf2ea1",
      "parents": [
        "14edf39daefbf7aa689ea2bb8811a85c498e0ff6"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:17 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:17 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8195: mt8195-afe-clk: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-7-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "14edf39daefbf7aa689ea2bb8811a85c498e0ff6",
      "tree": "6be536b224442a0f93492d6be7d4d1ec2ea941eb",
      "parents": [
        "cc29c31e87fccefefe744017368dd7a3d2f8bd5f"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:16 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:16 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8192: mt8192-afe-gpio: Use guard() for mutex locks\n\nConvert the explicit mutex_lock()/mutex_unlock() pair to guard(mutex)\nto simplify the locking logic and automatically release the mutex on\nall exit paths.\n\nThis changes the mutex release point from immediately before dev_warn()\nto automatic cleanup at scope exit. However, the affected path only emits\na warning and immediately returns -EINVAL, without any further processing.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-6-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "cc29c31e87fccefefe744017368dd7a3d2f8bd5f",
      "tree": "0bd44b32b3349709add86bb78ac4d912daf0f0cb",
      "parents": [
        "1e9f4587c873bb0ccb81b99f0b346951c5565086"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:15 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:15 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8188: mt8188-afe-clk: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-5-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "1e9f4587c873bb0ccb81b99f0b346951c5565086",
      "tree": "75aa169b4f6f0ae9e9ea9415dae622d2bec56cca",
      "parents": [
        "c69724b714c5e2d32454235901f3a21cefcf4648"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:14 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:14 2026 +0100"
      },
      "message": "ASoC: mediatek: mt8186: mt8186-afe-gpio: Use guard() for mutex locks\n\nClean up the code using guard() for mutex locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-4-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "c69724b714c5e2d32454235901f3a21cefcf4648",
      "tree": "964de6bef391c9eebfe7852c0aa273832a028029",
      "parents": [
        "9475859429e4d8957e8050b1156af6f88efa5ed1"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:13 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:14 2026 +0100"
      },
      "message": "ASoC: mediatek: common: mtk-btcvsd: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-3-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "9475859429e4d8957e8050b1156af6f88efa5ed1",
      "tree": "0f24f331b5906c1b3778f1b3a8178e112e6c550d",
      "parents": [
        "310628484ef06f95c5589374fade917a5689787b"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:20:12 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:59:13 2026 +0100"
      },
      "message": "ASoC: mediatek: common: mtk-afe-fe-dai: Use guard() for mutex locks\n\nClean up the code using guard() for mutex locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610102021.83273-2-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "5542791d509d07d5e2e9d089f6e0b805c755eee8",
      "tree": "3a337c0749fa047935e142938cba1285e9e9216c",
      "parents": [
        "4263ed78c5270d7bb31677f554745ba0112c0e7c",
        "f7fe9f7073602958d6b63cc58a144094533377fa"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:50:31 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:50:31 2026 +0100"
      },
      "message": "ASoC: rockchip: Use guard() for spin locks\n\nbui duc phuc \u003cphucduc.bui@gmail.com\u003e says:\n\nThis series converts spinlock handling in the Rockchip sound drivers\nto use guard() helpers.\nThe changes are code cleanup only and should have no functional impact.\n\nLink: https://patch.msgid.link/20260604033554.96996-1-phucduc.bui@gmail.com\n"
    },
    {
      "commit": "f7fe9f7073602958d6b63cc58a144094533377fa",
      "tree": "47199c12776b42e5ded5d1c1cadcf22d1135e0a7",
      "parents": [
        "ec22437fc41aa60a0b61ab418eea0c020fa3afac"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Thu Jun 04 10:35:53 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:50:30 2026 +0100"
      },
      "message": "ASoC: rockchip: rockchip_sai: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260604033554.96996-4-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "ec22437fc41aa60a0b61ab418eea0c020fa3afac",
      "tree": "134a8e2ecc1fdde42d7f8db65d67e3e259861cbc",
      "parents": [
        "4bda5af169202c1298492fa91e58903c65a68234"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Thu Jun 04 10:35:52 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:50:29 2026 +0100"
      },
      "message": "ASoC: rockchip: i2s-tdm: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260604033554.96996-3-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "4bda5af169202c1298492fa91e58903c65a68234",
      "tree": "a76b210deb652425e32a64c04120148a23a577f0",
      "parents": [
        "e43ffb69e0438cddd72aaa30898b4dc446f664f8"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Thu Jun 04 10:35:51 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:50:28 2026 +0100"
      },
      "message": "ASoC: rockchip: rockchip_i2s: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260604033554.96996-2-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "4263ed78c5270d7bb31677f554745ba0112c0e7c",
      "tree": "df155488d8fd817a98165aa802c63240f3b16511",
      "parents": [
        "216f7452a68e3974fa27930d577b84f385348e55",
        "ee7b5f7b39332febf917f9ebf212842cc9379815"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:43 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:43 2026 +0100"
      },
      "message": "ASoC: rockchip: Reorder clock enable sequence\n\nbui duc phuc \u003cphucduc.bui@gmail.com\u003e says:\n\nThis series reorders the runtime resume clock enable sequence in the\nRockchip SPDIF and PDM drivers to enable the bus clock before the\nfunctional controller clock.\n\nIt also updates the SPDIF DT binding clock descriptions to match the\nactual clock usage in the driver.\n\nAdditionally, this v2 adds two new patches addressing issues reported\nby the Sashiko AI Review tool regarding regcache sync failure handling\nand runtime PM resume status validation.\n\nTesting:\n  - Patch 1: Verified (dt_binding_check passed).\n  - Patches 2 to 5: Compile tested only. Please help test if you have\n    the relevant Rockchip hardware.\n\nLink: https://patch.msgid.link/20260602101608.45137-1-phucduc.bui@gmail.com\n"
    },
    {
      "commit": "ee7b5f7b39332febf917f9ebf212842cc9379815",
      "tree": "00dba6b8af495294e3185b7bc961ae32ac34f69a",
      "parents": [
        "3546e9aa691ac981e4734fedd1646d0180784893"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Tue Jun 02 17:16:08 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:42 2026 +0100"
      },
      "message": "ASoC: rockchip: rockchip_pdm: Handle runtime PM resume failures in set_fmt\n\nrockchip_pdm_set_fmt() calls pm_runtime_get_sync() before accessing\nhardware registers, but ignores its return value.\nIf the runtime resume fails, the function continues to perform register\naccesses while the device state is undefined.\nReplace pm_runtime_get_sync() with pm_runtime_resume_and_get() and\nreturn early on failure to avoid unpowered register accesses.\n\nReported-by: Sashiko AI Review \u003csashiko-bot@kernel.org\u003e\nCloses: https://lore.kernel.org/all/20260522110302.349421F000E9@smtp.kernel.org/\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260602101608.45137-6-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "3546e9aa691ac981e4734fedd1646d0180784893",
      "tree": "06bfa44c7c89db958514c9f0f0162d3dc20cdc16",
      "parents": [
        "3168721d6ec3b610edf6a3c22ad190722a27d276"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Tue Jun 02 17:16:07 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:41 2026 +0100"
      },
      "message": "ASoC: rockchip: spdif: Restore regcache cache-only mode on sync failure\n\nIf regcache_sync() fails during runtime resume, the driver disables the\nclocks and returns an error. However, the regmap cache-only mode is left\ndisabled.\nRestore cache-only mode in the error path so subsequent register accesses\ncontinue to use the cache while the device is inactive.\n\nReported-by: Sashiko AI Review \u003csashiko-bot@kernel.org\u003e\nCloses: https://lore.kernel.org/all/20260522103713.6C09D1F000E9@smtp.kernel.org/\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260602101608.45137-5-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "3168721d6ec3b610edf6a3c22ad190722a27d276",
      "tree": "cb648cbeac0f760be0e232931f05d7d47684fc04",
      "parents": [
        "74d3f01a90ca0e49cf4b1980e7b0a07bcf18f064"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Tue Jun 02 17:16:06 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:40 2026 +0100"
      },
      "message": "ASoC: rockchip: rockchip_pdm: Reorder clock enable sequence\n\nEnable the \u0027hclk\u0027 bus clock before the \u0027clk\u0027 controller clock during\nruntime resume.\nThe bus clock provides the register access interface, so enable it before\nthe controller clock. This also makes the resume sequence the reverse of\nthe suspend sequence, which keeps the clock ordering consistent.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260602101608.45137-4-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "74d3f01a90ca0e49cf4b1980e7b0a07bcf18f064",
      "tree": "9f89a752618252f3bf1cd83dd9e9192bad8bf67a",
      "parents": [
        "d057cbc218ac07085b1dd18ed3c780b0399aa63d"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Tue Jun 02 17:16:05 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:39 2026 +0100"
      },
      "message": "ASoC: rockchip: spdif: Reorder clock enable sequence\n\nEnable the \u0027hclk\u0027 bus clock before the \u0027mclk\u0027 controller clock during\nruntime resume.\nThe bus clock provides the register access interface, so enable it before\nthe controller clock. This also makes the resume sequence the reverse of\nthe suspend sequence, which keeps the clock ordering consistent.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260602101608.45137-3-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "d057cbc218ac07085b1dd18ed3c780b0399aa63d",
      "tree": "7bfb82e21cfc7aebcdc570bb7ecf4ef05eb9039f",
      "parents": [
        "e43ffb69e0438cddd72aaa30898b4dc446f664f8"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Tue Jun 02 17:16:04 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:49:39 2026 +0100"
      },
      "message": "ASoC: dt-bindings: rockchip-spdif: Correct SPDIF clock descriptions\n\nUpdate the binding descriptions to match the actual clock usage, where\n\u0027mclk\u0027 is the controller clock and \u0027hclk\u0027 is the bus clock.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260602101608.45137-2-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "216f7452a68e3974fa27930d577b84f385348e55",
      "tree": "396d4f3d4055f29b548ee655e86706835d1b6438",
      "parents": [
        "b7e44d1986d6671342c19b82192189ca5db5dab7"
      ],
      "author": {
        "name": "Sen Wang",
        "email": "sen@ti.com",
        "time": "Wed Jun 03 16:18:30 2026 -0500"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:48:11 2026 +0100"
      },
      "message": "ASoC: ti: davinci-mcasp: Add audio-graph-card2 and DPCM support\n\nExtend the McASP driver to support audio-graph-card2 of-graph topology,\nwhile maintaining backwards compatibility for existing simple-audio-card\nphandles and machine drivers, which now uses the default MCASP_GRAPH_NONE\ncode path.\n\nSigned-off-by: Sen Wang \u003csen@ti.com\u003e\nLink: https://patch.msgid.link/20260603211835.635184-1-sen@ti.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "b7e44d1986d6671342c19b82192189ca5db5dab7",
      "tree": "4a11d31c113633b88dbd26d87d52c114a8ffb05d",
      "parents": [
        "890b61d3a8c980ec46d88b9ab1b35e3ddd4f1593"
      ],
      "author": {
        "name": "Cássio Gabriel",
        "email": "cassiogabrielcontato@gmail.com",
        "time": "Thu Jun 04 00:10:58 2026 -0300"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:47:42 2026 +0100"
      },
      "message": "ASoC: topology: Check PCM and DAI name strings before use\n\nTopology objects store several PCM and DAI names in fixed-size UAPI\narrays. Other topology parser paths validate these fields with bounded\nstrnlen() checks before using them as C strings, but the PCM and DAI\npaths still pass some fixed-size arrays directly to strlen(),\ndevm_kstrdup(), DAI lookup, and diagnostic prints.\n\nA malformed topology blob with a non-NUL-terminated PCM, DAI, or stream\ncapability name can therefore make the parser read past the end of the\nfixed-size field.\n\nReject unterminated PCM and DAI name fields before consuming them as C\nstrings.\n\nFixes: 64527e8a3529 (\"ASoC: topology: Add FE DAIs dynamically\")\nFixes: acfc7d46cddc (\"ASoC: topology: Add FE DAI links dynamically\")\nFixes: 0038be9a84dc (\"ASoC: topology: Add support for configuring existing BE DAIs\")\nSigned-off-by: Cássio Gabriel \u003ccassiogabrielcontato@gmail.com\u003e\nLink: https://patch.msgid.link/20260604-asoc-topology-check-pcm-dai-names-v1-1-e1b0f6f7c2ce@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "890b61d3a8c980ec46d88b9ab1b35e3ddd4f1593",
      "tree": "dc4a86e98c098c9902d2fb58bec795f77fd4a414",
      "parents": [
        "90a49e0f16529719fd695c8856324702ed281f82"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:14 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:55 2026 +0100"
      },
      "message": "ASoC: cs35l56: Remove unnecessary conditionals waiting for enumeration\n\nCommit [1] updated the core to use complete_all() which means that\nthe wait_for_completion() will now simply return if the device\nis already attached, so skipping the completion isn\u0027t required\nanymore.  Update the code to simply call sdw_slave_wait_for_init()\nunconditionally.\n\n[1] c40d6b3249b1 (\"soundwire: fix enumeration completion\")\n\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-11-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "90a49e0f16529719fd695c8856324702ed281f82",
      "tree": "09f2ec85bd44dab528fa90edd9e3e191a9d682cd",
      "parents": [
        "4e006504ac95493e9f93f2023704456822eea7ca"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:13 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:54 2026 +0100"
      },
      "message": "ASoC: SDCA: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-10-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "4e006504ac95493e9f93f2023704456822eea7ca",
      "tree": "948766d21ad28fdc60cfd398cd4f56c8c27e6ad2",
      "parents": [
        "d6fc2c7051a6a844750af94a755882992e67471a"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:12 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:53 2026 +0100"
      },
      "message": "ASoC: wcd939x: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-9-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "d6fc2c7051a6a844750af94a755882992e67471a",
      "tree": "20cd99af99cec66f55f563b4bbb1d8f3eda49270",
      "parents": [
        "ec1028e3f0771980e08ee643923119b81a4e4cda"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:11 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:52 2026 +0100"
      },
      "message": "ASoC: wcd938x: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-8-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "ec1028e3f0771980e08ee643923119b81a4e4cda",
      "tree": "edfe3f2af9aff7947849ff22c20ea9dee275af85",
      "parents": [
        "ae636c93299dde6effcc84a0ba832a053ec4cb60"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:10 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:52 2026 +0100"
      },
      "message": "ASoC: wcd937x: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-7-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "ae636c93299dde6effcc84a0ba832a053ec4cb60",
      "tree": "0e3058f3e69234ed5631c1f9e06bf82d49e8c906",
      "parents": [
        "933feddee4d739748fe7d183432d10e589adfe97"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:09 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:51 2026 +0100"
      },
      "message": "ASoC: pm4125: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-6-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "933feddee4d739748fe7d183432d10e589adfe97",
      "tree": "b2b4a87df26d62a1d88c9486e060f5b5ff1ef9df",
      "parents": [
        "f0eb67c618ee2e19a406edd24dc776eb86831870"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:08 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:50 2026 +0100"
      },
      "message": "ASoC: rt5682: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it is safe to use from probe time. Update the driver\nto use the new core helper.\n\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-5-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "f0eb67c618ee2e19a406edd24dc776eb86831870",
      "tree": "92e73394e4b6c4dd11ed2d158ee00c71359eb79a",
      "parents": [
        "5677a551f45820ddd69f11559394bb79669271ca"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:06 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:49 2026 +0100"
      },
      "message": "ASoC: wsa881x: Use new SoundWire enumeration helper\n\nNow the new wait for SoundWire enumeration helper no longer depends on\nunattach_request it can be used for code that also doesn\u0027t check this\nflag. Update the driver to use the new core helper.\n\nReviewed-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nTested-by: Srinivas Kandagatla \u003csrinivas.kandagatla@oss.qualcomm.com\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-3-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "5677a551f45820ddd69f11559394bb79669271ca",
      "tree": "807e2f042468fe4e48d456d260b2592d7df00f9d",
      "parents": [
        "ed8676d99fe6a11e9231d70bc4990ad289359765"
      ],
      "author": {
        "name": "Charles Keepax",
        "email": "ckeepax@opensource.cirrus.com",
        "time": "Mon Jun 08 11:27:05 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:46:48 2026 +0100"
      },
      "message": "soundwire: Always wait for initialisation of unattached devices\n\nCurrently in sdw_slave_wait_for_init() the waiting can be skipped\nif unattach_request is not set. Doing so was added in [1] likely\nbecause the core used to do a complete() on the completion so\nwaiting in the case an unattach hadn\u0027t actually happened would\nblock for the full timeout. However patch [2] updated the core to\nuse complete_all() which means that the wait_for_completion() will\nnow simply return if the device is already attached skipping the\ncompletion doesn\u0027t add much.\n\nAdditionally, unattach_request is only set if the host initiates\na bus reset. However, the host doing a bus reset is not the only\nreason a device may be unattached from the bus. Other options\ncould include the driver probing before the device enumerates, a\nsync-loss, or the device itself powering down.\n\nRemoving the skip using unattached_request, doesn\u0027t cost much in\nterms of efficiency and allows the sdw_slave_wait_for_init() helper\nto be used outside of runtime resume.\n\n[1] b2bd75f806c4 (\"soundwire: sdw_slave: track unattach_request to handle all init sequences\")\n[2] c40d6b3249b1 (\"soundwire: fix enumeration completion\")\n\nAcked-by: Vinod Koul \u003cvkoul@kernel.org\u003e\nSigned-off-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260608102714.2503120-2-ckeepax@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "ed8676d99fe6a11e9231d70bc4990ad289359765",
      "tree": "80918086a63534bf0f16d74bd71570d72562ae90",
      "parents": [
        "c5827903973901278e51f1efed8bfd49d0228233",
        "1d8aabb413b5638670dfd1162169edc0ba276a2e"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:46 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:46 2026 +0100"
      },
      "message": "ASoC: Validate written enum values in custom controls\n\nHyeongJun An \u003csammiee5311@gmail.com\u003e says:\n\nSome custom ASoC kcontrol put() handlers use the written enum value\n(ucontrol-\u003evalue.enumerated.item[0]) to index a table or compute a bit\nshift before validating that the value is within the control\u0027s enum range.\nAn out-of-range value written from userspace is therefore consumed before\nit is rejected.\n\nThis is the same class addressed for the Meson codecs in commit\n1e001206804b (\"ASoC: meson: g12a-tohdmitx: Validate written enum values\")\nand commit 3150b70e944e (\"ASoC: meson: g12a-toacodec: Validate written\nenum values\").\n\nFix four more instances:\n - hdac_hdmi reads e-\u003etexts[item] before validation.\n - aiu converts the item before validating it.\n - fsl_audmix converts the item and uses the result before validation.\n - tegra210_ahub reads e-\u003evalues[item] before validation.\n\nLink: https://patch.msgid.link/20260609124317.38046-1-sammiee5311@gmail.com\n"
    },
    {
      "commit": "1d8aabb413b5638670dfd1162169edc0ba276a2e",
      "tree": "d6c9b15678615fcaea798e9986c81a1ebf96073a",
      "parents": [
        "3cd17e4e2871114d5579fa7bc8da66faf7fc1930"
      ],
      "author": {
        "name": "HyeongJun An",
        "email": "sammiee5311@gmail.com",
        "time": "Tue Jun 09 21:43:16 2026 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:45 2026 +0100"
      },
      "message": "ASoC: tegra: tegra210_ahub: Validate written enum value\n\ntegra_ahub_put_value_enum() reads e-\u003evalues[item[0]] before\nchecking whether item[0] is within the enum item range. The existing\ncheck therefore happens too late to prevent an out-of-range read of the\nvalues array.\n\nMove the check before the array access.\n\nFixes: 16e1bcc2caf4 (\"ASoC: tegra: Add Tegra210 based AHUB driver\")\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: HyeongJun An \u003csammiee5311@gmail.com\u003e\nLink: https://patch.msgid.link/20260609124317.38046-5-sammiee5311@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "3cd17e4e2871114d5579fa7bc8da66faf7fc1930",
      "tree": "018c9cd77c14fc1d2354e785b1a91a1dccf7f2ce",
      "parents": [
        "d65adf85477247be04ac86886f8edfaa047b5d4a"
      ],
      "author": {
        "name": "HyeongJun An",
        "email": "sammiee5311@gmail.com",
        "time": "Tue Jun 09 21:43:15 2026 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:45 2026 +0100"
      },
      "message": "ASoC: fsl: fsl_audmix: Validate written enum values\n\nfsl_audmix_put_mix_clk_src() and fsl_audmix_put_out_src()\nconvert the user-provided enum item with snd_soc_enum_item_to_val()\nbefore checking whether the item is within the enum\u0027s item count.\n\nThe generic snd_soc_put_enum_double() helper performs that\nvalidation, but these callbacks use the converted value first: the\nclock-source path tests it with BIT(), and the output-source path\nindexes the prms transition table with it.\n\nReject out-of-range enum items before converting them.\n\nFixes: be1df61cf06e (\"ASoC: fsl: Add Audio Mixer CPU DAI driver\")\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: HyeongJun An \u003csammiee5311@gmail.com\u003e\nLink: https://patch.msgid.link/20260609124317.38046-4-sammiee5311@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "d65adf85477247be04ac86886f8edfaa047b5d4a",
      "tree": "e28d21a29d746c3ff8262279ea5257a257ba396f",
      "parents": [
        "0b08baeccdcf52fad328ad645f5b4fbee04eea34"
      ],
      "author": {
        "name": "HyeongJun An",
        "email": "sammiee5311@gmail.com",
        "time": "Tue Jun 09 21:43:14 2026 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:44 2026 +0100"
      },
      "message": "ASoC: meson: aiu: Validate written enum values\n\nThe AIU HDMI and internal codec mux put callbacks use the written enum\nvalue with snd_soc_enum_item_to_val() before checking whether the value is\nvalid for the enumeration.\n\nReject out-of-range values before converting the enum item, matching the\nvalidation already done by the G12A HDMI and internal codec mux controls.\n\nFixes: b82b734c0e9a (\"ASoC: meson: aiu: add hdmi codec control support\")\nFixes: 65816025d461 (\"ASoC: meson: aiu: add internal dac codec control support\")\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: HyeongJun An \u003csammiee5311@gmail.com\u003e\nLink: https://patch.msgid.link/20260609124317.38046-3-sammiee5311@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "0b08baeccdcf52fad328ad645f5b4fbee04eea34",
      "tree": "55971b35e85c02e0f11562ab1132009eb9f6c8f1",
      "parents": [
        "4549871118cf616eecdd2d939f78e3b9e1dddc48"
      ],
      "author": {
        "name": "HyeongJun An",
        "email": "sammiee5311@gmail.com",
        "time": "Tue Jun 09 21:43:13 2026 +0900"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:44:43 2026 +0100"
      },
      "message": "ASoC: codecs: hdac_hdmi: Validate written enum value\n\nhdac_hdmi_set_pin_port_mux() uses the written enum value to index the\ntexts array before calling snd_soc_dapm_put_enum_double(), which validates\nthat the value is within the enum item range.\n\nAn out-of-range value can therefore make the driver read past the texts\narray before the helper rejects the write. Move the lookup after the helper\nhas accepted the value.\n\nFixes: 4a3478debf36 (\"ASoC: hdac_hdmi: Add jack reporting\")\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: HyeongJun An \u003csammiee5311@gmail.com\u003e\nLink: https://patch.msgid.link/20260609124317.38046-2-sammiee5311@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "c5827903973901278e51f1efed8bfd49d0228233",
      "tree": "7a2be891196d8140b82ba1c097414fabf7d4ecf1",
      "parents": [
        "a68bbd4ac1b1af5c5dc2b747102a8c422a4ef7da",
        "4fbf9d7a1c4f51359bb48fe30868e66f116bc7a6"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:43:33 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:43:33 2026 +0100"
      },
      "message": "ASoC: img: Use guard() for spin locks\n\nbui duc phuc \u003cphucduc.bui@gmail.com\u003e says:\n\nThis series converts spinlock handling in several IMG ASoC drivers\nto use guard() helpers.\nAll patches are straightforward cleanups with no functional change\nintended.\n\nCompile-tested only.\n\nLink: https://patch.msgid.link/20260610104524.87166-1-phucduc.bui@gmail.com\n"
    },
    {
      "commit": "4fbf9d7a1c4f51359bb48fe30868e66f116bc7a6",
      "tree": "bdc5f2a44b8f8bff7605374e79093c5f9bcb447c",
      "parents": [
        "131e13f35f16c044ba9812ac1c5c59da0fcfd2ab"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:45:24 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:43:32 2026 +0100"
      },
      "message": "ASoC: img: img-spdif-out: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610104524.87166-3-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "131e13f35f16c044ba9812ac1c5c59da0fcfd2ab",
      "tree": "64da0715f37548c5849df2f72fc7a00f86604193",
      "parents": [
        "4bc343bd77e399528bc841a3bb520773363fddd5"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:45:23 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:43:32 2026 +0100"
      },
      "message": "ASoC: img: img-spdif-in: Use guard() for spin locks\n\nClean up the code using guard() for spin locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nLink: https://patch.msgid.link/20260610104524.87166-2-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "a68bbd4ac1b1af5c5dc2b747102a8c422a4ef7da",
      "tree": "d7f34fa55924be54eefa8899ddbe0ed1635fa0fe",
      "parents": [
        "999ec4c29d73ac85b639a31bbc85ad2ec00eb9d7"
      ],
      "author": {
        "name": "bui duc phuc",
        "email": "phucduc.bui@gmail.com",
        "time": "Wed Jun 10 17:21:53 2026 +0700"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:42:38 2026 +0100"
      },
      "message": "ASoC: meson: axg-tdm-formatter: Use guard() for mutex locks\n\nClean up the code using guard() for mutex locks.\nMerely code refactoring, and no behavior change.\n\nSigned-off-by: bui duc phuc \u003cphucduc.bui@gmail.com\u003e\nReviewed-by: Jerome Brunet \u003cjbrunet@baylibre.com\u003e\nLink: https://patch.msgid.link/20260610102153.83367-1-phucduc.bui@gmail.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "999ec4c29d73ac85b639a31bbc85ad2ec00eb9d7",
      "tree": "0a125a1483a4788819a9c5edf22f3533b7b1f38c",
      "parents": [
        "67805f57e5b1a8589f89bd48936c65cbbaeec300"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jun 11 15:23:06 2026 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:40:10 2026 +0100"
      },
      "message": "ASoC: SOF: Intel: hda-sdw-bpt: select SND_SOF_SOF_HDA_SDW_BPT properly\n\nWhen SND_SOC_SOF_INTEL_LNL is set, SND_SOF_SOF_HDA_SDW_BPT must also\nbe enabled, in order to let the soundwire support call into it.\n\nHowever, there are configurations with SND_SOF_SOF_HDA_SDW_BPT\u003dm\nand SND_SOF_SOF_HDA_SDW_BPT\u003dm but SOUNDWIRE_INTEL\u003dy, which still\nlead to a link failure:\n\naarch64-linux-ld: drivers/soundwire/intel_ace2x.o: in function `intel_ace2x_bpt_wait\u0027:\nintel_ace2x.c:(.text+0xfc8): undefined reference to `hda_sdw_bpt_wait\u0027\naarch64-linux-ld: drivers/soundwire/intel_ace2x.o: in function `intel_ace2x_bpt_send_async\u0027:\nintel_ace2x.c:(.text+0x1ff8): undefined reference to `hda_sdw_bpt_get_buf_size_alignment\u0027\n\nAddress this by moving the \u0027select SND_SOF_SOF_HDA_SDW_BPT\u0027 into\nSND_SOC_SOF_HDA_GENERIC.\n\nFixes: 614d416dd8ae (\"ASoC: SOF: Intel: hda-sdw-bpt: fix SND_SOF_SOF_HDA_SDW_BPT dependencies\")\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nLink: https://patch.msgid.link/20260611132310.137688-2-arnd@kernel.org\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "67805f57e5b1a8589f89bd48936c65cbbaeec300",
      "tree": "bb9922671e4fa8f507ac9f8250ff383cf41352c4",
      "parents": [
        "3073eb1f1143deabbda6a043238ab9d99672e7c8"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jun 11 15:23:05 2026 +0200"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:40:09 2026 +0100"
      },
      "message": "ASoC: SOF: Intel: select SND_SOC_SDW_UTILS\u003dy from SND_SOC_SOF_HDA_GENERIC\u003dy\n\nWhen SND_SOC_SOF_HDA_GENERIC\u003dy but SND_SOC_SOF_INTEL_SOUNDWIRE\u003dm, the\nSND_SOC_SDW_UTILS is also set to \u003dm even though there is a direct link\ndependency from the hda.c:\n\naarch64-linux-ld: sound/soc/sof/intel/hda.o: in function `hda_machine_select\u0027:\nhda.c:(.text+0x21ac): undefined reference to `codec_info_list\u0027\nhda.c:(.text+0x241c): undefined reference to `asoc_sdw_get_dai_type\u0027\nhda.c:(.text+0x25b4): undefined reference to `asoc_sdw_get_codec_info_list_count\u0027\nhda.c:(.text+0x25d8): undefined reference to `asoc_sdw_get_codec_info_list_count\u0027\n\nChange this the same way as the other related \u0027select\u0027 statements\nto allow linking against it.\n\nFixes: 2b4d53eb5cf3 (\"ASoC: SOF: Intel: select SND_SOC_SDW_UTILS in SND_SOC_SOF_HDA_GENERIC\")\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nTested-by: Julian Braha \u003cjulianbraha@gmail.com\u003e\nLink: https://patch.msgid.link/20260611132310.137688-1-arnd@kernel.org\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "3073eb1f1143deabbda6a043238ab9d99672e7c8",
      "tree": "bf57ae5ffb579eaea93682d40fd53b9dfd4e9e85",
      "parents": [
        "0f54ce994b23875aad771064b53483f7f791efbf"
      ],
      "author": {
        "name": "Richard Fitzgerald",
        "email": "rf@opensource.cirrus.com",
        "time": "Thu Jun 11 16:12:34 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:39:06 2026 +0100"
      },
      "message": "ASoC: cs35l56: Fix wrong error test on simple_write_to_buffer()\n\nIn cs35l56_cal_data_debugfs_write() fix the if statement that checks for\nerror return to only check for negative values.\n\nReported by Sashiko:\n\n  simple_write_to_buffer() returns the positive number of bytes copied\n  on success. Since the condition returns immediately on any non-zero\n  value, is it possible that the written calibration data is discarded\n  and cs35l56_stash_calibration() is never called?\n\nFixes: f7097161e94c (\"ASoC: cs35l56: Add common code for factory calibration\")\nReported-by: Sashiko \u003csashiko-bot@kernel.org\u003e\nLink: https://sashiko.dev/#/patchset/20260610093432.557375-1-rf%40opensource.cirrus.com\nSigned-off-by: Richard Fitzgerald \u003crf@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260611151234.1111153-1-rf@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "0f54ce994b23875aad771064b53483f7f791efbf",
      "tree": "99d805aa1219c9e583478ab292260d858b4f963d",
      "parents": [
        "007699d278a655871b07d45a1268761260d03124"
      ],
      "author": {
        "name": "Richard Fitzgerald",
        "email": "rf@opensource.cirrus.com",
        "time": "Thu Jun 11 12:08:56 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 20:38:40 2026 +0100"
      },
      "message": "ASoC: soc-core: Create device_link to ensure correct suspend order\n\nIn snd_soc_bind_card() create a device_link from card to all components\nto ensure correct order of system_suspend. The card is the consumer and\nthe components are the supplier, so that the card will system_suspend\nbefore any of the components.\n\nThe PM core will normally system_suspend drivers in the opposite order\nthat they registered. This ensures children are suspended before their\nparents, for example users of a bus driver should suspend before the bus\ndriver suspends.\n\nFor ASoC, snd_soc_suspend() shuts down any active audio, which requires\nthat the components are still able to communicate with their hardware.\nPreviously there was nothing to ensure this ordering, because there is\n(usually) no relationship between a machine driver and component drivers.\nIf the machine driver registered before the codec drivers, the codec\ndrivers would be suspended before the machine driver snd_soc_suspend()\nruns, so that ASoC is attempting to stop audio on a driver that has\nalready suspended.\n\nCreating a device_link is safe if there is already a device_link between\nthose devices because of multiple components sharing the same dev.\ndevice_link_add() kernel doc says:\n\n \"if a device link between the given @consumer and @supplier pair\n  exists already when this function is called for them, the existing link\n  will be returned regardless of its current type and status ...\n  The caller of this function is then expected to treat\n  the link as though it has just been created, so (in particular) if\n  DL_FLAG_STATELESS was passed in @flags, the link needs to be released\n  explicitly when not needed any more\"\n\nFor the same reason it is safe if the codec driver or machine driver\nlater call device_link_add() to create a link between the same two\ndevices.\n\n(I have tested creating multiple links between the card-\u003edev and a\ncomponent-\u003edev and did not encounter any problems with suspend/resume or\nmodule unloading.)\n\nThe DL_FLAG_AUTOREMOVE_* flags assume that they are being called from\nthe probe() function of that device. This isn\u0027t guaranteed in ASoC card\nbinding because of deferred binding. The exact behavior and consequences\nof the DL_FLAG_AUTOREMOVE_* are also unclear from the documentation.\nSo DL_FLAG_STATELESS is used for safety, and the links are removed\nexplicitly when the card unbinds or if the bind fails.\n\nSigned-off-by: Richard Fitzgerald \u003crf@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260611110856.1088110-1-rf@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "0f6f60115bfc536c1935d3d0da66cf1d5c7d6055",
      "tree": "163a6614d458941fe24b03d5cf7eaafdfbba3b48",
      "parents": [
        "950425465c4e97d699fedb738ea6ffd456a40514",
        "b0d1553d51c3d188baae6d77e6f3dfb415a7b623"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 11 21:32:24 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 11 21:32:24 2026 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027\n"
    },
    {
      "commit": "b0d1553d51c3d188baae6d77e6f3dfb415a7b623",
      "tree": "76dd45e84f64a07e4a57bc6f8434055021d06850",
      "parents": [
        "053a401b592be424fea9d57c789f66cd5d8cec11",
        "e4c60a1d4b6ccc66aefb3789cd908d4f9482eefd"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 11 21:29:47 2026 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Jun 11 21:29:47 2026 +0200"
      },
      "message": "Merge tag \u0027asoc-fix-v7.1-rc7\u0027 of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus\n\nASoC: Fixes for v7.1\n\nA few more fixes for this release, some smaller driver specific ones\nplus a final quirk.\n"
    },
    {
      "commit": "e4c60a1d4b6ccc66aefb3789cd908d4f9482eefd",
      "tree": "61b183bfed5b976e4620b489cec82301a20e41b6",
      "parents": [
        "6ad3914e06a48a02e362d0df2b1073c7c567c93d"
      ],
      "author": {
        "name": "Kean Ren",
        "email": "rh_king@163.com",
        "time": "Thu Jun 11 10:37:57 2026 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 15:55:23 2026 +0100"
      },
      "message": "ASoC: SDCA: fix NULL pointer dereference in sdca_dev_unregister_functions\n\nsdca_dev_unregister_functions() iterates over all SDCA function\ndescriptors and calls sdca_dev_unregister() on each func_dev without\nchecking for NULL. When a function registration has failed partway\nthrough, or the device cleanup races with probe deferral, func_dev\nentries may be NULL, leading to a kernel oops:\n\n  BUG: kernel NULL pointer dereference, address: 0000000000000040\n  RIP: 0010:device_del+0x1e/0x3e0\n  Call Trace:\n   sdca_dev_unregister_functions+0x37/0x60 [snd_soc_sdca]\n   release_nodes+0x35/0xb0\n   devres_release_all+0x90/0x100\n   device_unbind_cleanup+0xe/0x80\n   device_release_driver_internal+0x1c1/0x200\n   bus_remove_device+0xc6/0x130\n   device_del+0x161/0x3e0\n   device_unregister+0x17/0x60\n   sdw_delete_slave+0xb6/0xd0 [soundwire_bus]\n   sdw_bus_master_delete+0x1e/0x50 [soundwire_bus]\n   ...\n   sof_probe_work+0x19/0x30 [snd_sof]\n\nThis was observed on a Lenovo ThinkPad X1 Carbon G14 (Panther Lake)\nwith the SOF audio driver probe failing due to missing Panther Lake\nfirmware, causing the subsequent cleanup of SoundWire devices to\ntrigger the crash.\n\nFix this with three changes:\n\n1) Add a NULL guard in sdca_dev_unregister() so that callers do not\n   need to pre-validate the pointer (defense in depth).\n\n2) In sdca_dev_unregister_functions(), skip NULL func_dev entries\n   and clear func_dev to NULL after unregistration, making the\n   function idempotent and safe against double-invocation.\n\n3) In sdca_dev_register_functions(), roll back all previously\n   registered functions when a later one fails, so the function\n   array is never left in a partially-populated state.\n\nFixes: 4496d1c65bad (\"ASoC: SDCA: add function devices\")\nSigned-off-by: Kean Ren \u003crh_king@163.com\u003e\nReviewed-by: Charles Keepax \u003cckeepax@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260611023757.1553960-1-rh_king@163.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "007699d278a655871b07d45a1268761260d03124",
      "tree": "8a9f182adc2e804494635e5c200452c957f46096",
      "parents": [
        "79bec463819428912e1cfcb534e4379093b422ce"
      ],
      "author": {
        "name": "Richard Fitzgerald",
        "email": "rf@opensource.cirrus.com",
        "time": "Thu Jun 11 14:22:21 2026 +0100"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 15:07:00 2026 +0100"
      },
      "message": "ASoC: cs35l56: Fix possible uninitialized value in cs35l56_spi_system_reset()\n\nIn cs35l56_spi_system_reset() initialize val to zero before using it in\nthe read_poll_timeout(). This prevents testing an uninitialized value if\nthe regmap_read_bypassed() returns an error.\n\nRead errors are intentionally ignored during this loop because the\ndevice is resetting (though SPI can\u0027t really detect that so shouldn\u0027t\nfail because of that, it\u0027s safer to ignore errors and keep polling).\nBecause of this, val must be initialized to something in case the first\nread fails. The polling loop is looking for a non-zero value, so\ninitializing val to 0 will ensure that the loop continues until a valid\nstate is read from the device or it times out.\n\nFixes: 769c1b79295c (\"ASoC: cs35l56: Prevent races when soft-resetting using SPI control\")\nSigned-off-by: Richard Fitzgerald \u003crf@opensource.cirrus.com\u003e\nLink: https://patch.msgid.link/20260611132221.1100497-1-rf@opensource.cirrus.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    },
    {
      "commit": "79bec463819428912e1cfcb534e4379093b422ce",
      "tree": "01d10117a8a1ac92347109870a952241828fbf7d",
      "parents": [
        "4bc343bd77e399528bc841a3bb520773363fddd5"
      ],
      "author": {
        "name": "Baojun Xu",
        "email": "baojun.xu@ti.com",
        "time": "Thu Jun 11 20:53:59 2026 +0800"
      },
      "committer": {
        "name": "Mark Brown",
        "email": "broonie@kernel.org",
        "time": "Thu Jun 11 14:53:39 2026 +0100"
      },
      "message": "ASoC: sdw_utils: Add missed component_name strings for TI amps\n\nAdded component_name for UCM.\n\nSigned-off-by: Baojun Xu \u003cbaojun.xu@ti.com\u003e\nLink: https://patch.msgid.link/20260611125359.19839-1-baojun.xu@ti.com\nSigned-off-by: Mark Brown \u003cbroonie@kernel.org\u003e\n"
    }
  ],
  "next": "6ad3914e06a48a02e362d0df2b1073c7c567c93d"
}
