Tôi đang tự hỏi trình tự khởi động của Raspberry Pi là gì trong một thiết lập điển hình (giả sử là NOOBS), từ ứng dụng nguồn (hoặc thiết lập lại ấm nếu khác biệt) cho đến khi xuất hiện logo; hoặc nơi được mô tả.
Bên cạnh một bức tranh chung cần thiết nhất về trình tự đó, tôi quan tâm nhất ở giai đoạn đầu:
- Vectơ thiết lập lại cho CPU ARM là gì và được xác định như thế nào / ở đâu?
- Từ bộ nhớ CPU ARM đầu tiên được tìm nạp từ bộ nhớ nào? Đó là đâu và công nghệ nào được sử dụng để lưu trữ mã này?
- Đó có phải là mã ARM32 hoặc Thumb (hoặc có lẽ là Jazelle) không? Điều đó phụ thuộc vào bit thứ tự thấp của vector thiết lập lại?
- Nguồn (hoặc tháo gỡ, hoặc kết xuất) của mã khởi động sớm đó có sẵn không? Nếu không, có gì kỹ thuật ngăn chặn việc sử dụng cổng JTAG để xác định điều đó không? Về mặt pháp lý, tôi sẵn sàng chấp nhận rủi ro tin tưởng vào sự hiểu biết của tôi về luật áp dụng ở nơi tôi sống (Pháp), đó là tôi hoàn toàn được phép phân tích máy tính của riêng mình, ít nhất là trong trường hợp không có hợp đồng rõ ràng yêu cầu không làm như vậy.
- Theo thứ tự các thiết bị ngoại vi được khởi tạo, và bằng đoạn mã nào?
- Bên cạnh CPU ARM, có một số bộ xử lý / automata đang chạy trong BCM2835, và trong phần khẳng định trình tự khởi động của nó liên quan đến CPU ARM như thế nào?
Tôi đã sẵn sàng để đi sâu vào Hướng dẫn tham khảo kỹ thuật của CPU ARM và Thiết bị ngoại vi ARM BCM2835 hoặc bất kỳ tài liệu nào khác.
Cập nhật: Sau khi đăng, tôi đã tìm thấy cái này và cái này , nói rằng GPU của BCM2835 đang hoạt động như một bậc thầy của ARM và tham gia rất nhiều vào trình tự khởi động.
4
Tất cả những gì tôi có thể nói rằng hầu hết các thông tin đó là nguồn đóng, như mã nguồn, bộ tải khởi động và phần mềm SoC .. Hiện tại không biết phân bổ. Bạn nên biết một điều. BCM là GPU ... không phải CPU. Bộ tải khởi động bắt đầu trong phần GPU, khởi chạy RAM ở đó và bàn giao cho CPU, nơi đầu tiên chúng ta có quyền truy cập vào mã nguồn ... hay còn gọi là Raspbian. Chúc may mắn. Câu hỏi này rất rộng và khó trả lời.
—
Piotr Kula
Liên quan: Điều gì xảy ra trong quá trình khởi động? . Bản sao?
—
Peter Mortensen