blob: 64a24268cf51c56fd7966556c6d09b391e1026b7 [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001Upstream-Status: Inappropriate
2
3RPI-Distro repo forks original vlc and applies patches
4to enable raspiberry pi support.
5
6--- a/modules/hw/mmal/blend_rgba_neon.S
7+++ b/modules/hw/mmal/blend_rgba_neon.S
8@@ -1,10 +1,10 @@
9- .syntax unified
10- .arm
11-// .thumb
12- .text
13+#include "../../arm_neon/asm.S"
14 .align 16
15 .arch armv7-a
16- .fpu neon-vfpv4
17+ .syntax unified
18+#if HAVE_AS_FPU_DIRECTIVE
19+ .fpu neon-vfpv4
20+#endif
21
22 @ blend_rgbx_rgba_neon
23
24--- a/modules/hw/mmal/codec.c
25+++ b/modules/hw/mmal/codec.c
26@@ -29,6 +29,7 @@
27 #include <stdatomic.h>
28
29 #include <vlc_common.h>
30+#include <vlc_cpu.h>
31 #include <vlc_plugin.h>
32 #include <vlc_codec.h>
33 #include <vlc_filter.h>
34@@ -2311,6 +2312,9 @@ static int OpenBlendMmal(vlc_object_t *o
35 filter_t * const p_filter = (filter_t *)object;
36 const vlc_fourcc_t vfcc_dst = p_filter->fmt_out.video.i_chroma;
37
38+ if (!vlc_CPU_ARM_NEON())
39+ return VLC_EGENERIC;
40+
41 if (!hw_mmal_chroma_is_mmal(vfcc_dst) ||
42 !hw_mmal_vzc_subpic_fmt_valid(&p_filter->fmt_in.video))
43 {
44@@ -2421,6 +2425,9 @@ static int OpenBlendNeon(vlc_object_t *o
45 MMAL_FOURCC_T mfcc_dst = vlc_to_mmal_video_fourcc(&p_filter->fmt_out.video);
46 blend_neon_fn * blend_fn = (blend_neon_fn *)0;
47
48+ if (!vlc_CPU_ARM_NEON())
49+ return VLC_EGENERIC;
50+
51 // Non-alpha RGB only for dest
52 if (vfcc_dst != VLC_CODEC_RGB32)
53 return VLC_EGENERIC;