CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-29 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Sep 29 07:34:10 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiodev.c dtmf.c main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #267):

usr.bin/audiocfg/dtmf.c: revision 1.4
usr.bin/audiocfg/main.c: revision 1.14 (via patch)
usr.bin/audiocfg/audiodev.c: revision 1.12

Use err(3)/warn(3) instead of perror(3)/fprintf(stderr,...).
Use getprogname(3) for usage().


To generate a diff of this commit:
cvs rdiff -u -r1.7.2.1 -r1.7.2.2 src/usr.bin/audiocfg/audiodev.c
cvs rdiff -u -r1.3 -r1.3.28.1 src/usr.bin/audiocfg/dtmf.c
cvs rdiff -u -r1.8.2.2 -r1.8.2.3 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-29 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Sep 29 07:34:10 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiodev.c dtmf.c main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #267):

usr.bin/audiocfg/dtmf.c: revision 1.4
usr.bin/audiocfg/main.c: revision 1.14 (via patch)
usr.bin/audiocfg/audiodev.c: revision 1.12

Use err(3)/warn(3) instead of perror(3)/fprintf(stderr,...).
Use getprogname(3) for usage().


To generate a diff of this commit:
cvs rdiff -u -r1.7.2.1 -r1.7.2.2 src/usr.bin/audiocfg/audiodev.c
cvs rdiff -u -r1.3 -r1.3.28.1 src/usr.bin/audiocfg/dtmf.c
cvs rdiff -u -r1.8.2.2 -r1.8.2.3 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/audiocfg/audiodev.c
diff -u src/usr.bin/audiocfg/audiodev.c:1.7.2.1 src/usr.bin/audiocfg/audiodev.c:1.7.2.2
--- src/usr.bin/audiocfg/audiodev.c:1.7.2.1	Sat Sep 28 07:41:18 2019
+++ src/usr.bin/audiocfg/audiodev.c	Sun Sep 29 07:34:09 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: audiodev.c,v 1.7.2.1 2019/09/28 07:41:18 martin Exp $ */
+/* $NetBSD: audiodev.c,v 1.7.2.2 2019/09/29 07:34:09 martin Exp $ */
 
 /*
  * Copyright (c) 2010 Jared D. McNeill 
@@ -31,6 +31,7 @@
 #include 
 #include 
 
+#include 
 #include 
 #include 
 #include 
@@ -155,7 +156,7 @@ audiodev_refresh(void)
 
 	fd = open(DRVCTLDEV, O_RDONLY);
 	if (fd == -1) {
-		perror("open " DRVCTLDEV);
+		warn("open %s", DRVCTLDEV);
 		return -1;
 	}
 
@@ -169,7 +170,7 @@ audiodev_refresh(void)
 
 	error = drvctl_foreach(fd, "audio", audiodev_cb, NULL);
 	if (error == -1) {
-		perror("drvctl");
+		warnx("drvctl failed");
 		return -1;
 	}
 
@@ -230,19 +231,19 @@ audiodev_set_default(struct audiodev *ad
 	unlink(_PATH_MIXER);
 
 	if (symlink(audiopath, _PATH_AUDIO) == -1) {
-		perror("symlink " _PATH_AUDIO);
+		warn("symlink %s", _PATH_AUDIO);
 		return -1;
 	}
 	if (symlink(soundpath, _PATH_SOUND) == -1) {
-		perror("symlink " _PATH_SOUND);
+		warn("symlink %s", _PATH_SOUND);
 		return -1;
 	}
 	if (symlink(audioctlpath, _PATH_AUDIOCTL) == -1) {
-		perror("symlink " _PATH_AUDIOCTL);
+		warn("symlink %s", _PATH_AUDIOCTL);
 		return -1;
 	}
 	if (symlink(mixerpath, _PATH_MIXER) == -1) {
-		perror("symlink " _PATH_MIXER);
+		warn("symlink %s", _PATH_MIXER);
 		return -1;
 	}
 
@@ -265,8 +266,7 @@ audiodev_set_param(struct audiodev *adev
 			break;
 	}
 	if (enc >= encoding_max) {
-		fprintf(stderr, "unknown encoding name: %s\n", encname);
-		errno = EINVAL;
+		warnx("unknown encoding name: %s", encname);
 		return -1;
 	}
 
@@ -294,7 +294,7 @@ audiodev_set_param(struct audiodev *adev
 	printf("setting %s to %s:%u, %uch, %uHz\n",
 	adev->xname, encname, prec, ch, freq);
 	if (ioctl(adev->ctlfd, AUDIO_SETFORMAT, ) == -1) {
-		perror("ioctl AUDIO_SETFORMAT");
+		warn("ioctl AUDIO_SETFORMAT");
 		return -1;
 	}
 	return 0;
@@ -311,7 +311,7 @@ audiodev_test(struct audiodev *adev)
 
 	adev->fd = open(adev->path, O_WRONLY);
 	if (adev->fd == -1) {
-		perror("open");
+		warn("open %s", adev->path);
 		return -1;
 	}
 
@@ -322,11 +322,11 @@ audiodev_test(struct audiodev *adev)
 	info.play.encoding = AUDIO_ENCODING_SLINEAR_LE;
 	info.mode = AUMODE_PLAY;
 	if (ioctl(adev->fd, AUDIO_SETINFO, ) == -1) {
-		perror("ioctl AUDIO_SETINFO");
+		warn("ioctl AUDIO_SETINFO");
 		goto done;
 	}
 	if (ioctl(adev->fd, AUDIO_GETINFO, ) == -1) {
-		perror("ioctl AUDIO_GETINFO");
+		warn("ioctl AUDIO_GETINFO");
 		goto done;
 	}
 
@@ -371,7 +371,7 @@ audiodev_test_chmask(struct audiodev *ad
 			wlen = buflen;
 		ret = write(adev->fd, (char *)buf + off, wlen);
 		if (ret == -1) {
-			perror("write");
+			warn("write");
 			goto done;
 		}
 		wlen = ret;
@@ -380,7 +380,7 @@ audiodev_test_chmask(struct audiodev *ad
 	}
 
 	if (ioctl(adev->fd, AUDIO_DRAIN) == -1) {
-		perror("ioctl AUDIO_DRAIN");
+		warn("ioctl AUDIO_DRAIN");
 		goto done;
 	}
 

Index: src/usr.bin/audiocfg/dtmf.c
diff -u src/usr.bin/audiocfg/dtmf.c:1.3 src/usr.bin/audiocfg/dtmf.c:1.3.28.1
--- src/usr.bin/audiocfg/dtmf.c:1.3	Sun Aug 11 06:31:00 2013
+++ src/usr.bin/audiocfg/dtmf.c	Sun Sep 29 07:34:09 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: dtmf.c,v 1.3 2013/08/11 06:31:00 dholland Exp $ */
+/* $NetBSD: dtmf.c,v 1.3.28.1 2019/09/29 07:34:09 martin Exp $ */
 
 /*
  * Copyright (c) 2010 Jared D. McNeill 
@@ -28,6 +28,7 @@
 
 #include 
 
+#include 
 #include 
 #include 
 #include 
@@ -70,7 +71,7 @@ dtmf_new(int16_t **buf, size_t *buflen, 
 	*buflen = sample_rate * sizeof(int16_t) * sample_length * channels;
 	*buf = calloc(1, *buflen);
 	if (*buf == NULL) {
-		perror("calloc");
+		warn("calloc");
 		return;
 	}
 

Index: src/usr.bin/audiocfg/main.c
diff -u src/usr.bin/audiocfg/main.c:1.8.2.2 src/usr.bin/audiocfg/main.c:1.8.2.3
--- src/usr.bin/audiocfg/main.c:1.8.2.2	Sat Sep 28 07:41:18 2019
+++ src/usr.bin/audiocfg/main.c	Sun Sep 29 07:34:09 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: 

CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:41:18 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiodev.c audiodev.h main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #262):

usr.bin/audiocfg/main.c: revision 1.10
usr.bin/audiocfg/main.c: revision 1.11
usr.bin/audiocfg/audiodev.c: revision 1.8
usr.bin/audiocfg/audiodev.h: revision 1.6
usr.bin/audiocfg/audiodev.c: revision 1.9
usr.bin/audiocfg/audiodev.h: revision 1.7

Rename some members in adev for clarity.  No functional changes intended.

Revert to use single descriptor for "audiocfg test" as before.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.7.2.1 src/usr.bin/audiocfg/audiodev.c
cvs rdiff -u -r1.5 -r1.5.2.1 src/usr.bin/audiocfg/audiodev.h
cvs rdiff -u -r1.8.2.1 -r1.8.2.2 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:41:18 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiodev.c audiodev.h main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #262):

usr.bin/audiocfg/main.c: revision 1.10
usr.bin/audiocfg/main.c: revision 1.11
usr.bin/audiocfg/audiodev.c: revision 1.8
usr.bin/audiocfg/audiodev.h: revision 1.6
usr.bin/audiocfg/audiodev.c: revision 1.9
usr.bin/audiocfg/audiodev.h: revision 1.7

Rename some members in adev for clarity.  No functional changes intended.

Revert to use single descriptor for "audiocfg test" as before.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.7.2.1 src/usr.bin/audiocfg/audiodev.c
cvs rdiff -u -r1.5 -r1.5.2.1 src/usr.bin/audiocfg/audiodev.h
cvs rdiff -u -r1.8.2.1 -r1.8.2.2 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/audiocfg/audiodev.c
diff -u src/usr.bin/audiocfg/audiodev.c:1.7 src/usr.bin/audiocfg/audiodev.c:1.7.2.1
--- src/usr.bin/audiocfg/audiodev.c:1.7	Wed May  8 14:36:12 2019
+++ src/usr.bin/audiocfg/audiodev.c	Sat Sep 28 07:41:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: audiodev.c,v 1.7 2019/05/08 14:36:12 isaki Exp $ */
+/* $NetBSD: audiodev.c,v 1.7.2.1 2019/09/28 07:41:18 martin Exp $ */
 
 /*
  * Copyright (c) 2010 Jared D. McNeill 
@@ -43,6 +43,9 @@
 #include "drvctl.h"
 #include "dtmf.h"
 
+static int audiodev_test_chmask(struct audiodev *, unsigned int,
+	audio_info_t *);
+
 static TAILQ_HEAD(audiodevhead, audiodev) audiodevlist =
 TAILQ_HEAD_INITIALIZER(audiodevlist);
 
@@ -63,26 +66,26 @@ audiodev_getinfo(struct audiodev *adev)
 	if (stat(_PATH_AUDIOCTL, ) != -1 && st.st_rdev == adev->dev)
 		adev->defaultdev = true;
 
-	adev->fd = open(adev->ctlpath, O_RDONLY);
-	if (adev->fd == -1) {
+	adev->ctlfd = open(adev->ctlpath, O_RDONLY);
+	if (adev->ctlfd == -1) {
 			return -1;
 	}
-	if (ioctl(adev->fd, AUDIO_GETDEV, >audio_device) == -1) {
-		close(adev->fd);
+	if (ioctl(adev->ctlfd, AUDIO_GETDEV, >audio_device) == -1) {
+		close(adev->ctlfd);
 		return -1;
 	}
 
 	for (i = 0; ;i++) {
 		memset(, 0, sizeof(query));
 		query.index = i;
-		if (ioctl(adev->fd, AUDIO_QUERYFORMAT, ) == -1) {
+		if (ioctl(adev->ctlfd, AUDIO_QUERYFORMAT, ) == -1) {
 			if (errno == ENODEV) {
 /* QUERYFORMAT not supported. */
 break;
 			}
 			if (errno == EINVAL)
 break;
-			close(adev->fd);
+			close(adev->ctlfd);
 			return -1;
 		}
 
@@ -91,8 +94,8 @@ audiodev_getinfo(struct audiodev *adev)
 		TAILQ_INSERT_TAIL(>formats, f, next);
 	}
 
-	if (ioctl(adev->fd, AUDIO_GETFORMAT, >info) == -1) {
-		close(adev->fd);
+	if (ioctl(adev->ctlfd, AUDIO_GETFORMAT, >hwinfo) == -1) {
+		close(adev->ctlfd);
 		return -1;
 	}
 
@@ -158,8 +161,8 @@ audiodev_refresh(void)
 
 	while (!TAILQ_EMPTY()) {
 		adev = TAILQ_FIRST();
-		if (adev->fd != -1)
-			close(adev->fd);
+		if (adev->ctlfd != -1)
+			close(adev->ctlfd);
 		TAILQ_REMOVE(, adev, next);
 		free(adev);
 	}
@@ -250,12 +253,12 @@ int
 audiodev_set_param(struct audiodev *adev, int mode,
 	const char *encname, unsigned int prec, unsigned int ch, unsigned int freq)
 {
-	struct audio_info ai;
+	audio_info_t ai;
 	int setmode;
 	u_int enc;
 
 	setmode = 0;
-	ai = adev->info;
+	ai = adev->hwinfo;
 
 	for (enc = 0; enc < encoding_max; enc++) {
 		if (strcmp(encname, encoding_names[enc]) == 0)
@@ -290,7 +293,7 @@ audiodev_set_param(struct audiodev *adev
 	ai.mode = setmode;
 	printf("setting %s to %s:%u, %uch, %uHz\n",
 	adev->xname, encname, prec, ch, freq);
-	if (ioctl(adev->fd, AUDIO_SETFORMAT, ) == -1) {
+	if (ioctl(adev->ctlfd, AUDIO_SETFORMAT, ) == -1) {
 		perror("ioctl AUDIO_SETFORMAT");
 		return -1;
 	}
@@ -298,40 +301,64 @@ audiodev_set_param(struct audiodev *adev
 }
 
 int
-audiodev_test(struct audiodev *adev, unsigned int chanmask)
+audiodev_test(struct audiodev *adev)
 {
 	audio_info_t info;
-	int16_t *buf;
-	size_t buflen;
-	off_t off;
-	int fd;
-	int rv = -1;
+	unsigned int i;
+	int rv;
 
-	fd = open(adev->path, O_WRONLY);
-	if (fd == -1) {
+	rv = -1;
+
+	adev->fd = open(adev->path, O_WRONLY);
+	if (adev->fd == -1) {
 		perror("open");
 		return -1;
 	}
 
 	AUDIO_INITINFO();
 	info.play.sample_rate = AUDIODEV_SAMPLE_RATE;
-	info.play.channels = adev->info.play.channels;
+	info.play.channels = adev->hwinfo.play.channels;
 	info.play.precision = 16;
 	info.play.encoding = AUDIO_ENCODING_SLINEAR_LE;
 	info.mode = AUMODE_PLAY;
-	if (ioctl(fd, AUDIO_SETINFO, ) == -1) {
+	if (ioctl(adev->fd, AUDIO_SETINFO, ) == -1) {
 		perror("ioctl AUDIO_SETINFO");
-		goto abort;
+		goto done;
 	}
-	if (ioctl(fd, AUDIO_GETINFO, ) == -1) {
+	if (ioctl(adev->fd, AUDIO_GETINFO, ) == -1) {
 		perror("ioctl AUDIO_GETINFO");
-		goto abort;
+		goto done;
 	}
 
-	dtmf_new(, , info.play.sample_rate, 2,
-	adev->info.play.channels, chanmask, 350.0, 440.0);

CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:34:50 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiocfg.1

Log Message:
Pull up following revision(s) (requested by isaki in ticket #261):

usr.bin/audiocfg/audiocfg.1: revision 1.6

Fix markup.  index of list command is optional.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.5.2.1 src/usr.bin/audiocfg/audiocfg.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:34:50 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: audiocfg.1

Log Message:
Pull up following revision(s) (requested by isaki in ticket #261):

usr.bin/audiocfg/audiocfg.1: revision 1.6

Fix markup.  index of list command is optional.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.5.2.1 src/usr.bin/audiocfg/audiocfg.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/audiocfg/audiocfg.1
diff -u src/usr.bin/audiocfg/audiocfg.1:1.5 src/usr.bin/audiocfg/audiocfg.1:1.5.2.1
--- src/usr.bin/audiocfg/audiocfg.1:1.5	Thu May  9 09:34:58 2019
+++ src/usr.bin/audiocfg/audiocfg.1	Sat Sep 28 07:34:50 2019
@@ -1,4 +1,4 @@
-.\"	$NetBSD: audiocfg.1,v 1.5 2019/05/09 09:34:58 wiz Exp $
+.\"	$NetBSD: audiocfg.1,v 1.5.2.1 2019/09/28 07:34:50 martin Exp $
 .\"
 .\" Copyright (c) 2010 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -36,6 +36,7 @@
 .Sh SYNOPSIS
 .Nm
 .Cm list
+.Op Ar index
 .Nm
 .Cm default
 .Ar index



CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:25:53 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #258):

usr.bin/audiocfg/main.c: revision 1.9

Fix assertion of "audiocfg list " when n is an illegal index.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.8.2.1 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/audiocfg/main.c
diff -u src/usr.bin/audiocfg/main.c:1.8 src/usr.bin/audiocfg/main.c:1.8.2.1
--- src/usr.bin/audiocfg/main.c:1.8	Wed May  8 14:36:12 2019
+++ src/usr.bin/audiocfg/main.c	Sat Sep 28 07:25:53 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.8 2019/05/08 14:36:12 isaki Exp $ */
+/* $NetBSD: main.c,v 1.8.2.1 2019/09/28 07:25:53 martin Exp $ */
 
 /*
  * Copyright (c) 2010 Jared D. McNeill 
@@ -164,7 +164,12 @@ main(int argc, char *argv[])
 		if (errno)
 			usage(argv[0]);
 			/* NOTREACHED */
-		print_audiodev(audiodev_get(i), i);
+		adev = audiodev_get(i);
+		if (adev == NULL) {
+			fprintf(stderr, "no such device\n");
+			return EXIT_FAILURE;
+		}
+		print_audiodev(adev, i);
 	} else if (strcmp(argv[1], "default") == 0 && argc == 3) {
 		if (*argv[2] < '0' || *argv[2] > '9')
 			usage(argv[0]);



CVS commit: [netbsd-9] src/usr.bin/audiocfg

2019-09-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Sep 28 07:25:53 UTC 2019

Modified Files:
src/usr.bin/audiocfg [netbsd-9]: main.c

Log Message:
Pull up following revision(s) (requested by isaki in ticket #258):

usr.bin/audiocfg/main.c: revision 1.9

Fix assertion of "audiocfg list " when n is an illegal index.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.8.2.1 src/usr.bin/audiocfg/main.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.