comparison loadtools/sertool.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
24 { 24 {
25 extern char *optarg; 25 extern char *optarg;
26 extern int optind; 26 extern int optind;
27 int c; 27 int c;
28 28
29 while ((c = getopt(argc, argv, "b:c:C:h:H:i:")) != EOF) 29 while ((c = getopt(argc, argv, "b:c:C:h:H:i:P:")) != EOF)
30 switch (c) { 30 switch (c) {
31 case 'b': 31 case 'b':
32 set_romload_baudrate(optarg); 32 set_romload_baudrate(optarg);
33 continue; 33 continue;
34 case 'c': 34 case 'c':
44 read_hwparam_file_fullpath(optarg); 44 read_hwparam_file_fullpath(optarg);
45 continue; 45 continue;
46 case 'i': 46 case 'i':
47 set_beacon_interval(optarg); 47 set_beacon_interval(optarg);
48 continue; 48 continue;
49 case 'P':
50 if (find_bootctrl_entry(optarg) < 0)
51 exit(1); /* error msg already printed */
52 continue;
49 case '?': 53 case '?':
50 default: 54 default:
51 usage: fprintf(stderr, 55 usage: fprintf(stderr,
52 "usage: fc-iram [options] ttyport iramimage.srec\n"); 56 "usage: fc-iram [options] ttyport iramimage.srec\n");
53 exit(1); 57 exit(1);
60 passon_argv = argv + optind + 2; 64 passon_argv = argv + optind + 2;
61 passon_argc = argc - optind - 2; 65 passon_argc = argc - optind - 2;
62 } 66 }
63 67
64 open_serial_port(target_ttydev); 68 open_serial_port(target_ttydev);
69 pwon_if_needed();
65 perform_compal_stage(); 70 perform_compal_stage();
66 perform_romload(); 71 perform_romload();
67 if (passon_argv) 72 if (passon_argv)
68 exec_2nd_prog(); 73 exec_2nd_prog();
69 tty_passthru(); 74 tty_passthru();