Module Name: src Committed By: isaki Date: Sat Apr 27 10:18:00 UTC 2019
Modified Files: src/sys/arch/arm/sunxi [isaki-audio2]: sun8i_codec.c src/sys/dev [isaki-audio2]: audio_dai.h src/sys/dev/fdt [isaki-audio2]: ausoc.c Log Message: Adapt to audio2. - XXX Name conflicts. audio2 replaces set_params with set_format and audio_dai already have had its own set_format. I named newly introduced one audio_dai_mi_set_format for now. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.6.1 src/sys/arch/arm/sunxi/sun8i_codec.c cvs rdiff -u -r1.4 -r1.4.2.1 src/sys/dev/audio_dai.h cvs rdiff -u -r1.3 -r1.3.8.1 src/sys/dev/fdt/ausoc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/sunxi/sun8i_codec.c diff -u src/sys/arch/arm/sunxi/sun8i_codec.c:1.5 src/sys/arch/arm/sunxi/sun8i_codec.c:1.5.6.1 --- src/sys/arch/arm/sunxi/sun8i_codec.c:1.5 Wed May 16 10:22:54 2018 +++ src/sys/arch/arm/sunxi/sun8i_codec.c Sat Apr 27 10:17:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: sun8i_codec.c,v 1.5 2018/05/16 10:22:54 jmcneill Exp $ */ +/* $NetBSD: sun8i_codec.c,v 1.5.6.1 2019/04/27 10:17:59 isaki Exp $ */ /*- * Copyright (c) 2018 Jared McNeill <jmcne...@invisible.ca> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sun8i_codec.c,v 1.5 2018/05/16 10:22:54 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sun8i_codec.c,v 1.5.6.1 2019/04/27 10:17:59 isaki Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -132,22 +132,6 @@ struct sun8i_codec_softc { bus_space_write_4((sc)->sc_bst, (sc)->sc_bsh, (reg), (val)) static int -sun8i_codec_set_params(void *priv, int setmode, int usemode, - audio_params_t *play, audio_params_t *rec, - stream_filter_list_t *pfil, stream_filter_list_t *rfil) -{ - if (play && (setmode & AUMODE_PLAY)) - if (play->sample_rate != 48000) - return EINVAL; - - if (rec && (setmode & AUMODE_RECORD)) - if (rec->sample_rate != 48000) - return EINVAL; - - return 0; -} - -static int sun8i_codec_set_port(void *priv, mixer_ctrl_t *mc) { struct sun8i_codec_softc * const sc = priv; @@ -181,7 +165,6 @@ sun8i_codec_query_devinfo(void *priv, mi } static const struct audio_hw_if sun8i_codec_hw_if = { - .set_params = sun8i_codec_set_params, .set_port = sun8i_codec_set_port, .get_port = sun8i_codec_get_port, .query_devinfo = sun8i_codec_query_devinfo, Index: src/sys/dev/audio_dai.h diff -u src/sys/dev/audio_dai.h:1.4 src/sys/dev/audio_dai.h:1.4.2.1 --- src/sys/dev/audio_dai.h:1.4 Mon Nov 19 10:14:40 2018 +++ src/sys/dev/audio_dai.h Sat Apr 27 10:17:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: audio_dai.h,v 1.4 2018/11/19 10:14:40 maya Exp $ */ +/* $NetBSD: audio_dai.h,v 1.4.2.1 2019/04/27 10:17:59 isaki Exp $ */ /*- * Copyright (c) 2018 Jared McNeill <jmcne...@invisible.ca> @@ -146,22 +146,22 @@ audio_dai_drain(audio_dai_tag_t dai) } static inline int -audio_dai_query_encoding(audio_dai_tag_t dai, audio_encoding_t *ae) +audio_dai_query_format(audio_dai_tag_t dai, audio_format_query_t *afp) { - if (!dai->dai_hw_if->query_encoding) + if (!dai->dai_hw_if->query_format) return 0; - return dai->dai_hw_if->query_encoding(dai->dai_priv, ae); + return dai->dai_hw_if->query_format(dai->dai_priv, afp); } static inline int -audio_dai_set_params(audio_dai_tag_t dai, int setmode, int usemode, - audio_params_t *play, audio_params_t *rec, - stream_filter_list_t *pfil, stream_filter_list_t *rfil) +audio_dai_mi_set_format(audio_dai_tag_t dai, int setmode, + const audio_params_t *play, const audio_params_t *rec, + audio_filter_reg_t *pfil, audio_filter_reg_t *rfil) { - if (!dai->dai_hw_if->set_params) + if (!dai->dai_hw_if->set_format) return 0; - return dai->dai_hw_if->set_params(dai->dai_priv, setmode, - usemode, play, rec, pfil, rfil); + return dai->dai_hw_if->set_format(dai->dai_priv, setmode, + play, rec, pfil, rfil); } static inline int @@ -244,14 +244,6 @@ audio_dai_round_buffersize(audio_dai_tag return dai->dai_hw_if->round_buffersize(dai->dai_priv, dir, bufsize); } -static inline paddr_t -audio_dai_mappage(audio_dai_tag_t dai, void *addr, off_t off, int prot) -{ - if (!dai->dai_hw_if->mappage) - return -1; - return dai->dai_hw_if->mappage(dai->dai_priv, addr, off, prot); -} - static inline int audio_dai_get_props(audio_dai_tag_t dai) { Index: src/sys/dev/fdt/ausoc.c diff -u src/sys/dev/fdt/ausoc.c:1.3 src/sys/dev/fdt/ausoc.c:1.3.8.1 --- src/sys/dev/fdt/ausoc.c:1.3 Sat May 12 23:51:06 2018 +++ src/sys/dev/fdt/ausoc.c Sat Apr 27 10:17:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ausoc.c,v 1.3 2018/05/12 23:51:06 jmcneill Exp $ */ +/* $NetBSD: ausoc.c,v 1.3.8.1 2019/04/27 10:17:59 isaki Exp $ */ /*- * Copyright (c) 2018 Jared McNeill <jmcne...@invisible.ca> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ausoc.c,v 1.3 2018/05/12 23:51:06 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ausoc.c,v 1.3.8.1 2019/04/27 10:17:59 isaki Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -116,28 +116,28 @@ ausoc_drain(void *priv) } static int -ausoc_query_encoding(void *priv, struct audio_encoding *ae) +ausoc_query_format(void *priv, audio_format_query_t *afp) { struct ausoc_link * const link = priv; - return audio_dai_query_encoding(link->link_cpu, ae); + return audio_dai_query_format(link->link_cpu, afp); } static int -ausoc_set_params(void *priv, int setmode, int usemode, - audio_params_t *play, audio_params_t *rec, - stream_filter_list_t *pfil, stream_filter_list_t *rfil) +ausoc_set_format(void *priv, int setmode, + const audio_params_t *play, const audio_params_t *rec, + audio_filter_reg_t *pfil, audio_filter_reg_t *rfil) { struct ausoc_link * const link = priv; int error; - error = audio_dai_set_params(link->link_cpu, setmode, - usemode, play, rec, pfil, rfil); + error = audio_dai_mi_set_format(link->link_cpu, setmode, + play, rec, pfil, rfil); if (error) return error; - return audio_dai_set_params(link->link_codec, setmode, - usemode, play, rec, pfil, rfil); + return audio_dai_mi_set_format(link->link_codec, setmode, + play, rec, pfil, rfil); } static int @@ -180,14 +180,6 @@ ausoc_freem(void *priv, void *addr, size return audio_dai_freem(link->link_cpu, addr, size); } -static paddr_t -ausoc_mappage(void *priv, void *addr, off_t off, int prot) -{ - struct ausoc_link * const link = priv; - - return audio_dai_mappage(link->link_cpu, addr, off, prot); -} - static int ausoc_getdev(void *priv, struct audio_device *adev) { @@ -347,11 +339,10 @@ static const struct audio_hw_if ausoc_hw .open = ausoc_open, .close = ausoc_close, .drain = ausoc_drain, - .query_encoding = ausoc_query_encoding, - .set_params = ausoc_set_params, + .query_format = ausoc_query_format, + .set_format = ausoc_set_format, .allocm = ausoc_allocm, .freem = ausoc_freem, - .mappage = ausoc_mappage, .getdev = ausoc_getdev, .set_port = ausoc_set_port, .get_port = ausoc_get_port,