]> git.alsa-project.org Git - alsa-lib.git/commitdiff
Remove poll_ask callback
authorTakashi Iwai <tiwai@suse.de>
Wed, 18 May 2005 10:50:09 +0000 (10:50 +0000)
committerTakashi Iwai <tiwai@suse.de>
Wed, 18 May 2005 10:50:09 +0000 (10:50 +0000)
Removed poll_ask callbacks.
poll_ask function is merged to poll_descriptors callbacks.

18 files changed:
src/pcm/pcm.c
src/pcm/pcm_dmix.c
src/pcm/pcm_dshare.c
src/pcm/pcm_dsnoop.c
src/pcm/pcm_file.c
src/pcm/pcm_generic.c
src/pcm/pcm_generic.h
src/pcm/pcm_hooks.c
src/pcm/pcm_hw.c
src/pcm/pcm_ioplug.c
src/pcm/pcm_local.h
src/pcm/pcm_meter.c
src/pcm/pcm_multi.c
src/pcm/pcm_null.c
src/pcm/pcm_plugin.c
src/pcm/pcm_rate.c
src/pcm/pcm_share.c
src/pcm/pcm_shm.c

index d93f33071728e083ee1a8022541f889a2b424aee..c12a17d02c0c48cc34856f4ca6109a5acec35d64 100644 (file)
@@ -1310,11 +1310,6 @@ int snd_pcm_poll_descriptors(snd_pcm_t *pcm, struct pollfd *pfds, unsigned int s
        assert(pcm && pfds);
        if (pcm->ops->poll_descriptors)
                return pcm->ops->poll_descriptors(pcm->op_arg, pfds, space);
-       if (pcm->fast_ops->poll_ask) {
-               err = pcm->fast_ops->poll_ask(pcm->fast_op_arg);
-               if (err < 0)
-                       return err;
-       }
        if (pcm->poll_fd < 0) {
                SNDMSG("poll_fd < 0");
                return -EIO;
index 2da13b67e843019409746a1185d0c70bda154d73..5fbf142182025a3fd8f890145605286bcce0afcd 100644 (file)
@@ -675,7 +675,6 @@ static snd_pcm_fast_ops_t snd_pcm_dmix_fast_ops = {
        .rewind = snd_pcm_dmix_rewind,
        .forward = snd_pcm_dmix_forward,
        .resume = snd_pcm_dmix_resume,
-       .poll_ask = NULL,
        .link_fd = NULL,
        .link = NULL,
        .unlink = NULL,
index 90016ab9b0f7d707989738e180c16e6b43173a2d..c1181f95264bcb7da1d09e9fcecdca89c966368d 100644 (file)
@@ -493,7 +493,6 @@ static snd_pcm_fast_ops_t snd_pcm_dshare_fast_ops = {
        .rewind = snd_pcm_dshare_rewind,
        .forward = snd_pcm_dshare_forward,
        .resume = snd_pcm_dshare_resume,
-       .poll_ask = NULL,
        .link_fd = NULL,
        .link = NULL,
        .unlink = NULL,
index 58c8fb7ceca91e58375687e6e530c4779e1a342d..73d0b6f142796b93e13d11f3ee36a00423c22cb6 100644 (file)
@@ -459,7 +459,6 @@ static snd_pcm_fast_ops_t snd_pcm_dsnoop_fast_ops = {
        .rewind = snd_pcm_dsnoop_rewind,
        .forward = snd_pcm_dsnoop_forward,
        .resume = snd_pcm_dsnoop_resume,
-       .poll_ask = NULL,
        .link_fd = NULL,
        .link = NULL,
        .unlink = NULL,
index eaf9414a22deee8ce37b2174a8ffd590c89f2d7a..593a93d603277414da500c4ab97fa071aa84252c 100644 (file)
@@ -368,7 +368,6 @@ static snd_pcm_fast_ops_t snd_pcm_file_fast_ops = {
        .rewind = snd_pcm_file_rewind,
        .forward = snd_pcm_file_forward,
        .resume = snd_pcm_generic_resume,
-       .poll_ask = snd_pcm_generic_poll_ask,
        .link_fd = snd_pcm_generic_link_fd,
        .link = snd_pcm_generic_link,
        .unlink = snd_pcm_generic_unlink,
index ca7da52075129c2e64f35fd0a6d3d5fb57b68b44..c06f765d14d56be68b94597ea6c4a5fb586d0faf 100644 (file)
@@ -193,14 +193,6 @@ snd_pcm_sframes_t snd_pcm_generic_rewind(snd_pcm_t *pcm, snd_pcm_uframes_t frame
        return snd_pcm_rewind(generic->slave, frames);
 }
 
-int snd_pcm_generic_poll_ask(snd_pcm_t *pcm)
-{
-       snd_pcm_generic_t *generic = pcm->private_data;
-       if (generic->slave->fast_ops->poll_ask)
-               return generic->slave->fast_ops->poll_ask(generic->slave->fast_op_arg);
-       return 0;
-}
-
 int snd_pcm_generic_link_fd(snd_pcm_t *pcm, int *fds, int count, int (**failed)(snd_pcm_t *, int))
 {
        snd_pcm_generic_t *generic = pcm->private_data;
index 4bcd123eaad55a829923c22bccac253a5862809d..19e20fd6b8bd5e65cd3d526a0fdd98e29c87a2b0 100644 (file)
@@ -50,7 +50,6 @@ int snd_pcm_generic_resume(snd_pcm_t *pcm);
 int snd_pcm_generic_delay(snd_pcm_t *pcm, snd_pcm_sframes_t *delayp);
 snd_pcm_sframes_t snd_pcm_generic_forward(snd_pcm_t *pcm, snd_pcm_uframes_t frames);
 snd_pcm_sframes_t snd_pcm_generic_rewind(snd_pcm_t *pcm, snd_pcm_uframes_t frames);
-int snd_pcm_generic_poll_ask(snd_pcm_t *pcm);
 int snd_pcm_generic_link_fd(snd_pcm_t *pcm, int *fds, int count, int (**failed)(snd_pcm_t *, int)); 
 int snd_pcm_generic_link(snd_pcm_t *pcm1, snd_pcm_t *pcm2);
 int snd_pcm_generic_link2(snd_pcm_t *pcm1, snd_pcm_t *pcm2);
index 4efeb7fb2828e3169e6f999b4aaa634d4cddd645..8e6a83b113e23f4fb2492c69bd29944524966810 100644 (file)
@@ -151,7 +151,6 @@ static snd_pcm_fast_ops_t snd_pcm_hooks_fast_ops = {
        .rewind = snd_pcm_generic_rewind,
        .forward = snd_pcm_generic_forward,
        .resume = snd_pcm_generic_resume,
-       .poll_ask = snd_pcm_generic_poll_ask,
        .link_fd = snd_pcm_generic_link_fd,
        .link = snd_pcm_generic_link,
        .unlink = snd_pcm_generic_unlink,
index 26af3c88329654bbd2aacfe6badd273a1b0eb372..f293ee3910faed72fc0889d22b542a8002f1c1e6 100644 (file)
@@ -1021,7 +1021,6 @@ static snd_pcm_fast_ops_t snd_pcm_hw_fast_ops = {
        .rewind = snd_pcm_hw_rewind,
        .forward = snd_pcm_hw_forward,
        .resume = snd_pcm_hw_resume,
-       .poll_ask = NULL,
        .link_fd = snd_pcm_hw_link_fd,
        .link = snd_pcm_hw_link,
        .unlink = snd_pcm_hw_unlink,
index 2704131ed41f22c18724021113b99799e161ee2f..1dd18036a2edfaaa24226bd1b267855bba02b9e8 100644 (file)
@@ -738,7 +738,6 @@ static snd_pcm_fast_ops_t snd_pcm_ioplug_fast_ops = {
        .hwsync = snd_pcm_ioplug_hwsync,
        .delay = snd_pcm_ioplug_delay,
        .resume = snd_pcm_ioplug_resume,
-       .poll_ask = NULL,
        .link_fd = NULL,
        .link = NULL,
        .unlink = NULL,
index c2a8973764260b216a20880182c41cca914180f1..d174ca925dee1a78ce9dcce8c6c83c27d672ee08 100644 (file)
@@ -158,7 +158,6 @@ typedef struct {
        int (*hwsync)(snd_pcm_t *pcm);
        int (*delay)(snd_pcm_t *pcm, snd_pcm_sframes_t *delayp);
        int (*resume)(snd_pcm_t *pcm);
-       int (*poll_ask)(snd_pcm_t *pcm);
        int (*link_fd)(snd_pcm_t *pcm, int *fds, int count, int (**failed)(snd_pcm_t *, int));
        int (*link)(snd_pcm_t *pcm1, snd_pcm_t *pcm2);
        int (*unlink)(snd_pcm_t *pcm);
index 7c3f1cd44f9958a0bb77b536644087300af4fd26..b3b8d1b7174b0b244148d1a299deaac1e7621104 100644 (file)
@@ -533,7 +533,6 @@ static snd_pcm_fast_ops_t snd_pcm_meter_fast_ops = {
        .rewind = snd_pcm_meter_rewind,
        .forward = snd_pcm_meter_forward,
        .resume = snd_pcm_generic_resume,
-       .poll_ask = snd_pcm_generic_poll_ask,
        .writei = snd_pcm_mmap_writei,
        .writen = snd_pcm_mmap_writen,
        .readi = snd_pcm_mmap_readi,
index 7847f27f37397e345fd6c38f8b72f4ecf9b5c76e..675a6c938b11eb97262d689bf024ad001019525e 100644 (file)
@@ -105,7 +105,20 @@ static int snd_pcm_multi_poll_descriptors_count(snd_pcm_t *pcm)
 static int snd_pcm_multi_poll_descriptors(snd_pcm_t *pcm, struct pollfd *pfds, unsigned int space)
 {
        snd_pcm_multi_t *multi = pcm->private_data;
+       snd_pcm_t *slave;
        snd_pcm_t *slave_0 = multi->slaves[multi->master_slave].pcm;
+       int err;
+       unsigned int i;
+
+       for (i = 0; i < multi->slaves_count; ++i) {
+               slave = multi->slaves[i].pcm;
+               if (slave == slave_0)
+                       continue;
+               err = snd_pcm_poll_descriptors(slave, pfds, space);
+               if (err < 0)
+                       return err;
+       }
+       /* finally overwrite with master's pfds */
        return snd_pcm_poll_descriptors(slave_0, pfds, space);
 }
 
@@ -584,23 +597,6 @@ static int snd_pcm_multi_resume(snd_pcm_t *pcm)
        return err;
 }
 
-static int snd_pcm_multi_poll_ask(snd_pcm_t *pcm)
-{
-       snd_pcm_multi_t *multi = pcm->private_data;
-       snd_pcm_t *slave;
-       int err = 0;
-       unsigned int i;
-       for (i = 0; i < multi->slaves_count; ++i) {
-               slave = multi->slaves[i].pcm;
-               if (slave->fast_ops->poll_ask == NULL)
-                       continue;
-               err = slave->fast_ops->poll_ask(slave->fast_op_arg);
-               if (err < 0)
-                       return err;
-       }
-       return err;
-}
-
 static int snd_pcm_multi_link_fd_failed(snd_pcm_t *pcm, int fd)
 {
        snd_pcm_multi_t *multi = pcm->private_data;
@@ -733,7 +729,6 @@ static snd_pcm_fast_ops_t snd_pcm_multi_fast_ops = {
        .rewind = snd_pcm_multi_rewind,
        .forward = snd_pcm_multi_forward,
        .resume = snd_pcm_multi_resume,
-       .poll_ask = snd_pcm_multi_poll_ask,
        .link_fd = snd_pcm_multi_link_fd,
        .link = snd_pcm_generic_link2,
        .unlink = snd_pcm_multi_unlink,
index 64148bdb8695b1b633561b3ec6650332a05f889d..e14d9b40111fba8435b1344f26d7ccf24d1759fe 100644 (file)
@@ -324,7 +324,6 @@ static snd_pcm_fast_ops_t snd_pcm_null_fast_ops = {
        .rewind = snd_pcm_null_rewind,
        .forward = snd_pcm_null_forward,
        .resume = snd_pcm_null_resume,
-       .poll_ask = NULL,
        .writei = snd_pcm_null_writei,
        .writen = snd_pcm_null_writen,
        .readi = snd_pcm_null_readi,
index caca2e1996db139cb7a779f6a3144142e250a70d..dfa07a67f3cdf0568ee95b7486021e2074e2afdd 100644 (file)
@@ -558,7 +558,6 @@ snd_pcm_fast_ops_t snd_pcm_plugin_fast_ops = {
        .rewind = snd_pcm_plugin_rewind,
        .forward = snd_pcm_plugin_forward,
        .resume = snd_pcm_generic_resume,
-       .poll_ask = snd_pcm_generic_poll_ask,
        .link_fd = snd_pcm_generic_link_fd,
        .link = snd_pcm_generic_link,
        .unlink = snd_pcm_generic_unlink,
index e36f193f0f60afeac1c45d81a3d5969ea9c7fbb1..df43e3eb5a09c31d65cb286ea824c7f1e8f16513 100644 (file)
@@ -948,17 +948,16 @@ static snd_pcm_sframes_t snd_pcm_rate_forward(snd_pcm_t *pcm, snd_pcm_uframes_t
        return n;
 }
 
-static int snd_pcm_rate_poll_ask(snd_pcm_t *pcm)
+static int snd_pcm_rate_poll_descriptors(snd_pcm_t *pcm, struct pollfd *pfds, unsigned int space)
 {
        snd_pcm_rate_t *rate = pcm->private_data;
        snd_pcm_uframes_t avail_min;
-       int err;
+       int ret, err;
+
+       ret = snd_pcm_generic_poll_descriptors(pcm, pfds, space);
+       if (ret < 0)
+               return ret;
 
-       if (rate->gen.slave->fast_ops->poll_ask) {
-               err = rate->gen.slave->fast_ops->poll_ask(rate->gen.slave->fast_op_arg);
-               if (err < 0)
-                       return err;
-       }
        avail_min = rate->appl_ptr % pcm->period_size;
        if (avail_min > 0) {
                recalc(pcm, &avail_min);
@@ -973,9 +972,12 @@ static int snd_pcm_rate_poll_ask(snd_pcm_t *pcm)
                avail_min = rate->orig_avail_min;
        }
        if (rate->sw_params.avail_min == avail_min)
-               return 0;
+               return ret;
        rate->sw_params.avail_min = avail_min;
-       return snd_pcm_sw_params(rate->gen.slave, &rate->sw_params);
+       err = snd_pcm_sw_params(rate->gen.slave, &rate->sw_params);
+       if (err < 0)
+               return err;
+       return ret;
 }
 
 static int snd_pcm_rate_commit_area(snd_pcm_t *pcm, snd_pcm_rate_t *rate,
@@ -1357,7 +1359,6 @@ static snd_pcm_fast_ops_t snd_pcm_rate_fast_ops = {
        .rewind = snd_pcm_rate_rewind,
        .forward = snd_pcm_rate_forward,
        .resume = snd_pcm_generic_resume,
-       .poll_ask = snd_pcm_rate_poll_ask,
        .writei = snd_pcm_mmap_writei,
        .writen = snd_pcm_mmap_writen,
        .readi = snd_pcm_mmap_readi,
index 7e363049927d71eefd704634bd1d2c2a95d86d27..2ae6bf57db00894e023baebc43500fc922f44f2b 100644 (file)
@@ -1320,7 +1320,6 @@ static snd_pcm_fast_ops_t snd_pcm_share_fast_ops = {
        .rewind = snd_pcm_share_rewind,
        .forward = snd_pcm_share_forward,
        .resume = snd_pcm_share_resume,
-       .poll_ask = NULL, /* FIXME */
        .avail_update = snd_pcm_share_avail_update,
        .mmap_commit = snd_pcm_share_mmap_commit,
 };
index 1d46cd1497f253946591af71d96290aa9e0a82e2..1c963affa6f842602ac68ddbb46b310adb3110b3 100644 (file)
@@ -602,7 +602,6 @@ static snd_pcm_fast_ops_t snd_pcm_shm_fast_ops = {
        .rewind = snd_pcm_shm_rewind,
        .forward = snd_pcm_shm_forward,
        .resume = snd_pcm_shm_resume,
-       .poll_ask = NULL,
        .writei = snd_pcm_mmap_writei,
        .writen = snd_pcm_mmap_writen,
        .readi = snd_pcm_mmap_readi,