Re:Re: Re: [PATCH] bus: mhi: host: Add firehose support for Foxconn SDX24/SDX55/SDX65

From: Slark Xiao
Date: Mon Jul 15 2024 - 02:27:31 EST



At 2024-07-15 14:16:57, "Dmitry Baryshkov" <dmitry.baryshkov@xxxxxxxxxx> wrote:
>On Mon, 15 Jul 2024 at 08:46, Slark Xiao <slark_xiao@xxxxxxx> wrote:
>>
>>
>> At 2024-07-13 23:09:47, "Dmitry Baryshkov" <dmitry.baryshkov@xxxxxxxxxx> wrote:
>> >On Tue, Jul 09, 2024 at 09:58:18AM GMT, Slark Xiao wrote:
>> >> Since we implement the FIREHOSE channel support in foxconn mhi
>> >> channels, that means each product which use this channel config
>> >> would support FIREHOSE. But according to the trigger_edl feature,
>> >> we need to enable it by adding '.edl_trigger = true' in device
>> >> info struct.
>> >> Also, we update all edl image path from 'qcom' to 'fox' in case of
>> >> conflicting with other vendors.
>> >
>> >Separate patches please. Also don't use "we", just an imerative style:
>> >do this and that.
>> >
>>
>> Do you mean use 2 patches (1 for enabling trigger edl and 1 for
>> modifying path)? Though these changes are aimed to make
>> firehose download successfully.
>
>Yes. "Do this. Also do that" is usually a sign that the patch should be split.

Will do a update in next version.

>
>>
>> >>
>> >> Signed-off-by: Slark Xiao <slark_xiao@xxxxxxx>
>> >> ---
>> >> drivers/bus/mhi/host/pci_generic.c | 20 ++++++++++++++------
>> >> 1 file changed, 14 insertions(+), 6 deletions(-)
>> >>
>> >> diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c
>> >> index 14a11880bcea..440609b81e57 100644
>> >> --- a/drivers/bus/mhi/host/pci_generic.c
>> >> +++ b/drivers/bus/mhi/host/pci_generic.c
>> >> @@ -433,8 +433,8 @@ static const struct mhi_controller_config modem_foxconn_sdx72_config = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_sdx55_info = {
>> >> .name = "foxconn-sdx55",
>> >> - .fw = "qcom/sdx55m/sbl1.mbn",
>> >> - .edl = "qcom/sdx55m/edl.mbn",
>> >> + .edl = "fox/sdx55m/prog_firehose_sdx55.mbn",
>> >
>> >qcom/sdx55m/foxconn/prog_firehose_sdx55.mbn
>>
>> what's your opinion?Mani
>>
>> >
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -444,8 +444,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_sdx55_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_t99w175_info = {
>> >> .name = "foxconn-t99w175",
>> >> - .fw = "qcom/sdx55m/sbl1.mbn",
>> >> - .edl = "qcom/sdx55m/edl.mbn",
>> >> + .edl = "fox/sdx55m/prog_firehose_sdx55.mbn",
>> >
>> >Is it the same file as the one mentioned in the previous chunk or is it
>> >different?
>> >
>>
>> They are same for same chip, though we have some variants.
>
>Please excuse me, I can't fully understand. So are the files the same or not?
>
>There is a simple mental experiment regarding the file names: you
>should be able to have a single host rootfs, which supports working
>with all of your modems at the same time, without modifications.
>So if modem A and modem B might use file foo.bar and the file is the
>same for all SDX55 modems, it's fine to have it in qcom/sdx55m/ or in
>qcom/sdx55m/foxconn. If it is different depending on the end-device,
>it should go to the qcom/sdx55m/foxconn/devname/ .
>
For all Foxconn devices designed based on same chip, they can use same
edl file. This EDL file is a common image of whole FIREHOSE image package
of difference variants. The difference of Foxconn SDX55 modem A and
Foxconn SDX55 modem B is APPS image and Modem image. The EDL
image is a file for putting device into EDL mode.
So I prefer to use "qcom/sdx55m/foxconn" since Foxconn's device are
different with other vendors which provide sdx55 devices as well.

>>
>> >If they are different, then, please,
>> >
>> >qcom/sdx55m/foxconn/t99w175/prog_firehose_sdx55.mbn
>> >
>> >
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -455,8 +455,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_t99w175_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_dw5930e_info = {
>> >> .name = "foxconn-dw5930e",
>> >> - .fw = "qcom/sdx55m/sbl1.mbn",
>> >> - .edl = "qcom/sdx55m/edl.mbn",
>> >> + .edl = "fox/sdx55m/prog_firehose_sdx55.mbn",
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -466,6 +466,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_dw5930e_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_t99w368_info = {
>> >> .name = "foxconn-t99w368",
>> >> + .edl = "fox/sdx65m/prog_firehose_lite.elf",
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -475,6 +477,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_t99w368_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_t99w373_info = {
>> >> .name = "foxconn-t99w373",
>> >> + .edl = "fox/sdx65m/prog_firehose_lite.elf",
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -484,6 +488,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_t99w373_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_t99w510_info = {
>> >> .name = "foxconn-t99w510",
>> >> + .edl = "fox/sdx24m/prog_firehose_sdx24.mbn",
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> @@ -493,6 +499,8 @@ static const struct mhi_pci_dev_info mhi_foxconn_t99w510_info = {
>> >>
>> >> static const struct mhi_pci_dev_info mhi_foxconn_dw5932e_info = {
>> >> .name = "foxconn-dw5932e",
>> >> + .edl = "fox/sdx65m/prog_firehose_lite.elf",
>> >> + .edl_trigger = true,
>> >> .config = &modem_foxconn_sdx55_config,
>> >> .bar_num = MHI_PCI_DEFAULT_BAR_NUM,
>> >> .dma_data_width = 32,
>> >> --
>> >> 2.25.1
>> >>
>> >
>> >--
>> >With best wishes
>> >Dmitry
>
>
>
>--
>With best wishes
>Dmitry