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

Commit ce01805a authored by Luis R. Rodriguez's avatar Luis R. Rodriguez Committed by John W. Linville
Browse files

ath9k_hw: add LDPC support for AR9003

parent 0a56bd0a
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -330,7 +330,8 @@ static void ar9003_hw_set11n_txdesc(struct ath_hw *ah, void *ds,
		| (flags & ATH9K_TXDESC_EXT_ONLY ? AR_ExtOnly : 0)
		| (flags & ATH9K_TXDESC_EXT_AND_CTL ? AR_ExtAndCtl : 0);

	ads->ctl17 = SM(keyType, AR_EncrType);
	ads->ctl17 = SM(keyType, AR_EncrType) |
		     (flags & ATH9K_TXDESC_LDPC ? AR_LDPC : 0);
	ads->ctl18 = 0;
	ads->ctl19 = AR_Not_Sounding;

+1 −1
Original line number Diff line number Diff line
@@ -2088,7 +2088,7 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah)
	}

	if (AR_SREV_9300_20_OR_LATER(ah)) {
		pCap->hw_caps |= ATH9K_HW_CAP_EDMA;
		pCap->hw_caps |= ATH9K_HW_CAP_EDMA | ATH9K_HW_CAP_LDPC;
		pCap->rx_hp_qdepth = ATH9K_HW_RX_HP_QDEPTH;
		pCap->rx_lp_qdepth = ATH9K_HW_RX_LP_QDEPTH;
		pCap->rx_status_len = sizeof(struct ar9003_rxs);
+1 −0
Original line number Diff line number Diff line
@@ -179,6 +179,7 @@ enum ath9k_hw_caps {
	ATH9K_HW_CAP_4KB_SPLITTRANS             = BIT(16),
	ATH9K_HW_CAP_EDMA			= BIT(17),
	ATH9K_HW_CAP_RAC_SUPPORTED		= BIT(18),
	ATH9K_HW_CAP_LDPC			= BIT(19),
};

enum ath9k_capability_type {
+2 −0
Original line number Diff line number Diff line
@@ -264,6 +264,7 @@ struct ath_desc {
#define ATH9K_TXDESC_VMF		0x0100
#define ATH9K_TXDESC_FRAG_IS_ON 	0x0200
#define ATH9K_TXDESC_LOWRXCHAIN		0x0400
#define ATH9K_TXDESC_LDPC		0x00010000

#define ATH9K_RXDESC_INTREQ		0x0020

@@ -413,6 +414,7 @@ struct ar5416_desc {
#define AR_EncrType         0x0c000000
#define AR_EncrType_S       26
#define AR_TxCtlRsvd61      0xf0000000
#define AR_LDPC             0x80000000

#define AR_2040_0           0x00000001
#define AR_GI0              0x00000002