iq-9075-evk: build sdcc feature DTs as overlays#1952
Conversation
lumag
left a comment
There was a problem hiding this comment.
Commit message should start by the description of the problem the commit tries to solve.
88b810e to
f8ee98d
Compare
| @@ -32,6 +32,18 @@ FIT_DTB_COMPATIBLE[lemans-evk+lemans-evk-ifp-mezzanine] = " \ | |||
| qcom,qcs9075-iot-subtype1 \ | |||
| qcom,qcs9075v2-iot-subtype1 \ | |||
| " | |||
| FIT_DTB_COMPATIBLE[lemans-evk+lemans-evk-sd-card] = " \ | |||
There was a problem hiding this comment.
So, what happens with the default setting?
There was a problem hiding this comment.
By default, the UEFI would populate 'sdcard' metadata. only in case of eMMC attached, 'emmc' will get populated. So by default this would select the lemans-evk-sd-card overlay
There was a problem hiding this comment.
Then why do we need the -sd-card at all?? Why can't it be a default here too, being overriden only if emmc is attached.
There was a problem hiding this comment.
If SD-card-specific properties are added unconditionally in the base DT, certain boolean flags such as no-mmc would conflict with the eMMC use case. These properties also cannot be removed later through the eMMC overlay because of DT overlay limitations. On the other hand, if such flags are omitted, the current driver probe flow attempts SD, MMC, and SDIO detection, which leads to failure logs for unsupported modes. Such logs are not acceptable for certification requirements. Similarly, on the Monaco board, where eMMC is the default configuration, eMMC-specific properties such as supports-cqe for command queue support would conflict with SD-card operation.
There was a problem hiding this comment.
I didn't suggest adding uSD properties to the base DT. However, corresponding dtso can be selected by default.
There was a problem hiding this comment.
Ok, thanks for clarification. Updated the commit to load the SD card as default case and overlay eMMC only when eMMC is detected and metadata is populated with the string accordingly.
This aligns with the default DIP switch position on the boards.
| qcom,qcs9075-iot-subtype1-sdcard \ | ||
| qcom,qcs9075v2-iot-subtype1-sdcard \ | ||
| " | ||
| FIT_DTB_COMPATIBLE[lemans-evk+lemans-evk-ifp-mezzanine+lemans-evk-emmc] = " \ |
There was a problem hiding this comment.
Can there be a non-ifp board with eMMC?
There was a problem hiding this comment.
For LeMans EVK, the eMMC is present on ifp mezz board, so non-ifp board with eMMC is not possible.
There was a problem hiding this comment.
Is it explained in the commit message? No.
There was a problem hiding this comment.
Updated the commit message to explain the eMMC being IFP specific case.
f8ee98d to
281a5b2
Compare
Updated the commit message with problem statement. |
281a5b2 to
a70cdf7
Compare
a70cdf7 to
f943755
Compare
|
Please rebase to fix the conflicts. |
LeMans EVK board supports either eMMC or SD-card, but only one can be active at a time due to shared host controller. The storage medium is selected via a dip switch. Add the sd card and eMMC device tree overlay for the LeMans EVK to KERNEL_DEVICETREE in the iq-9075-evk machine configuration to ensure device tree coverage for LeMans sdcc storage usecase. Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
LeMans EVK can use either SD card or eMMC depending on the board configuration selected through the DIP switch. However, eMMC support is available only when the IFP mezzanine board is present, so a non-IFP eMMC configuration is not a valid hardware combination. Build the SDCC-related DTs as overlays and use metadata-based selection to pick the appropriate storage configuration for the detected board variant. This keeps the valid SD-card and IFP+eMMC combinations explicitly modeled without introducing unsupported configurations. Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
f943755 to
6849a74
Compare
|
Rebased and conflicts resolved. |
|
|
|
You changed the default but included a dtbo that is only available in our own kernel trees. |
Can you please help to understand which tree the DT changes should be merged in. Is it the linux-next where we expect the DT files to be present? On qcom-next and qcom-6.18.y branch the DT changes are merged and available. |
See |
|
With #2305 you should be able to separate what is qcom specific in the fit-dtb-compatible as well. |
LeMans EVK board supports either eMMC or SD-card, but only one can be
active at a time due to shared host controller. The storage medium is
selected via a dip switch.
Enable metadata based selection for eMMC and SD card as overlays to support both the medium based on the DIP switch selection on the EVK board.