blob: 64a24268cf51c56fd7966556c6d09b391e1026b7 [file] [log] [blame]
Upstream-Status: Inappropriate
RPI-Distro repo forks original vlc and applies patches
to enable raspiberry pi support.
--- a/modules/hw/mmal/blend_rgba_neon.S
+++ b/modules/hw/mmal/blend_rgba_neon.S
@@ -1,10 +1,10 @@
- .syntax unified
- .arm
-// .thumb
- .text
+#include "../../arm_neon/asm.S"
.align 16
.arch armv7-a
- .fpu neon-vfpv4
+ .syntax unified
+#if HAVE_AS_FPU_DIRECTIVE
+ .fpu neon-vfpv4
+#endif
@ blend_rgbx_rgba_neon
--- a/modules/hw/mmal/codec.c
+++ b/modules/hw/mmal/codec.c
@@ -29,6 +29,7 @@
#include <stdatomic.h>
#include <vlc_common.h>
+#include <vlc_cpu.h>
#include <vlc_plugin.h>
#include <vlc_codec.h>
#include <vlc_filter.h>
@@ -2311,6 +2312,9 @@ static int OpenBlendMmal(vlc_object_t *o
filter_t * const p_filter = (filter_t *)object;
const vlc_fourcc_t vfcc_dst = p_filter->fmt_out.video.i_chroma;
+ if (!vlc_CPU_ARM_NEON())
+ return VLC_EGENERIC;
+
if (!hw_mmal_chroma_is_mmal(vfcc_dst) ||
!hw_mmal_vzc_subpic_fmt_valid(&p_filter->fmt_in.video))
{
@@ -2421,6 +2425,9 @@ static int OpenBlendNeon(vlc_object_t *o
MMAL_FOURCC_T mfcc_dst = vlc_to_mmal_video_fourcc(&p_filter->fmt_out.video);
blend_neon_fn * blend_fn = (blend_neon_fn *)0;
+ if (!vlc_CPU_ARM_NEON())
+ return VLC_EGENERIC;
+
// Non-alpha RGB only for dest
if (vfcc_dst != VLC_CODEC_RGB32)
return VLC_EGENERIC;