Date: Wed, 16 Jan 2013 08:05:06 -0800 From: Garrett Cooper <yanegomi@gmail.com> To: Warner Losh <imp@bsdimp.com> Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>, Adrian Chadd <adrian@FreeBSD.org>, freebsd-current <freebsd-current@freebsd.org> Subject: Re: [RFC] support -b <baudrate> when starting gdb Message-ID: <816C84A4-BF12-468C-BED8-797A319E9CDC@gmail.com> In-Reply-To: <89207049-41FF-479D-90EE-89652937AB29@bsdimp.com> References: <CAJ-Vmo=egCndUfHoQVS3Sy8rd0QOEm96mJ1Vv3K%2BrRuJcUpp9Q@mail.gmail.com> <89207049-41FF-479D-90EE-89652937AB29@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 16, 2013, at 7:35 AM, Warner Losh <imp@bsdimp.com> wrote: > How does 'set remotebaud' not do what you want? >=20 > Warner >=20 > On Jan 15, 2013, at 10:15 PM, Adrian Chadd wrote: >=20 >> Hi, >>=20 >> There doesn't seem to be a blessed way to set the baudrate from inside >> gdb/kgdb. It seems to be set from '-b' on the command line. >>=20 >> However kgdb doesn't have this support. >>=20 >> This patch adds -b support so kgdb so I can override the default speed >> (9600 it seems) to speak kgdb over serial to a 115200 console MIPS >> device. >>=20 >> The MIPS stuff has other issues; I'll talk about those later. >>=20 >> Thanks, >>=20 >>=20 >>=20 >> Adrian >>=20 >>=20 >> Index: gnu/usr.bin/gdb/kgdb/main.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- gnu/usr.bin/gdb/kgdb/main.c (revision 245281) >> +++ gnu/usr.bin/gdb/kgdb/main.c (working copy) >> @@ -333,11 +333,24 @@ >> args.argv =3D malloc(sizeof(char *)); >> args.argv[0] =3D argv[0]; >>=20 >> - while ((ch =3D getopt(argc, argv, "ac:d:fn:qr:vw")) !=3D -1) { >> + while ((ch =3D getopt(argc, argv, "ab:c:d:fn:qr:vw")) !=3D -1) { >> switch (ch) { >> case 'a': >> annotation_level++; >> break; >> + case 'b': >> + { >> + int i; >> + char *p; >> + >> + i =3D strtol (optarg, &p, 0); >> + if (i =3D=3D 0 && p =3D=3D optarg) >> + warnx("warning: could not set baud >> rate to `%s'.\n", >> + optarg); >> + else >> + baud_rate =3D i; >> + } >> + break; >> case 'c': /* use given core file. */ >> if (vmcore !=3D NULL) { >> warnx("option %c: can only be specified onc= e", It's more of a convenience factor and easier to script command line argument= s IMO. Thanks, -Garrett=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?816C84A4-BF12-468C-BED8-797A319E9CDC>