From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2A8733DB997 for ; Fri, 3 Jul 2026 13:49:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783086581; cv=none; b=fpw9+aiGDvrWWX40UvPaoS0F8/U6RzjdaJ58IvWJkRr7Nzrh4wtNwNzir9Huv8nsSRElRsn2UougmrsBvA8qtqn+hL5bzh0fomhUr1O1S56ym1e7fTESXVSHkvP/69GRg3CBJ3VcNlNJwoM5A6t4tSAm6ijzapaB9uPqJ55oaFM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783086581; c=relaxed/simple; bh=rLGd2Pd8MmLShYa3ZvB0OTV7Hv5Fpc+zJQhI22xOYss=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=WFvEAOiGBX4PIDBFT0wAKwZ5yoNhslkITDqQnpeu23G+JaJCwcqNqaXbj+eu8gO6FOmPXvNMv74Xs90Br7jSAs53pqiwvPPVZX+mAq06NTNB20Kw0vV2Txl/j5ZBRQGQnHif8HjIBn6DGFCRCj/uy4TaHfydPeNG4TBBY+z8znE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.b=go5yV2l9; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.b="go5yV2l9" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-493bc8fda98so6047225e9.0 for ; Fri, 03 Jul 2026 06:49:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1783086578; x=1783691378; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=cXlZR2C8x2jsfosr+k37xh2mZlyUqZwpGckjky5le04=; b=go5yV2l9GiuEig86fxuPbJaeOK559UOQbN4OiriPfZ3rKyyTk9MNgMAWoFnWZrj+0R Z3jYbYm42PIoHmAiJ9NctZSXx6VgPKsnfda550oQvqsuXqVtK2gffD0CarKvu224pde2 uA1VD7n5huLwRD/NHd+O4cSKHS01SiRgojNcAnD4/+gEHBQoOU2peyHCLmmz7f7+1W6e ac2knD8LHvy4iL95YQou2uDbnlFQfECIk9KJUBYXFn//+qeOmWtwQQ8fbeGpZSfM+g7M FWwqWZ03O032+OkZvsjFPFoq6scDNxdVqMIo1cltN4P14jmL2JGVQc/0AusgcPwoXx4D EXxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783086578; x=1783691378; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=cXlZR2C8x2jsfosr+k37xh2mZlyUqZwpGckjky5le04=; b=mf2MGUrTWULp/LFHXWCuwAfKHpxvOe3Qm8wPoaFyT4e5BQwe+pWlm/tOjD9xGKtXOU YkUzrhITQ/FyJcaCW4FAnW4T739pAw7COb+vHArlDyZxHeWODfuwJHJ8nMMuoMQY13Qn uHaXe2mIEcB260+dRUGmTWUPpgo5b1MslZV8o9AqbiC3g6sbKuyGW5Xc69Dnf3woVrfa 9oQMfRhLizGNiyNfKGmBTODM5Qv+ruH7tlu2AluWGhvsvhqVG1KLWX1ViGTJsxj68xtr CtazJNnApiwhiBlSkBx3HsFlYCnuk8GbnjuIlYo9l4wpdXR0e6QLH9h0fKcEjh0rW336 QPgQ== X-Gm-Message-State: AOJu0YwideV4fUYehBpxNcj5xI6OjZyuL88oRhnu4SCpUsna6UCIFZFe Xp9Bo411t8JktxG50cKIKh+LhKr/zGFQuxS9yMBNaaS0hBZpE81ORpkWADCBth9Bvd4= X-Gm-Gg: AfdE7cmDq/MWiptDuEE8rbRjkRufniUSA933UbqVHDMI+FPYeTlQulxW00KCKLSUtQu M6YaNNjvOfqmj99HEUNc9CT60MQMfn9q6hf+FGLPbFVI6SLqxiuoR6J7XyKUMxAxuXyGC6E9OBk Q4YQnzMASWt2hbcr3GvNzGkO2jkGS1dVckvcfySTl41nSYQjCo1jBAdUVbZ7mXVMFbjF0vZyxov ycN5dd0+Tca3xHLxH394pRgpr4riwBUSozNJNwiFxmw5QDgk+vKPc8ikfkIY7LRKRzRUosUXFhS hyIOVcRLfuO31TPxnlniQjlszRn7W1zlqqdV56EpcebUu/SKZXQKF2awqskXqvfoa7NC+SAlxaz usi30xkicitsO964maSj1tTG9EH+AqaHxpULwKOETKJkTiCuxrfq3nZXoPQPGU84VN5OHWZxmY4 V9w8lTqc90HmSDs6jHm4fx3u81+964oSy2xjoDigla/j4Mhw== X-Received: by 2002:a05:600c:19c7:b0:493:b750:bd20 with SMTP id 5b1f17b1804b1-493c3cdd21emr127140605e9.15.1783086577715; Fri, 03 Jul 2026 06:49:37 -0700 (PDT) Received: from arnold.baylibre (88-127-129-70.subs.proxad.net. [88.127.129.70]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-493bef23feasm169768685e9.2.2026.07.03.06.49.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 03 Jul 2026 06:49:35 -0700 (PDT) From: Corentin Labbe To: stf_xl@wp.pl Cc: linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org, Corentin Labbe Subject: [PATCH] net: wireless: ralink: RT2X00: init EEPROM properly Date: Fri, 3 Jul 2026 13:49:32 +0000 Message-Id: <20260703134932.3786771-1-clabbe@baylibre.com> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit I have an hostapd setup with a 01:00.0 Network controller: Ralink corp. RT2790 Wireless 802.11n 1T/2R PCIe The setup work fine on 6.18.26-gentoo It breaks on 6.18.33-gentoo (and still broken on 6.18.37) I found an hint in dmesg: On 6.18.26-gentoo I see: May 31 15:48:45 trash01 kernel: ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0003 detected On 6.18.33-gentoo I see: May 31 15:22:57 trash01 kernel: ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0006 detected The RF chipset seems badly detected. The problem was the EEPROM which was badly initialized. Probably the origin was in some PCI change but unfortunately I couldn't play to bisect/reboot often the board with this card to do it. Signed-off-by: Corentin Labbe --- drivers/net/wireless/ralink/rt2x00/rt2400pci.c | 2 +- drivers/net/wireless/ralink/rt2x00/rt2500pci.c | 2 +- drivers/net/wireless/ralink/rt2x00/rt2800pci.c | 2 +- drivers/net/wireless/ralink/rt2x00/rt61pci.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c b/drivers/net/wireless/ralink/rt2x00/rt2400pci.c index 42e21e9f303b..15073b856adf 100644 --- a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2400pci.c @@ -1429,7 +1429,7 @@ static irqreturn_t rt2400pci_interrupt(int irq, void *dev_instance) */ static int rt2400pci_validate_eeprom(struct rt2x00_dev *rt2x00dev) { - struct eeprom_93cx6 eeprom; + struct eeprom_93cx6 eeprom = {}; u32 reg; u16 word; u8 *mac; diff --git a/drivers/net/wireless/ralink/rt2x00/rt2500pci.c b/drivers/net/wireless/ralink/rt2x00/rt2500pci.c index 36ddc5a69fa4..3536a0f31117 100644 --- a/drivers/net/wireless/ralink/rt2x00/rt2500pci.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2500pci.c @@ -1555,7 +1555,7 @@ static irqreturn_t rt2500pci_interrupt(int irq, void *dev_instance) */ static int rt2500pci_validate_eeprom(struct rt2x00_dev *rt2x00dev) { - struct eeprom_93cx6 eeprom; + struct eeprom_93cx6 eeprom = {}; u32 reg; u16 word; u8 *mac; diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800pci.c b/drivers/net/wireless/ralink/rt2x00/rt2800pci.c index 14c45aba836f..853fd31d1362 100644 --- a/drivers/net/wireless/ralink/rt2x00/rt2800pci.c +++ b/drivers/net/wireless/ralink/rt2x00/rt2800pci.c @@ -108,7 +108,7 @@ static void rt2800pci_eepromregister_write(struct eeprom_93cx6 *eeprom) static int rt2800pci_read_eeprom_pci(struct rt2x00_dev *rt2x00dev) { - struct eeprom_93cx6 eeprom; + struct eeprom_93cx6 eeprom = {}; u32 reg; reg = rt2x00mmio_register_read(rt2x00dev, E2PROM_CSR); diff --git a/drivers/net/wireless/ralink/rt2x00/rt61pci.c b/drivers/net/wireless/ralink/rt2x00/rt61pci.c index d1cd5694e3c7..5dca2afb4b96 100644 --- a/drivers/net/wireless/ralink/rt2x00/rt61pci.c +++ b/drivers/net/wireless/ralink/rt2x00/rt61pci.c @@ -2298,7 +2298,7 @@ static irqreturn_t rt61pci_interrupt(int irq, void *dev_instance) */ static int rt61pci_validate_eeprom(struct rt2x00_dev *rt2x00dev) { - struct eeprom_93cx6 eeprom; + struct eeprom_93cx6 eeprom = {}; u32 reg; u16 word; u8 *mac; -- 2.53.0