क्या एथरोस ई 2400 ड्राइवरों को स्थापित करने का कोई तरीका है?


9

मेरे पास एक नया मदरबोर्ड है: MSI Z170A GAMING M5। इस मदरबोर्ड में एथेरोस किलर e2400 ईथरनेट कंट्रोलर है। जब मैं करता हूं lspci -nn, मुझे मिलता है:

03.00.0 Ethernet controller [0200]: Qualcomm Atheros Device [1969:e0a1] (rev 10)

Google को इसका उत्तर मालूम नहीं था। OpenSUSE मंच पर केवल एक समान अनसुलझी समस्या।


मैं इस पैच को अभी देख रहा हूं। टिप्पणी करें।
gmane.org/gmane.linux.network/376851

मुझे yuyichao द्वारा पोस्ट किए गए पैच दिखाई दे रहे हैं ... comments.gmane.org/gmane.linux.network/376851 लेकिन मैं इसे कैसे स्थापित करूं?
user3081568 15

अच्छा ... यह होनहार लगता है :) धैर्य रखने मैं भूसा?
डायलन वेस्ट्र

1
चूँकि मैं skylake ग्राफिक्स के कारण git कर्नेल को आज़माना चाहता हूँ, इसलिए मैंने अपना कर्नेल संकलित किया। ऊपर पैच के साथ, मैं वर्तमान में बिना किसी समस्या के किलर e2400 कंट्रोलर का उपयोग कर रहा हूं
yuyichao

@yuyichao मैं इस पैच का उपयोग कैसे करूँ?
पीताज

जवाबों:


12

मैं अपने Skylake MSI Z170A GAMING M5 बिल्ड से अपने हत्यारे E2400 का उपयोग करके Ubuntu Gnome पर पोस्ट कर रहा हूं! नीचे (अधिक या कम) सरल चरण हैं जो मैंने इसे काम करने के लिए उपयोग किया था।

पहले हम Ubuntu के कुछ निर्देशों का पालन करेंगे

sudo apt-get build-dep linux-image-$(uname -r)
sudo apt-get install git
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-vivid.git

यह git URL 15.04 Vivid Vervet के लिए है। आप अपने रिलीज़ कोड के साथ ज्वलंत की जगह लेंगे। वह अंतिम चरण थोड़ा समय ले सकता है, इसलिए आराम करें और इस ज्ञान को आधार बनाएं कि आपका E2400 जल्द ही काम करने लगेगा।

एक बार जब यह समाप्त हो जाता है, तो हम अपने E2400 को शामिल करने के लिए alx ड्राइवर को संशोधित करेंगे (अपनी पसंद के टेक्स्ट एडिटर का उपयोग करने के लिए स्वतंत्र महसूस करें)

cd ubuntu-vivid/drivers/net/ethernet/atheros/alx/
sudo -H gedit reg.h

ALX_DEV_ID_E2200 को परिभाषित करने वाली रेखा ढूंढें (आप केवल E2200 के लिए खोज कर सकते हैं), और इसे नीचे जोड़ें

#define ALX_DEV_ID_E2400                0xe0a1

आगे,

sudo -H gedit main.c

फिर से, E2200 खोजें, और लाइनों को { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2200), .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG },जोड़ने के बाद

{ PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2400),
  .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG },

अब, जो कुछ बचा है, वह ड्राइवरों को बनाना और स्थापित करना है

make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install
sudo modprobe -r alx
sudo depmod
sudo modprobe -v alx

नोट: आपको अंतिम पंक्ति को निष्पादित करने के बाद, आपको मॉड्यूल लोड को देखना चाहिए ...extra/alx.koयदि आप नहीं करते हैं, तो आपको alx.koउस नाम को बदलने alx.ko.bakया किसी चीज़ को खोजने की आवश्यकता हो सकती है , और अंतिम तीन आदेशों को फिर से चलाएं।

आपका E2400 अब आपके नेटवर्किंग आनंद के लिए दिखाई देना चाहिए!


हम अभी भी 1 दिन बाद प्रतीक्षा कर रहे हैं, इसलिए यह एक पूर्ण उत्तर (अभी तक) नहीं है, इसलिए मैंने इसे हटाए जाने के लिए मतदान किया ...
Fabby

अंत में इसे आजमाने का मौका मिला। चरण दर चरण निर्देशों को शामिल करने के लिए मेरे उत्तर को अपडेट करें। एक आकर्षण की तरह काम करता है :)
बैटलडिंगो

आप एक जीवन रक्षक है।
ऑस्टिन प्रार्थना

FYI करें - उबंटू ग्नोम 15.10 पर बॉक्स से बाहर काम किया
बैटलडिंगो

जब आपका नेटवर्क कार्ड काम नहीं कर रहा हो तो आप एक sudo apt-get install कैसे कर सकते हैं?
बायोशार्क

7

Ubuntu 14.04 (भरोसेमंद) के लिए अपडेट करें:

Chili555 की टिप्पणी के अनुसार इसी तरह के सवाल पर कि डिवाइस उबंटू 16.04 के साथ भेजे गए कर्नेल द्वारा समर्थित है। सौभाग्य से एक ही कर्नेल में Ubuntu 14.04 में LTS / HWE अपग्रेड के माध्यम से अपग्रेड किया जा सकता है:

  1. कर्नेल पैकेज स्थापित करें:

    sudo apt install linux-generic-lts-xenial
    
  2. मशीन को रिबूट करें। नए स्थापित कर्नेल को ग्रब के लिए नया डिफ़ॉल्ट बूट विकल्प होना चाहिए।

अधिक जानकारी: उबंटू विकी - एलटीएस इनेबल स्टैक


मूल पोस्ट (16.04 से पहले अन्य उबंटू रिलीज पर लागू)

उपयुक्त पैच को लागू करने और प्रभावित कर्नेल मॉड्यूल को फिर से स्थापित करने के लिए, आप मौजूदा डिवाइस ड्राइवरों के साथ नए PCI डिवाइस आईडी ( प्रलेखन ) को पंजीकृत करने में सक्षम हो सकते हैं :

इस फ़ाइल में एक डिवाइस आईडी लिखने से गतिशील रूप से एक नए डिवाइस आईडी को पीसीआई डिवाइस ड्राइवर में जोड़ने का प्रयास किया जाएगा। यह ड्राइवर को अधिक हार्डवेयर का समर्थन करने की अनुमति दे सकता है जो संकलन समय पर ड्राइवर के स्थिर डिवाइस आईडी समर्थन तालिका में शामिल था। डिवाइस आईडी के प्रारूप है: VVVV DDDD SVVV SDDD CCCC MMMM PPPP। वो है वेंडर आईडी, डिवाइस आईडी, सबसिस्टम वेंडर आईडी, सबसिस्टम डिवाइस आईडी, क्लास, क्लास मास्क और प्राइवेट ड्राइवर डेटा। विक्रेता आईडी और डिवाइस आईडी फ़ील्ड आवश्यक हैं, बाकी वैकल्पिक हैं। सफलतापूर्वक एक आईडी जोड़ने पर, ड्राइवर डिवाइस के लिए जांच करेगा और इसे बांधने का प्रयास करेगा। उदाहरण के लिए:

# echo "8086 10f5" > /sys/bus/pci/drivers/foo/new_id

तो इस मामले में, आप के साथ अच्छा होना चाहिए:

sudo modprobe alx
echo 1969 e0a1 | sudo tee /sys/bus/pci/drivers/alx/new_id >/dev/null

मैंने टिप्पणियों में उल्लिखित पैचalx से ड्राइवर के नाम का अनुमान लगाया । यदि यह सही ड्राइवर मॉड्यूल नाम नहीं है, तो विकल्प की तलाश करें।


जैसा कि आप (लगभग) एक प्रतिष्ठा 1 उपयोगकर्ता हैं: यदि यह आपके प्रश्न का उत्तर देता है, तो इसे स्वीकार करने के लिए इस पाठ के बाईं ओर "0" के नीचे ग्रे the पर क्लिक करना न भूलें , जिसका अर्थ है "हां, यह उत्तर है वैध "!
डेविड फोस्टरस्टर

अच्छा समाधान है कि किसी भी ड्राइवर का निर्माण शामिल नहीं है! रीसेट की आवश्यकता भी नहीं थी।
बेनबी

इसके अलावा, मैं sudo chmod 777 /sys/bus/pci/drivers/alx/new_idपहले था। फिर मुझे sudoअन्य सभी कमांड के लिए भी उपयोग करना पड़ा ।
बेन्ब

2
जब तक आप नहीं जानते कि आप क्या कर रहे हैं, तब तक कर्नेल मापदंडों की पहुँच अनुमतियाँ विश्व-योग्य तक न बदलें! इसके बजाय आपको इन फ़ाइलों को सुपर-उपयोगकर्ता के रूप में या तो लिखना चाहिए) पहले एक सुपर उपयोगकर्ता शेल शुरू करना ( sudo -i) और फिर ऊपर दिए गए कमांड या बी) का उपयोग sudo modprobe alx && echo 1969 e0a1 | sudo tee /sys/bus/pci/drivers/alx/new_idकरके फ़ाइल को सुपर-उपयोगकर्ता के रूप में खोलना।
डेविड फ़ॉस्टर 01

2

मैंने 4.4 कर्नेल से स्रोत कोड का उपयोग करके इसका DKMS संस्करण बनाया

निर्देश हैं:

sudo apt-get install git dkms build-essential linux-headers-generic
git clone https://github.com/jeremyb31/alx.git
sudo dkms add ./alx
sudo dkms build alx/2.0
sudo dkms install alx/2.0

रीबूट

मैंने इसे पुराने 3.13.0-24 कर्नेल में परीक्षण किया है और यह 4.2 के साथ काम करता है जो सही ढंग से बताता है कि यह ठीक वैसा ही है जैसे कर्नेल में मौजूद मॉड्यूल

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.