comparison loadtools/romdump.c @ 575:cef70d53fc5e

loadtools: new -P boot control mechanism implemented
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 02 Feb 2020 20:01:22 +0000
parents aba969153d20
children ecea01f65146
comparison
equal deleted inserted replaced
574:aba969153d20 575:cef70d53fc5e
42 extern int optind; 42 extern int optind;
43 int c; 43 int c;
44 struct baudrate *br; 44 struct baudrate *br;
45 char *targv[2]; 45 char *targv[2];
46 46
47 while ((c = getopt(argc, argv, "a:b:B:c:C:h:H:i:")) != EOF) 47 while ((c = getopt(argc, argv, "a:b:B:c:C:h:H:i:P:")) != EOF)
48 switch (c) { 48 switch (c) {
49 case 'a': 49 case 'a':
50 iramimage.filename = optarg; 50 iramimage.filename = optarg;
51 continue; 51 continue;
52 case 'b': 52 case 'b':
71 read_hwparam_file_fullpath(optarg); 71 read_hwparam_file_fullpath(optarg);
72 continue; 72 continue;
73 case 'i': 73 case 'i':
74 set_beacon_interval(optarg); 74 set_beacon_interval(optarg);
75 continue; 75 continue;
76 case 'P':
77 if (find_bootctrl_entry(optarg) < 0)
78 exit(1); /* error msg already printed */
79 continue;
76 case '?': 80 case '?':
77 default: 81 default:
78 usage: fprintf(stderr, 82 usage: fprintf(stderr,
79 "usage: fc-dspromdump [options] ttyport output-file\n"); 83 "usage: fc-dspromdump [options] ttyport output-file\n");
80 exit(1); 84 exit(1);
85 output_filename = argv[optind+1]; 89 output_filename = argv[optind+1];
86 if (!iramimage.filename) 90 if (!iramimage.filename)
87 iramimage.filename = default_dspdump_image; 91 iramimage.filename = default_dspdump_image;
88 92
89 open_serial_port(target_ttydev); 93 open_serial_port(target_ttydev);
94 pwon_if_needed();
90 perform_compal_stage(); 95 perform_compal_stage();
91 perform_romload(); 96 perform_romload();
92 /* dspdump target program should be running now */ 97 /* dspdump target program should be running now */
93 if (tpinterf_pass_output(1) < 0) 98 if (tpinterf_pass_output(1) < 0)
94 exit(1); 99 exit(1);