[MPlayer-dev-eng] [PATCH] Optimized libmpeg2 routines for ARM/Xscale

Siarhei Siamashka siarhei.siamashka at gmail.com
Sun May 20 11:20:37 CEST 2007


On Monday 14 May 2007 11:55, Guillaume Poirier wrote:

[..]

> ARM is, among architectures that are still in production
> (PowerPC, Sparc, x86, IA64) one of the ones (if not THE one) that has
> the fewest number of users reporting bugs, and developers maintaining
> the code.

As more linux powered ARM devices are getting available, I expect that the
number of users/developers will grow as well.  I myself did not know much
about ARM architecture and did not imagine that I would develop anything
for it until tried to apply to Nokia 770 developer device program (Nokia 770
discount for FLOSS developers) and was considered eligible.

> So if your development model works for you, and you don't heavily
> hack-patch MPlayer, I have no lecture to give you.
> I'd however suggest reading part I and II of LWN's article "The
> embedded Linux nightmare"
> http://lwn.net/Articles/230244/ (I)
> http://lwn.net/Articles/232379/ (II)
>
> To put it in a nutshell, it discusses the benefits for people who work
> on the embedded Linux world to follow all latest Linux Kernel developers.
> I'm not saying I agree with this article, but I think it's a good read.

Yes, vendor specific kernels infested with binary modules is a big problem. We
got this problem with Nokia 770 too and are now stuck with 2.6.16 kernel :(
That's not exactly Nokia fault, but caused by the absence of free open source
drivers for some parts of hardware (WLAN) used in it.

> >>https://garage.maemo.org/plugins/scmsvn/viewcvs.php/trunk/libmpeg2/motion
> >>_c omp_arm_s.S?root=mplayer&rev=82&view=markup
> >
> > They were kept there as both Nokia 770 and N800 support ARMv5TE
> > instructions and I did not have enough spare time to clean up this code,
> > especially considering the issues with real upstream activity.
>
> Ok. I'd be ok with just disabling that code on ARMv4: we don't know if
> there are people who use MPlayer on ARMv4, and if they do, and are
> interested in tuning the code, the required modifications are quite small.
> BTW, are there still new PDA-like devices that feature ARMv4 in them?

As far as I know, Neo1973 uses ARMv4 cpu:
http://www.linuxdevices.com/news/NS2986976174.html

The first bunch of Neo1973 devices has been already shipped to some 
selected developers. They even started experimenting with video support:
http://wiki.openmoko.org/wiki/Video_Player

Maybe we even have some of OpenMoko developers reading this 
mailing list ;)

> >>I'm open to all suggestions as to what is better to fix this.
> >
> > There are 3 options:
> > 1. Keep it as is and wait for someone interested in proper armv4 support
> > to propose a fix :-)
>
> I'm ok with that. I haven't seen a bug report from an actual ARMv4
> user yet.
>
> > 2. Just remove these PLD instructions (but first benchmarking the code to
> > estimate how useful they are)
>
> That requires to have access to the hardware. I don't :-(
>
> > 3. Fix this code to conditionally include PLD instructions only when
> > HAVE_ARMV5TE is defined
>
> That's the best solution. I however just don't know GAS enough to do.

OK, I'll try to make some patch for it. But it would be certainly much better
if thouse who are directly interested in ARMv4 support did this job (I'm
myself only interested in ARMv5TE and better).



More information about the MPlayer-dev-eng mailing list