Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a2e1be33 authored by Mohammed Shafi Shajakhan's avatar Mohammed Shafi Shajakhan Committed by Kalle Valo
Browse files

ath6kl: Add a hardware flag for SDIO CRC error workaround



Make use of SDIO CRC error workaround hardware flag and avoid
target revision checks.

Signed-off-by: default avatarMohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
parent 171fe768
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -152,6 +152,7 @@ enum ath6kl_hw_flags {
	ATH6KL_HW_64BIT_RATES		= BIT(0),
	ATH6KL_HW_AP_INACTIVITY_MINS	= BIT(1),
	ATH6KL_HW_MAP_LP_ENDPOINT	= BIT(2),
	ATH6KL_HW_SDIO_CRC_ERROR_WAR	= BIT(3),
};

#define ATH6KL_FW_API2_FILE "fw-2.bin"
+3 −4
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ static const struct ath6kl_hw hw_list[] = {
		.reserved_ram_size		= 6912,
		.refclk_hz			= 26000000,
		.uarttx_pin			= 8,
		.flags				= 0,
		.flags				= ATH6KL_HW_SDIO_CRC_ERROR_WAR,

		/* hw2.0 needs override address hardcoded */
		.app_start_override_addr	= 0x944C00,
@@ -68,7 +68,7 @@ static const struct ath6kl_hw hw_list[] = {
		.refclk_hz			= 26000000,
		.uarttx_pin			= 8,
		.testscript_addr		= 0x57ef74,
		.flags				= 0,
		.flags				= ATH6KL_HW_SDIO_CRC_ERROR_WAR,

		.fw = {
			.dir		= AR6003_HW_2_1_1_FW_DIR,
@@ -1431,8 +1431,7 @@ static int ath6kl_init_upload(struct ath6kl *ar)
		return status;

	/* WAR to avoid SDIO CRC err */
	if (ar->version.target_ver == AR6003_HW_2_0_VERSION ||
	    ar->version.target_ver == AR6003_HW_2_1_1_VERSION) {
	if (ar->hw.flags & ATH6KL_HW_SDIO_CRC_ERROR_WAR) {
		ath6kl_err("temporary war to avoid sdio crc error\n");

		param = 0x28;