Hi Loic,
On 2018-04-25 19:07, Loic Poulain wrote:
Hi Balakrishna,
On 25 April 2018 at 14:16, <bgodavar@xxxxxxxxxxxxxx> wrote:
Thank you for adding me to loop, is the header size of RAM patch file
remains same for ROME < 3.2 and ROME >= 3.2, what about the header
format,
do we have same header format for different ROME versions, even
mismatch of
header will not break any execution, but it may show wrong data in
kernel
logs.
Yes, at least in my case, we just use byte 7 which was previously
'reserved':
struct edl_event_hdr {
@@ -94,7 +102,8 @@ struct tlv_type_patch {
__le32 data_length;
__u8 format_version;
__u8 signature;
- __le16 reserved1;
+ __u8 download_mode;
+ __u8 reserved1;
__le16 product_id;
__le16 rom_build;
__le16 patch_version;
Regards,
Loic
A small suggestion from my side, suppose in near future ROME <v3.2
wanted to go with new format i.e. acknowledging for last segment of RAM
patch.
then checking rom_build field may not work.
i.e.
if (le16_to_cpu(tlv_patch->rom_build) >= 0x0302)
config->dnld_mode = tlv_patch->download_mode;
i suggest you to check the byte download_mode directly and decide to
wait for ACK from SoC, for every RAM patch segment sent.
i think byte download_mode is explicitly for mode of downloading the
patch i.e. with ACK or NACK. (pls double confirm about this byte).
This is how we are doing for wcn3990 (in Add support wcn3990 patch).
Regards
Balakrishna.
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html