From: Kishore Batta <kishore.batta@oss.qualcomm.com>
To: Krzysztof Kozlowski <krzk@kernel.org>,
jeff.hugo@oss.qualcomm.com, bjorn.andersson@oss.qualcomm.com,
konradybcio@kernel.org, konrad.dybcio@oss.qualcomm.com
Cc: andersson@kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH v1 06/12] drivers: soc: qcom: Add support for Qualcomm QDU device.
Date: Mon, 9 Mar 2026 19:55:40 +0530 [thread overview]
Message-ID: <88c953fa-8fcf-4c40-9a02-2f1b2918e2e2@oss.qualcomm.com> (raw)
In-Reply-To: <d0cbb975-da2a-4b84-ba89-c475e711742f@oss.qualcomm.com>
On 3/8/2026 11:42 AM, Kishore Batta wrote:
>
> On 3/7/2026 6:50 PM, Krzysztof Kozlowski wrote:
>> On 07/03/2026 12:33, Kishore Batta wrote:
>>> On 8/28/2025 7:49 PM, Krzysztof Kozlowski wrote:
>>>> On 25/08/2025 12:19, Kishore Batta wrote:
>>>>> diff --git a/drivers/soc/qcom/Makefile b/drivers/soc/qcom/Makefile
>>>>> index 99e490e3174e..8d036edf304a 100644
>>>>> --- a/drivers/soc/qcom/Makefile
>>>>> +++ b/drivers/soc/qcom/Makefile
>>>>> @@ -41,3 +41,4 @@ obj-$(CONFIG_QCOM_INLINE_CRYPTO_ENGINE) +=
>>>>> qcom_ice.o
>>>>> obj-$(CONFIG_QCOM_PBS) += qcom-pbs.o
>>>>> obj-$(CONFIG_QCOM_UBWC_CONFIG) += ubwc_config.o
>>>>> obj-$(CONFIG_QCOM_SAHARA_PROTOCOL) += sahara/
>>>>> +obj-$(CONFIG_QCOM_QDU) += qdu.o
>>>>> diff --git a/drivers/soc/qcom/qdu.c b/drivers/soc/qcom/qdu.c
>>>>> new file mode 100644
>>>>> index 000000000000..afd8011793fa
>>>>> --- /dev/null
>>>>> +++ b/drivers/soc/qcom/qdu.c
>>>>> @@ -0,0 +1,85 @@
>>>>> +// SPDX-License-Identifier: GPL-2.0-only
>>>>> +
>>>>> +/* Copyright (c) Qualcomm Technologies, Inc. and/or its
>>>>> subsidiaries. */
>>>>> +
>>>>> +#include <linux/init.h>
>>>>> +#include <linux/kernel.h>
>>>>> +#include <linux/module.h>
>>>>> +#include <linux/sahara_image_table_ops.h>
>>>>> +
>>>>> +static const char * const qdu100_image_table[] = {
>>>>> + [5] = "qcom/qdu100/uefi.elf",
>>>>> + [8] = "qcom/qdu100/qdsp6sw.mbn",
>>>>> + [16] = "qcom/qdu100/efs1.bin",
>>>>> + [17] = "qcom/qdu100/efs2.bin",
>>>>> + [20] = "qcom/qdu100/efs3.bin",
>>>>> + [23] = "qcom/qdu100/aop.mbn",
>>>>> + [25] = "qcom/qdu100/tz.mbn",
>>>>> + [29] = "qcom/qdu100/zeros_1sector.bin",
>>>>> + [33] = "qcom/qdu100/hypvm.mbn",
>>>>> + [34] = "qcom/qdu100/mdmddr.mbn",
>>>>> + [36] = "qcom/qdu100/multi_image_qti.mbn",
>>>>> + [37] = "qcom/qdu100/multi_image.mbn",
>>>>> + [38] = "qcom/qdu100/xbl_config.elf",
>>>>> + [39] = "qcom/qdu100/abl_userdebug.elf",
>>>>> + [40] = "qcom/qdu100/zeros_1sector.bin",
>>>>> + [41] = "qcom/qdu100/devcfg.mbn",
>>>>> + [42] = "qcom/qdu100/zeros_1sector.bin",
>>>>> + [43] = "qcom/qdu100/kernel_boot.elf",
>>>> We should not accept this code because corresponding linux-firmware
>>>> release was not properly authorized in Qualcomm. All of above might
>>>> change.
>>>>
>>>> I can give more details in private.
>>> Thanks for the comment. The QDu100 image table in v2 reflects the
>>> firmware images required by the device for boot. The sahara driver
>>> relies on request_firmware_nowarn() and does not make assumptions about
>>> firmware distributions or availability.
>> You did not answer to my comment at all. It does not matter what it
>> reflects to. You violated GPL license and that's NAK here.
>>
>> And responding to this after half a year with irrelevant comment of
>> whatever is clearly:
>>
>> NAK
>>
>>
>> Best regards,
>> Krzysztof
>
> We understand the concern regarding GPL compliance and firmware
> redistribution. The kernel_boot.elf image required for this device is
> not authorized for inclusion in linux-firmware, and we agree that
> referencing a non-distributable firmware artifact directly from
> upstream kernel code is not appropriate. We also note that this
> kernel_boot.elf is no longer present in the linux-firmware repository.
>
> From a technical standpoint, the QDU100 device does not boot without
> kernel_boot.elf being provided by the platform. However, given the
> redistribution constraints, we are looking for guidance on the
> preferred upstream approach in this situation.
>
> Would you recommend:
>
> 1. Dropping the explicit firmware reference from upstream and leaving
> firmware provisioning entirely to downstream/vendor kernels, or
>
> 2. An alternative pattern that upstream considers acceptable when
> boot-critical firmware cannot be redistributed ?
>
Following up on this thread.
Based on the feedback, I have reworked the patch to remove the
kernel_boot.elf reference from the qdu100_image_table and validated that
the device can still boot when the image is provisioned by the platform
downstream.
Unless there are objections, we will proceed with this approach and post
an updated revision(v3) reflecting these changes.
next prev parent reply other threads:[~2026-03-09 14:25 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-25 10:19 [PATCH v1 00/12] Sahara protocol enhancements Kishore Batta
2025-08-25 10:19 ` [PATCH v1 01/12] Add documentation for Sahara protocol Kishore Batta
2025-08-25 10:19 ` [PATCH v1 02/12] drivers: accel : Move AIC specific image tables to mhi_controller.c file Kishore Batta
2025-08-25 21:08 ` Bjorn Andersson
2026-03-07 11:30 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 03/12] drivers: accel: qaic: Support for registration of image tables in Sahara Kishore Batta
2025-08-25 21:26 ` Bjorn Andersson
2026-03-07 11:31 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 04/12] drivers: accel: Register Qualcomm AIC specific image tables with Sahara Kishore Batta
2025-08-25 21:38 ` Bjorn Andersson
2026-03-07 11:31 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 05/12] drivers: soc: qcom: Move Sahara driver to drivers/soc/qcom directory Kishore Batta
2025-08-25 22:12 ` Bjorn Andersson
2026-03-07 11:57 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 06/12] drivers: soc: qcom: Add support for Qualcomm QDU device Kishore Batta
2025-08-25 23:24 ` Bjorn Andersson
2025-08-28 12:48 ` Kishore Batta
2026-03-07 11:32 ` Kishore Batta
2025-08-28 14:19 ` Krzysztof Kozlowski
2026-03-07 11:33 ` Kishore Batta
2026-03-07 13:20 ` Krzysztof Kozlowski
2026-03-08 6:12 ` Kishore Batta
2026-03-09 14:25 ` Kishore Batta [this message]
2025-08-25 10:19 ` [PATCH v1 07/12] drivers: soc: qcom: Add sysfs support for DDR training data in Sahara Kishore Batta
2025-08-25 22:37 ` Bjorn Andersson
2026-03-07 11:31 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 08/12] drivers: soc: qcom: Support Sahara command mode packets(READY and EXECUTE) Kishore Batta
2025-08-25 22:58 ` Bjorn Andersson
2026-03-07 11:32 ` Kishore Batta
2025-08-28 14:20 ` Krzysztof Kozlowski
2026-03-07 11:33 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 09/12] drivers: soc: qcom: Remove is_mem_dump_mode variable Kishore Batta
2025-08-25 22:59 ` Bjorn Andersson
2026-03-07 11:32 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 10/12] drivers: soc: qcom: Support for DDR training in Sahara Kishore Batta
2025-08-25 23:14 ` Bjorn Andersson
2026-03-07 11:32 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 11/12] drivers: soc: qcom: Support to load saved DDR training data " Kishore Batta
2025-08-26 2:16 ` Bjorn Andersson
2026-03-07 11:32 ` Kishore Batta
2025-08-25 10:19 ` [PATCH v1 12/12] Add sysfs ABI documentation for DDR training data node Kishore Batta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=88c953fa-8fcf-4c40-9a02-2f1b2918e2e2@oss.qualcomm.com \
--to=kishore.batta@oss.qualcomm.com \
--cc=andersson@kernel.org \
--cc=bjorn.andersson@oss.qualcomm.com \
--cc=jeff.hugo@oss.qualcomm.com \
--cc=konrad.dybcio@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox