Commit 1bb4c2da4775329bcf5811616fc8f0ce78ee2121
1 parent
c3ee230e
Compile bootcode.bin and start.elf into rpiboot
This helps avoid picking up the wrong files when msd files have already been installed as a debian package
Showing
2 changed files
with
15 additions
and
8 deletions
Makefile
main.c
| ... | ... | @@ -5,6 +5,9 @@ |
| 5 | 5 | |
| 6 | 6 | #include <unistd.h> |
| 7 | 7 | |
| 8 | +#include "msd/bootcode.h" | |
| 9 | +#include "msd/start.h" | |
| 10 | + | |
| 8 | 11 | int signed_boot = 0; |
| 9 | 12 | int verbose = 0; |
| 10 | 13 | int loop = 0; |
| ... | ... | @@ -410,9 +413,11 @@ FILE * check_file(char * dir, char *fname) |
| 410 | 413 | |
| 411 | 414 | if(fp == NULL) |
| 412 | 415 | { |
| 413 | - strcpy(path, "/usr/share/rpiboot/msd/"); | |
| 414 | - strcat(path, fname); | |
| 415 | - fp = fopen(path, "rb"); | |
| 416 | + if(strcmp(fname, "bootcode.bin") == 0) | |
| 417 | + fp = fmemopen(msd_bootcode_bin, msd_bootcode_bin_len, "r"); | |
| 418 | + else | |
| 419 | + if(strcmp(fname, "start.elf") == 0) | |
| 420 | + fp = fmemopen(msd_start_elf, msd_start_elf_len, "r"); | |
| 416 | 421 | } |
| 417 | 422 | |
| 418 | 423 | return fp; |
| ... | ... | @@ -563,10 +568,6 @@ int main(int argc, char *argv[]) |
| 563 | 568 | #endif |
| 564 | 569 | |
| 565 | 570 | |
| 566 | - // Default to standard msd directory | |
| 567 | - if(directory == NULL) | |
| 568 | - directory = "msd"; | |
| 569 | - | |
| 570 | 571 | second_stage = check_file(directory, "bootcode.bin"); |
| 571 | 572 | if(second_stage == NULL) |
| 572 | 573 | { | ... | ... |