Hello,
Firstly, sorry if this is the wrong forum - please feel free to re-direct me to a more appropriate place.
I've been searching around for the 'net for a while but really have not come across a conclusive answer to just how well the free software community is supported by ARM vendors. Now I know that is a rather vague statement, so I will elaborate by framing it is a personal desire...
What I would like is a 'device' which I can hack on (and contribute to the community) with the following features: - Ethernet (at least 100Mb/s, but 1Gb/s and/or WiFi would be a bonus) - USB 2.0 (3.0 would be a bonus) - HDMI (dual monitor support would be a big bonus) - 1080p video output - Hi-definition video codec - SATA - MMC/SD - 3D graphics not a big desire, but would be a bonus
Essentially, I'm after a device I can use as a media box / thin-client X-term / hacker platform where every single byte of code that runs on the device is free software. This includes: - Boot loader (including SDRAM init) - Operating system (GNU / Linux would be my personal choice) - All drivers (no binary blobs, no 'firmware' blobs) - All application software
I have yet to see such a platform. A lot come close, but it seems to me that most fall short when it comes to drivers for the video codecs.
Am I living a pipe-dream, or does such a device really exist?
Regards,
Graeme
Quoting Graeme Russ (2012-10-01 19:58:14)
Hello,
Firstly, sorry if this is the wrong forum - please feel free to re-direct me to a more appropriate place.
I've been searching around for the 'net for a while but really have not come across a conclusive answer to just how well the free software community is supported by ARM vendors. Now I know that is a rather vague statement, so I will elaborate by framing it is a personal desire...
What I would like is a 'device' which I can hack on (and contribute to the community) with the following features:
- Ethernet (at least 100Mb/s, but 1Gb/s and/or WiFi would be a bonus)
- USB 2.0 (3.0 would be a bonus)
- HDMI (dual monitor support would be a big bonus)
- 1080p video output
- Hi-definition video codec
- SATA
- MMC/SD
- 3D graphics not a big desire, but would be a bonus
Essentially, I'm after a device I can use as a media box / thin-client X-term / hacker platform where every single byte of code that runs on the device is free software. This includes:
- Boot loader (including SDRAM init)
- Operating system (GNU / Linux would be my personal choice)
- All drivers (no binary blobs, no 'firmware' blobs)
- All application software
Have you checked out the list of platforms on the eLinux wiki?
http://elinux.org/Development_Platforms
In particular I have soft spot for TI's Pandaboard (full disclosure: TI gives me paper money in exchange for C codes): http://omappedia.org/wiki/PandaBoard
I have yet to see such a platform. A lot come close, but it seems to me that most fall short when it comes to drivers for the video codecs.
Many platforms have some binary blobs which you can download to get video decoders and 3D graphics. The ARM cores are getting so fast today that you can probably decode hi-res videos using FFMPEG...
Anyways you can always find such stuff in the Linaro LEBs or from the board support website. E.g: http://omappedia.org/wiki/PandaBoard_FAQ#What_will_Graphics.2FGFX_support_be...
Am I living a pipe-dream, or does such a device really exist?
I think it exists, but others may disagree. Lots of folks use Pandboards for set-top boxes running XBMC, hooked up to a TV via HDMI.
Happy hacking, Mike
Regards,
Graeme
linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev
Hi Mike,
On Tue, Oct 2, 2012 at 2:03 PM, Mike Turquette mturquette@ti.com wrote:
Quoting Graeme Russ (2012-10-01 19:58:14)
[snip]
Essentially, I'm after a device I can use as a media box / thin-client X-term / hacker platform where every single byte of code that runs on the device is free software. This includes:
- Boot loader (including SDRAM init)
- Operating system (GNU / Linux would be my personal choice)
- All drivers (no binary blobs, no 'firmware' blobs)
- All application software
Have you checked out the list of platforms on the eLinux wiki?
No, I had not but I have had a quick look now. None seem to be, at first glance, 100% 'open'
In particular I have soft spot for TI's Pandaboard (full disclosure: TI gives me paper money in exchange for C codes): http://omappedia.org/wiki/PandaBoard
Yes, Pandaboard looks good.
I already have a Raspberry Pi and a Mele A1000 (uses the Allwinner A10 SoC) - Both seem to be 'capable' but neither are even close to having a 100% FLOSS code base
I have yet to see such a platform. A lot come close, but it seems to me that most fall short when it comes to drivers for the video codecs.
Many platforms have some binary blobs which you can download to get video decoders and 3D graphics. The ARM cores are getting so fast today that you can probably decode hi-res videos using FFMPEG...
Yes, this is what disappoints me. This is not promising at all:
http://en.wikipedia.org/wiki/Graphics_hardware_and_FOSS#ARM
Mali (ARM), PowerVR (Imagination Technologies) and VideoCore (Broadcom) are the main 3D graphics cores for ARM based chips. None have (and none of the vendors have any interest in providing) FLOSS drivers.
Ironically, Intel seem to provide one of the highest level of FLOSS support for graphics drivers except for the latest GMA 500 (used extensively on later model Atom SoCs). Why do I say 'ironically'? Intel are probably lowest on the list when it comes to general FLOSS support for the remaining features of their SoCs (particularly SDRAM initialisation) which other SoC vendors seem to have no problem with.
AMD/ATI have really good FLOSS support for their graphics engines (particularly 3D, not so sure about video decoding - I haven't had a good dig yet) but what do they have available in the low-powered SoC space? I'll dig deeper there (maybe, again ironically) the answer lives in an x86 SoC (perish the thought)
Anyways you can always find such stuff in the Linaro LEBs or from the board support website. E.g: http://omappedia.org/wiki/PandaBoard_FAQ#What_will_Graphics.2FGFX_support_be...
"There are no plans to release fully opensource drivers for SGX540" :(
Am I living a pipe-dream, or does such a device really exist?
I think it exists, but others may disagree. Lots of folks use Pandboards for set-top boxes running XBMC, hooked up to a TV via HDMI.
I might dig deeper into Pandaboard one day, but until I find my 'dream board', I think I will stick to the Raspberry Pi and Mele A1000 for the time being
Regards,
Graeme
+++ Graeme Russ [2012-10-03 09:10 +1000]:
Many platforms have some binary blobs which you can download to get video decoders and 3D graphics. The ARM cores are getting so fast today that you can probably decode hi-res videos using FFMPEG...
Yes, this is what disappoints me. This is not promising at all:
http://en.wikipedia.org/wiki/Graphics_hardware_and_FOSS#ARM
Mali (ARM), PowerVR (Imagination Technologies) and VideoCore (Broadcom) are the main 3D graphics cores for ARM based chips. None have (and none of the vendors have any interest in providing) FLOSS drivers.
Your best bet for free video drivers is probably Mali at the moment, as that's the furthest-forward reverse-engineering project (SFAIK). But Snapdragon (Qualcomm) is also worth considering as Freedreno has also made useful progress. There are at least 5 different graphics cores available, and 3 or 4 of them have RE projects to free them up, but it'll be a while before any are in useful shape.
If you have any relevant expertise (or would like to aquire some) you will be exceedingly welcome to help out.
http://limadriver.org/ http://freedreno.github.com/
Wookey
Hi Wookey,
On Wed, Oct 3, 2012 at 11:39 AM, Wookey wookey@wookware.org wrote:
+++ Graeme Russ [2012-10-03 09:10 +1000]:
Many platforms have some binary blobs which you can download to get video decoders and 3D graphics. The ARM cores are getting so fast today that you can probably decode hi-res videos using FFMPEG...
Yes, this is what disappoints me. This is not promising at all:
http://en.wikipedia.org/wiki/Graphics_hardware_and_FOSS#ARM
Mali (ARM), PowerVR (Imagination Technologies) and VideoCore (Broadcom) are the main 3D graphics cores for ARM based chips. None have (and none of the vendors have any interest in providing) FLOSS drivers.
Your best bet for free video drivers is probably Mali at the moment, as that's the furthest-forward reverse-engineering project (SFAIK). But Snapdragon (Qualcomm) is also worth considering as Freedreno has also made useful progress. There are at least 5 different graphics cores available, and 3 or 4 of them have RE projects to free them up, but it'll be a while before any are in useful shape.
If you have any relevant expertise (or would like to aquire some) you will be exceedingly welcome to help out.
Yes, I have seen these - My expertise lies primarily in boot loader development, but I am keen to help with testing and data collection (I simply do not have enough time to start deep RE efforts atm)
The other issue I have is that these efforts are primarily geared towards the 3D hardware and not the video decoding units. For example, the A10 use the Mali core, but it also has it's own core (CedarX) for video stream decoding
Regards,
Graeme