आपको कर्नेल स्रोत उपनिर्देशिका की Kconfig फ़ाइल में कॉन्फ़िगरेशन विकल्प जोड़ने की आवश्यकता है जिसमें आपका डिवाइस ड्राइवर रखा जाएगा। आपको उस निर्देशिका के मेकफ़ाइल में लाइन जोड़ने की भी आवश्यकता है। जाहिर है आपको स्रोत फ़ाइलों को उस निर्देशिका में कॉपी करने की आवश्यकता है।
के बाद से अपने ड्राइवर एआरएम वास्तुकला पर निर्भर करता है, Kconfig में, आप में से एक विकल्प लगाने की जरूरत है की तरह 'पर निर्भर करता है':
config SND_ARMAACI
tristate "ARM PrimeCell PL041 AC Link support"
depends on ARM_AMBA
और अपने Makefile
obj-$(CONFIG_SND_ARMAACI) += snd-aaci.o
snd-aaci-objs := aaci.o
की तरह दिखाई देगा तो अब जब आप अपने कर्नेल स्रोत पेड़ में मेनकॉन्फिग बनाते हैं, तो आपको कॉन्फ़िगरेशन में कॉन्फ़िगर किया गया कॉन्फ़िगरेशन विकल्प मिलेगा और आप इसे कर्नेल में संकलित करने के लिए चुन सकते हैं या मॉड्यूल के रूप में निर्मित या बिल्कुल संकलित नहीं कर पाएंगे।
आपके ड्राइवर का उपप्रणाली निर्देशिका में उदाहरणों की खोज करें।
आपके उत्तर के लिए धन्यवाद। मैंने इसे समझ लिया और जैसा आपने उल्लेख किया वही किया। लेकिन अब एक नई समस्या है। जब मैं अपने ड्राइवर कोड को मॉड्यूल के रूप में संकलित करता हूं और लिनक्स कर्नेल में इन्सोड करता हूं, तो मैं अपने डिवाइस को/dev/के अंतर्गत बनाया जा सकता हूं। लेकिन जब मैं अपना कोड कर्नेल पेड़ में डालता हूं और कर्नेल संकलित करता हूं तो मैं अपने डिवाइस को/dev के नीचे नहीं देख सकता। कृपया ध्यान दें कि मैं डिवाइस नोड बनाने के लिए class_create() और device_create() का उपयोग कर रहा हूं। इसके अलावा मैंने ऊपर वर्णित तरीके से कर्नेल पेड़ में अपना कोड जोड़ा है। – Ravi
क्या आपने ड्राइवर को बनाया है। यानी ड्राइवर को हाइलाइट करें और 'वाई' दबाएं ताकि यह तारांकन के साथ उपसर्ग हो: [*] – microMolvi