mirror of
https://git.yoctoproject.org/poky
synced 2026-04-21 03:32:12 +02:00
alsa-lib: 1.0.28 -> 1.0.29
Release notes: http://alsa-project.org/main/index.php/Changes_v1.0.28_v1.0.29 Dropped the backported patches. Dropped also fix-tstamp-declaration.patch. It's unclear whether the ancient patch is needed by anyone any more. The original commit message[1] wasn't very clear on what specific conditions triggered the build failure that the patch fixes, so it's hard to try to reproduce the failure. [1] http://cgit.openembedded.org/openembedded/commit/?id=f61f3efe2389249c001107ccd55dac39e79ef2a1 (From OE-Core rev: 893b317c354d2bb4ee9f44d7318e0f59382060a9) Signed-off-by: Tanu Kaskinen <tanu.kaskinen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
b80a8feb71
commit
775dedb67e
@@ -1,32 +0,0 @@
|
||||
From f6b879e7cc87d83343f5004369146881d1d1e335 Mon Sep 17 00:00:00 2001
|
||||
From: Shengjiu Wang <shengjiu.wang@freescale.com>
|
||||
Date: Wed, 23 Jul 2014 15:09:58 +0800
|
||||
Subject: [PATCH] pcm: pcm_local.h: include <time.h> to enable CLOCK_MONOTONIC
|
||||
|
||||
CLOCK_MONITONIC is defined in <bits/time.h>, add <time.h> before <sys/time.h>.
|
||||
|
||||
Commit f6b879e7cc87d83343f5004369146881d1d1e335 in master branch
|
||||
|
||||
Upstream Status: Backported
|
||||
|
||||
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
|
||||
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
||||
---
|
||||
src/pcm/pcm_local.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h
|
||||
index 2206afe..80bbe59 100644
|
||||
--- a/src/pcm/pcm_local.h
|
||||
+++ b/src/pcm/pcm_local.h
|
||||
@@ -24,6 +24,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
#include <sys/uio.h>
|
||||
+#include <time.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
#define _snd_mask sndrv_mask
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
From 035f196bcdc1e9903ed52ad1859dc23d3aa74e72 Mon Sep 17 00:00:00 2001
|
||||
From: Shengjiu Wang <shengjiu.wang@freescale.com>
|
||||
Date: Mon, 14 Jul 2014 16:55:48 +0800
|
||||
Subject: [PATCH] pcm: rate: fix hw_ptr exceed the boundary
|
||||
|
||||
For long time test case, the hw_ptr will exceed the boundary, then cause
|
||||
the avail size wrong.
|
||||
|
||||
Commit is 035f196bcdc1e9903ed52ad1859dc23d3aa74e72 in master branch
|
||||
|
||||
Upstream Status: Backported
|
||||
|
||||
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
|
||||
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
||||
---
|
||||
src/pcm/pcm_rate.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c
|
||||
index 7f667d4..2563d82 100644
|
||||
--- a/src/pcm/pcm_rate.c
|
||||
+++ b/src/pcm/pcm_rate.c
|
||||
@@ -574,6 +574,8 @@ static inline void snd_pcm_rate_sync_hwptr(snd_pcm_t *pcm)
|
||||
rate->hw_ptr =
|
||||
(slave_hw_ptr / rate->gen.slave->period_size) * pcm->period_size +
|
||||
rate->ops.input_frames(rate->obj, slave_hw_ptr % rate->gen.slave->period_size);
|
||||
+
|
||||
+ rate->hw_ptr %= pcm->boundary;
|
||||
}
|
||||
|
||||
static int snd_pcm_rate_hwsync(snd_pcm_t *pcm)
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
@@ -1,345 +0,0 @@
|
||||
From 3f179d6cc7c222dfa42fe094b7ef1e21685a05bc Mon Sep 17 00:00:00 2001
|
||||
From: Takashi Iwai <tiwai@suse.de>
|
||||
Date: Tue, 22 Jul 2014 11:55:40 +0200
|
||||
Subject: [PATCH] pcm: route: Use get32 for multi-source route calculation
|
||||
|
||||
The PCM route plugin can assign the destination value from average of
|
||||
multiple sources with attenuation. This requires the read of each
|
||||
channel value, sums and writes the resultant value in the requested
|
||||
format.
|
||||
|
||||
Currently, get_labels is used for reading source values while
|
||||
put32_labels is used for writing the dest value. This is, however,
|
||||
a buggy implementation; get_labels gives the value as is only with
|
||||
endianness and signedness conversions, but put32_labels assumes that
|
||||
the value is normalized to 32bit int and it shifts down to the dest
|
||||
format. In addition, the current code lacks get_labels entries for
|
||||
the 24bit formats, as Shengjiu Wang spotted out.
|
||||
|
||||
For fixing these bugs, this patch replaces the read with
|
||||
get32_labels and use always 64bit int for sum. This simplifies the
|
||||
code a lot and drops many lines.
|
||||
|
||||
Commit fd84adc63e307572d05274be44c782a787087cda in master branch
|
||||
|
||||
Upstream Status: Backported
|
||||
|
||||
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
||||
---
|
||||
src/pcm/pcm_route.c | 128 +++++++++-----------------------------------------
|
||||
src/pcm/plugin_ops.h | 81 --------------------------------
|
||||
2 files changed, 23 insertions(+), 186 deletions(-)
|
||||
|
||||
diff --git a/src/pcm/pcm_route.c b/src/pcm/pcm_route.c
|
||||
index 2beedf6..1ed9c5f 100644
|
||||
--- a/src/pcm/pcm_route.c
|
||||
+++ b/src/pcm/pcm_route.c
|
||||
@@ -60,7 +60,7 @@ typedef struct {
|
||||
typedef struct snd_pcm_route_ttable_dst snd_pcm_route_ttable_dst_t;
|
||||
|
||||
typedef struct {
|
||||
- enum {UINT32=0, UINT64=1, FLOAT=2} sum_idx;
|
||||
+ enum {UINT64, FLOAT} sum_idx;
|
||||
unsigned int get_idx;
|
||||
unsigned int put_idx;
|
||||
unsigned int conv_idx;
|
||||
@@ -232,55 +232,34 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
const snd_pcm_route_ttable_dst_t* ttable,
|
||||
const snd_pcm_route_params_t *params)
|
||||
{
|
||||
-#define GETS_LABELS
|
||||
+#define GET32_LABELS
|
||||
#define PUT32_LABELS
|
||||
#include "plugin_ops.h"
|
||||
-#undef GETS_LABELS
|
||||
+#undef GET32_LABELS
|
||||
#undef PUT32_LABELS
|
||||
- static void *const zero_labels[3] = {
|
||||
- &&zero_int32, &&zero_int64,
|
||||
+ static void *const zero_labels[2] = {
|
||||
+ &&zero_int64,
|
||||
#if SND_PCM_PLUGIN_ROUTE_FLOAT
|
||||
&&zero_float
|
||||
#endif
|
||||
};
|
||||
/* sum_type att */
|
||||
- static void *const add_labels[3 * 2] = {
|
||||
- &&add_int32_noatt, &&add_int32_att,
|
||||
+ static void *const add_labels[2 * 2] = {
|
||||
&&add_int64_noatt, &&add_int64_att,
|
||||
#if SND_PCM_PLUGIN_ROUTE_FLOAT
|
||||
&&add_float_noatt, &&add_float_att
|
||||
#endif
|
||||
};
|
||||
- /* sum_type att shift */
|
||||
- static void *const norm_labels[3 * 2 * 4] = {
|
||||
- 0,
|
||||
- &&norm_int32_8_noatt,
|
||||
- &&norm_int32_16_noatt,
|
||||
- &&norm_int32_24_noatt,
|
||||
- 0,
|
||||
- &&norm_int32_8_att,
|
||||
- &&norm_int32_16_att,
|
||||
- &&norm_int32_24_att,
|
||||
- &&norm_int64_0_noatt,
|
||||
- &&norm_int64_8_noatt,
|
||||
- &&norm_int64_16_noatt,
|
||||
- &&norm_int64_24_noatt,
|
||||
- &&norm_int64_0_att,
|
||||
- &&norm_int64_8_att,
|
||||
- &&norm_int64_16_att,
|
||||
- &&norm_int64_24_att,
|
||||
+ /* sum_type att */
|
||||
+ static void *const norm_labels[2 * 2] = {
|
||||
+ &&norm_int64_noatt,
|
||||
+ &&norm_int64_att,
|
||||
#if SND_PCM_PLUGIN_ROUTE_FLOAT
|
||||
- &&norm_float_0,
|
||||
- &&norm_float_8,
|
||||
- &&norm_float_16,
|
||||
- &&norm_float_24,
|
||||
- &&norm_float_0,
|
||||
- &&norm_float_8,
|
||||
- &&norm_float_16,
|
||||
- &&norm_float_24,
|
||||
+ &&norm_float,
|
||||
+ &&norm_float,
|
||||
#endif
|
||||
};
|
||||
- void *zero, *get, *add, *norm, *put32;
|
||||
+ void *zero, *get32, *add, *norm, *put32;
|
||||
int nsrcs = ttable->nsrcs;
|
||||
char *dst;
|
||||
int dst_step;
|
||||
@@ -322,9 +301,9 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
}
|
||||
|
||||
zero = zero_labels[params->sum_idx];
|
||||
- get = gets_labels[params->get_idx];
|
||||
+ get32 = get32_labels[params->get_idx];
|
||||
add = add_labels[params->sum_idx * 2 + ttable->att];
|
||||
- norm = norm_labels[params->sum_idx * 8 + ttable->att * 4 + 4 - params->src_size];
|
||||
+ norm = norm_labels[params->sum_idx * 2 + ttable->att];
|
||||
put32 = put32_labels[params->put_idx];
|
||||
dst = snd_pcm_channel_area_addr(dst_area, dst_offset);
|
||||
dst_step = snd_pcm_channel_area_step(dst_area);
|
||||
@@ -335,9 +314,6 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
|
||||
/* Zero sum */
|
||||
goto *zero;
|
||||
- zero_int32:
|
||||
- sum.as_sint32 = 0;
|
||||
- goto zero_end;
|
||||
zero_int64:
|
||||
sum.as_sint64 = 0;
|
||||
goto zero_end;
|
||||
@@ -351,21 +327,14 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
const char *src = srcs[srcidx];
|
||||
|
||||
/* Get sample */
|
||||
- goto *get;
|
||||
-#define GETS_END after_get
|
||||
+ goto *get32;
|
||||
+#define GET32_END after_get
|
||||
#include "plugin_ops.h"
|
||||
-#undef GETS_END
|
||||
+#undef GET32_END
|
||||
after_get:
|
||||
|
||||
/* Sum */
|
||||
goto *add;
|
||||
- add_int32_att:
|
||||
- sum.as_sint32 += sample * ttp->as_int;
|
||||
- goto after_sum;
|
||||
- add_int32_noatt:
|
||||
- if (ttp->as_int)
|
||||
- sum.as_sint32 += sample;
|
||||
- goto after_sum;
|
||||
add_int64_att:
|
||||
sum.as_sint64 += (int64_t) sample * ttp->as_int;
|
||||
goto after_sum;
|
||||
@@ -389,48 +358,10 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
|
||||
/* Normalization */
|
||||
goto *norm;
|
||||
- norm_int32_8_att:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_8_att:
|
||||
- sum.as_sint64 <<= 8;
|
||||
- norm_int64_0_att:
|
||||
- div(sum.as_sint64);
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int32_16_att:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_16_att:
|
||||
- sum.as_sint64 <<= 16;
|
||||
+ norm_int64_att:
|
||||
div(sum.as_sint64);
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int32_24_att:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_24_att:
|
||||
- sum.as_sint64 <<= 24;
|
||||
- div(sum.as_sint64);
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int32_8_noatt:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_8_noatt:
|
||||
- sum.as_sint64 <<= 8;
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int32_16_noatt:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_16_noatt:
|
||||
- sum.as_sint64 <<= 16;
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int32_24_noatt:
|
||||
- sum.as_sint64 = sum.as_sint32;
|
||||
- norm_int64_24_noatt:
|
||||
- sum.as_sint64 <<= 24;
|
||||
- goto norm_int;
|
||||
-
|
||||
- norm_int64_0_noatt:
|
||||
- norm_int:
|
||||
+ /* fallthru */
|
||||
+ norm_int64_noatt:
|
||||
if (sum.as_sint64 > (int64_t)0x7fffffff)
|
||||
sample = 0x7fffffff; /* maximum positive value */
|
||||
else if (sum.as_sint64 < -(int64_t)0x80000000)
|
||||
@@ -440,16 +371,6 @@ static void snd_pcm_route_convert1_many(const snd_pcm_channel_area_t *dst_area,
|
||||
goto after_norm;
|
||||
|
||||
#if SND_PCM_PLUGIN_ROUTE_FLOAT
|
||||
- norm_float_8:
|
||||
- sum.as_float *= 1 << 8;
|
||||
- goto norm_float;
|
||||
- norm_float_16:
|
||||
- sum.as_float *= 1 << 16;
|
||||
- goto norm_float;
|
||||
- norm_float_24:
|
||||
- sum.as_float *= 1 << 24;
|
||||
- goto norm_float;
|
||||
- norm_float_0:
|
||||
norm_float:
|
||||
sum.as_float = rint(sum.as_float);
|
||||
if (sum.as_float > (int64_t)0x7fffffff)
|
||||
@@ -644,7 +565,7 @@ static int snd_pcm_route_hw_params(snd_pcm_t *pcm, snd_pcm_hw_params_t * params)
|
||||
return err;
|
||||
route->params.use_getput = snd_pcm_format_physical_width(src_format) == 24 ||
|
||||
snd_pcm_format_physical_width(dst_format) == 24;
|
||||
- route->params.get_idx = snd_pcm_linear_get_index(src_format, SND_PCM_FORMAT_S16);
|
||||
+ route->params.get_idx = snd_pcm_linear_get32_index(src_format, SND_PCM_FORMAT_S32);
|
||||
route->params.put_idx = snd_pcm_linear_put32_index(SND_PCM_FORMAT_S32, dst_format);
|
||||
route->params.conv_idx = snd_pcm_linear_convert_index(src_format, dst_format);
|
||||
route->params.src_size = snd_pcm_format_width(src_format) / 8;
|
||||
@@ -652,10 +573,7 @@ static int snd_pcm_route_hw_params(snd_pcm_t *pcm, snd_pcm_hw_params_t * params)
|
||||
#if SND_PCM_PLUGIN_ROUTE_FLOAT
|
||||
route->params.sum_idx = FLOAT;
|
||||
#else
|
||||
- if (snd_pcm_format_width(src_format) == 32)
|
||||
- route->params.sum_idx = UINT64;
|
||||
- else
|
||||
- route->params.sum_idx = UINT32;
|
||||
+ route->params.sum_idx = UINT64;
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
diff --git a/src/pcm/plugin_ops.h b/src/pcm/plugin_ops.h
|
||||
index 21535c9..eb8c2c4 100644
|
||||
--- a/src/pcm/plugin_ops.h
|
||||
+++ b/src/pcm/plugin_ops.h
|
||||
@@ -668,87 +668,6 @@ getu_1234_C321: sample = bswap_32(as_u32c(src) ^ 0x80); goto GETU_END;
|
||||
}
|
||||
#endif
|
||||
|
||||
-#ifdef GETS_LABELS
|
||||
-/* width endswap sign_toggle */
|
||||
-static void *const gets_labels[4 * 2 * 2] = {
|
||||
- &&gets_1_1, /* 8h -> 8h */
|
||||
- &&gets_1_9, /* 8h ^> 8h */
|
||||
- &&gets_1_1, /* 8s -> 8h */
|
||||
- &&gets_1_9, /* 8s ^> 8h */
|
||||
- &&gets_12_12, /* 16h -> 16h */
|
||||
- &&gets_12_92, /* 16h ^> 16h */
|
||||
- &&gets_12_21, /* 16s -> 16h */
|
||||
- &&gets_12_A1, /* 16s ^> 16h */
|
||||
- &&gets_0123_0123, /* 24h -> 24h */
|
||||
- &&gets_0123_0923, /* 24h ^> 24h */
|
||||
- &&gets_1230_0321, /* 24s -> 24h */
|
||||
- &&gets_1230_0B21, /* 24s ^> 24h */
|
||||
- &&gets_1234_1234, /* 32h -> 32h */
|
||||
- &&gets_1234_9234, /* 32h ^> 32h */
|
||||
- &&gets_1234_4321, /* 32s -> 32h */
|
||||
- &&gets_1234_C321, /* 32s ^> 32h */
|
||||
-};
|
||||
-#endif
|
||||
-
|
||||
-#ifdef GETS_END
|
||||
-while (0) {
|
||||
-gets_1_1: sample = as_s8c(src); goto GETS_END;
|
||||
-gets_1_9: sample = (int8_t)(as_s8c(src) ^ 0x80); goto GETS_END;
|
||||
-gets_12_12: sample = as_s16c(src); goto GETS_END;
|
||||
-gets_12_92: sample = (int16_t)(as_s16c(src) ^ 0x8000); goto GETS_END;
|
||||
-gets_12_21: sample = (int16_t)bswap_16(as_s16c(src)); goto GETS_END;
|
||||
-gets_12_A1: sample = (int16_t)bswap_16(as_s16c(src) ^ 0x80); goto GETS_END;
|
||||
-gets_0123_0123: sample = sx24((int32_t)(as_s32c(src) << 8) >> 8); goto GETS_END;
|
||||
-gets_0123_0923: sample = sx24((int32_t)((as_s32c(src) ^ 0x800000) << 8) >> 8); goto GETS_END;
|
||||
-gets_1230_0321: sample = sx24((int32_t)(bswap_32(as_s32c(src)) << 8) >> 8); goto GETS_END;
|
||||
-gets_1230_0B21: sample = sx24((int32_t)(bswap_32(as_s32c(src) ^ 0x8000) << 8) >> 8); goto GETS_END;
|
||||
-gets_1234_1234: sample = as_s32c(src); goto GETS_END;
|
||||
-gets_1234_9234: sample = (int32_t)(as_s32c(src) ^ 0x80000000); goto GETS_END;
|
||||
-gets_1234_4321: sample = (int32_t)bswap_32(as_s32c(src)); goto GETS_END;
|
||||
-gets_1234_C321: sample = (int32_t)bswap_32(as_s32c(src) ^ 0x80); goto GETS_END;
|
||||
-}
|
||||
-#endif
|
||||
-
|
||||
-#ifdef PUT_LABELS
|
||||
-/* width endswap sign_toggle */
|
||||
-static void *const put_labels[4 * 2 * 2] = {
|
||||
- &&put_1_1, /* 8h -> 8h */
|
||||
- &&put_1_9, /* 8h ^> 8h */
|
||||
- &&put_1_1, /* 8h -> 8s */
|
||||
- &&put_1_9, /* 8h ^> 8s */
|
||||
- &&put_12_12, /* 16h -> 16h */
|
||||
- &&put_12_92, /* 16h ^> 16h */
|
||||
- &&put_12_21, /* 16h -> 16s */
|
||||
- &&put_12_29, /* 16h ^> 16s */
|
||||
- &&put_0123_0123, /* 24h -> 24h */
|
||||
- &&put_0123_0923, /* 24h ^> 24h */
|
||||
- &&put_0123_3210, /* 24h -> 24s */
|
||||
- &&put_0123_3290, /* 24h ^> 24s */
|
||||
- &&put_1234_1234, /* 32h -> 32h */
|
||||
- &&put_1234_9234, /* 32h ^> 32h */
|
||||
- &&put_1234_4321, /* 32h -> 32s */
|
||||
- &&put_1234_4329, /* 32h ^> 32s */
|
||||
-};
|
||||
-#endif
|
||||
-
|
||||
-#ifdef PUT_END
|
||||
-put_1_1: as_s8(dst) = sample; goto PUT_END;
|
||||
-put_1_9: as_u8(dst) = sample ^ 0x80; goto PUT_END;
|
||||
-put_12_12: as_s16(dst) = sample; goto PUT_END;
|
||||
-put_12_92: as_u16(dst) = sample ^ 0x8000; goto PUT_END;
|
||||
-put_12_21: as_s16(dst) = bswap_16(sample); goto PUT_END;
|
||||
-put_12_29: as_u16(dst) = bswap_16(sample) ^ 0x80; goto PUT_END;
|
||||
-/* this always writes the unused byte in 24-bit formats as 0x00 */
|
||||
-put_0123_0123: as_s32(dst) = sx24(sample & 0x00ffffff); goto PUT_END;
|
||||
-put_0123_0923: as_u32(dst) = sx24((sample & 0x00ffffff) ^ 0x800000); goto PUT_END;
|
||||
-put_0123_3210: as_s32(dst) = sx24s(bswap_32(sample) & 0xffffff00); goto PUT_END;
|
||||
-put_0123_3290: as_u32(dst) = sx24s((bswap_32(sample) & 0xffffff00) ^ 0x8000); goto PUT_END;
|
||||
-put_1234_1234: as_s32(dst) = sample; goto PUT_END;
|
||||
-put_1234_9234: as_u32(dst) = sample ^ 0x80000000; goto PUT_END;
|
||||
-put_1234_4321: as_s32(dst) = bswap_32(sample); goto PUT_END;
|
||||
-put_1234_4329: as_u32(dst) = bswap_32(sample) ^ 0x80; goto PUT_END;
|
||||
-#endif
|
||||
-
|
||||
#ifdef PUT32F_LABELS
|
||||
/* type (0 = float, 1 = float64), endswap */
|
||||
static void *const put32float_labels[2 * 2] = {
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
# Author: Michael Lauer <mickey@vanille-media.de>
|
||||
# Date: Thu Jan 18 00:27:21 2007 +0000
|
||||
# alsa-lib: fix "error: field 'tstamp' has incomplete type" when including alsa headers with strict compilation options
|
||||
#
|
||||
# Acquired from OpenEmbedded
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Index: alsa-lib-1.0.13/include/global.h
|
||||
===================================================================
|
||||
--- alsa-lib-1.0.13.orig/include/global.h
|
||||
+++ alsa-lib-1.0.13/include/global.h
|
||||
@@ -29,6 +29,8 @@
|
||||
#define __ALSA_GLOBAL_H_
|
||||
|
||||
/* for timeval and timespec */
|
||||
+#define __need_timeval
|
||||
+#define __need_timespec
|
||||
#include <time.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
@@ -16,13 +16,9 @@ ARM_INSTRUCTION_SET = "arm"
|
||||
|
||||
SRC_URI = "ftp://ftp.alsa-project.org/pub/lib/${BP}.tar.bz2 \
|
||||
file://Check-if-wordexp-function-is-supported.patch \
|
||||
file://fix-tstamp-declaration.patch \
|
||||
file://0001-pcm-route-Use-get32-for-multi-source-route-calculati.patch \
|
||||
file://0001-pcm-rate-fix-hw_ptr-exceed-the-boundary.patch \
|
||||
file://0001-pcm-pcm_local.h-include-time.h-to-enable-CLOCK_MONOT.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "c9e21b88a2b3e6e12ea7ba0f3b271fc3"
|
||||
SRC_URI[sha256sum] = "3c074b85dde1b30e78ef4995579765833e5b693fbbd8f834c335e080cb734a6d"
|
||||
SRC_URI[md5sum] = "de67e0eca72474d6b1121037dafe1024"
|
||||
SRC_URI[sha256sum] = "73043c35eb9636be0f4af6a240235c213f12a25feb1f04aeeac8cb7e30fcbdd0"
|
||||
|
||||
inherit autotools pkgconfig
|
||||
|
||||
Reference in New Issue
Block a user