2013-12-16 10 views
8

मैं एक एम्बेडेड लिनक्स किट के साथ काम कर रहा हूं जो यू-बूट चला रहा है। सबकुछ ठीक से बूट करने के लिए, मुझे कुछ पर्यावरण चर को संशोधित करना था और उन्हें 'saveenv' कमांड के साथ स्टोर करना था।मैं यू-बूट से पहले सहेजे गए पर्यावरण चर को कैसे साफ़ करूं?

अब मैं वापस जाना चाहता हूं और देख रहा हूं कि डिफ़ॉल्ट क्या थे, सत्यापित करें कि मुझे पता है कि वास्तव में क्या बदला गया था, और उन डिफ़ॉल्टों को बदलने का एक तरीका पता चला ताकि उत्पादन में प्रत्येक इकाई को व्यक्तिगत रूप से बूट करने की आवश्यकता न हो और संशोधित।

क्या कोई सहेजा गया डेटा साफ़ करने के लिए यू-बूट बताने का कोई तरीका है ताकि मैं देख सकूं कि डिफ़ॉल्ट क्या हैं? फ़्लैश प्रकार QSPI है यदि इससे कोई फर्क पड़ता है।

+2

यू-बूट पर्यावरण क्षेत्र 32-बिट सीआरसी के साथ मान्य है, इसलिए यदि आप इसे घुमाते हैं, तो केवल एक बाइट गैर-वोल्टाइल स्टोरेज में करेगा, तो यू-बूट स्टार्टअप पर अपनी डिफ़ॉल्ट सेटिंग्स पर वापस आ जाएगा। – sawdust

उत्तर

13

अपने किट पर,

help env 

कोशिश करते हैं और "env डिफ़ॉल्ट" के लिए देखो।

env default [-f] var [...] - [forcibly] reset variable(s) to their default values 

ऐसा लगता है कि आप क्या देख रहे हैं।

env default -a 

एक गैर-परिवर्तनकारी परिवर्तन करता है, तो "printenv" डिफ़ॉल्ट दिखाता है।

डिफ़ॉल्ट बदलने के लिए, आप अपने यू-बूट.बिन को परिवर्तनों के साथ पुनर्निर्माण करेंगे। CONFIG_EXTRA_ENV_SETTINGS तक।

+0

मुझे कॉन्फ़िगरेशन मिला ./u-boot/include/configs/board-vendor.h.template। हालांकि, CONFIG_EXTRA_ENV_SETTINGS के लिए उस अनुभाग में, मुझे चीज़ें दिखाई देती हैं: "loadaddr = @ nstart @ \ 0" क्या आपको पता है कि 'nstart' और अन्य समान चर सेट किए गए हैं? यदि बेहतर तरीका है तो मैं उन्हें सिर्फ एक संख्या के साथ प्रतिस्थापित नहीं करना चाहूंगा। – KyleL

+0

वर्तमान यू-बूट में बोर्ड-विक्रेता नहीं लगता है, और मैं वैरिएबल सिंटैक्स @nstart, माफ करना नहीं पहचानता। –

+0

यह मेरे किट (Xilinx Petalinux का उपयोग कर AVnet Zedboard) के लिए कुछ विशिष्ट होना चाहिए। सहायता के लिए धन्यवाद! – KyleL

0

उन्हें फ्लैश से निकाले बिना डिफ़ॉल्ट वार्स का उपयोग करने के

env default -a 
यू-बूट भीतर

पर अमल और उसके बाद $bootcmd निष्पादित। Joe Kul का समाधान।

erase the vars from the SPI flash करने के लिए यू-बूट भीतर

run eraseenv 

पर अमल और उसके बाद रिबूट।

संबंधित मुद्दे