ฉันจะระบุได้อย่างไรจากบรรทัดคำสั่งที่ฉันได้ทำการแก้ไข


16

ฉันเพิ่งวิ่ง

cat /proc/cpuinfo

บนกระดานของฉัน ฉันได้รับ "การแก้ไข: 1000002" ฉันไม่พบการพูดถึงเวอร์ชั่นใดของบอร์ดนี้

ความช่วยเหลือใด ๆ


1
คุณเปลี่ยนความหมายของคำถาม
Alex Chamberlain

@AlexChamberlain: นั่นคือสิ่งที่ฉันหมายถึงเมื่อฉันถามคำถาม
John Smith

@JohnSmith ฉันจะแนะนำการย้อนกลับและถามคำถามนี้เป็นคำถามแยกต่างหากเนื่องจาก AlexChamberlain บอกว่าคุณได้เปลี่ยนความหมายของคำถามและคำถามนี้ไม่ได้ซิงค์กับคำตอบอีกต่อไป
Steve Robillard

เรียน John Smith โปรดอย่าแก้ไขคำถามของคุณเป็นคำถามใหม่ ใช้ปุ่มถามคำถามแทนถามคำถามใหม่ ในระหว่างนี้ฉันจะย้อนกลับคำถามนี้ ขอบคุณ!

เกี่ยวข้อง: raspberrypi.stackexchange.com/q/61699/19949
Ghanima

คำตอบ:


13

ตามข้อมูลที่โพสต์ซึ่งเป็นส่วนหนึ่งของการประกาศการปรับปรุงบอร์ดที่จะเกิดขึ้นคุณมีบอร์ดการแก้ไขโมเดล B 1.0

รหัสรุ่นและการแก้ไข (S)
รุ่น B Revision 1.0 2
รุ่น B Revision 1.0 + ECN0001 (ไม่มีฟิวส์, ลบ D14) 3
รุ่น B Revision 2.0 4, 5, 6

รหัสคือตัวเลขหลักสุดท้ายของตัวเลขที่ส่งคืนโดย

cat /proc/cpuinfo 

(อย่างน้อยก็จนกว่าพวกเขาจะมีการแก้ไขมากกว่า 9 ครั้ง)


ดังนั้นด้วย 1 ที่จุดเริ่มต้นคืออะไร?
John Smith

@ JohnSmith ฉันไม่รู้ แต่ถ้าถูกบังคับให้ต้องเดาฉันจะบอกว่าตามกราฟมันระบุรุ่น (B ในกรณีนี้)
Steve Robillard

มีความคิดเห็นที่นี่ซึ่งผู้ใช้บอกเป็นนัยว่า 1 คือ "overvolt bit"
nickgrim

@nickgrim: นั่นคือคำตอบที่ฉันกำลังมองหา คุณสามารถใส่และตอบได้ไหม?
John Smith

ใช่ว่า 1 คือบิต "การรับประกันเป็นโมฆะ"
David Schwartz


1

มีเอกสารมากมายเกี่ยวกับเขตการแก้ไขจาก/proc/cpuinfoบน raspberrypi.org ทุกวันนี้:

https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md

เอกสารนี้มีทั้งรหัสรุ่นปรับปรุงใหม่ (เพิ่มขึ้น) (ค่า 0x0001 ถึง 0x0015 ใช้สำหรับรุ่น Rpi 1 ดั้งเดิม) และรูปแบบที่ใหม่กว่า (แนะนำกับ Rpi 2) โดยที่บิตของรหัสเข้ารหัสพารามิเตอร์เช่นผู้ผลิตขนาดหน่วยความจำ และประเภทคณะกรรมการ นอกจากนี้ยังมีรายการรหัสการแก้ไขทั้งหมดที่ใช้งานอยู่ในปัจจุบัน

หน้าใดที่ไม่มีเอกสารคือการแก้ไข (แบบเก่า) อาจมีส่วนนำหน้า "1000" ที่ระบุว่าบอร์ดได้ใช้ไฟแรงดันเกิน ฉันสงสัยว่าสำหรับการแก้ไขในรูปแบบใหม่จะใช้คำนำหน้าที่คล้ายกัน (แต่สั้นกว่าเนื่องจากการแก้ไขมีความยาวมากกว่า) ข้อมูลเกี่ยวกับคำนำหน้านี้รวมถึงรายการรุ่นที่มีรายละเอียดบางอย่างเกี่ยวกับความแตกต่างที่โดดเด่นสามารถดูได้ที่https://elinux.org/RPi_HardwareHistory

นอกจากนี้ยังมีเอกสารในหน้านั้นใน raspberrypi.orgคือคุณสามารถค้นหา descriptor ที่มนุษย์สามารถอ่านได้ของโมเดลปัจจุบันใน/sys:

$ cat /sys/firmware/devicetree/base/model 
Raspberry Pi Model B Plus Rev 1.2

ในการเริ่มต้น bootloader (หรือเคอร์เนล) ตรวจสอบสิ่งที่บอร์ดกำลังทำงานอยู่โดยอัตโนมัติแล้วโหลดไฟล์ "devicetree" ที่เหมาะสมสำหรับบอร์ดนั้น devicetree นี้อธิบายวิธีการเชื่อมต่อฮาร์ดแวร์ทั้งหมดและใช้ในการโหลดไดรเวอร์ที่เหมาะสม นอกจากนี้ devicetree นี้ยังมีคุณสมบัติ "model" ด้วย ฉันจะบอกว่านี่เป็นคุณสมบัติที่คุณกำลังอ่านจริงด้วยคำสั่งข้างต้นยกเว้นว่าสตริงรุ่นที่กำหนดไว้ใน devicetree นั้นแตกต่างกันเล็กน้อย (ใช้ "+" มากกว่า "Plus" และไม่มีสตริงการแก้ไข) ตัวอย่างเช่นไฟล์ devicetree ที่ผมคิดว่าเป็นของทีโอทีออกคำสั่งข้างต้นเป็นbcm2708-RPI-B-plus.dts นอกจากนี้ยังมีรุ่น bcm2835 แต่ไม่มีในรุ่นของฉัน/bootและ bcm2708 dts เรียกร้องความเข้ากันได้กับ bcm2835 ฉันพยายามแยกdtbไฟล์ที่เกี่ยวข้องออกจาก/bootแต่ก็ให้สตริงที่มี "+" และไม่มีการแก้ไขดังนั้นฉันจึงไม่แน่ใจว่าที่สตริงของโมเดลนี้มาจากที่ใด (และที่สำคัญกว่านั้นคือค่าทั้งหมดที่เป็นไปได้) ดังนั้นบางที bootloader จะเรียก devicetree จากที่อื่นหรือมี builtin อยู่ที่ไหนสักแห่ง

ฉันเพิ่งสังเกตเห็นว่า/proc/cpuinfoมีฟิลด์ "Model" ซึ่งฉันสงสัยว่าอาจมีแหล่งที่มาเดียวกัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.