Official Debian armhf

Started by The Wrong Cop, September 17, 2014, 12:23:48 AM

Previous topic - Next topic

The Wrong Cop

Hello,

I'm planning to buy a Lime in order to replace my RPi as a web server.

I know that the RPi is not compatible with official armhf debian image for hard-float-point-reasons, but what I can't find is if A10-Lime is compatible with it ?

Actually, I would prefer to use the official image from Debian site than the image from olimex to start from a minimal installation.

Thanks for your help.

Chax

#1
I haven't tested it, but I think it is.

I find that the easiest way to install Debian on (any) device is to just start the installer using QEMU-arm using a virtual raw image. You just get the standard PC alike installer for arm (actually running on your PC!) and in the end you have a binary image that you can write to the SD card. Then you only have to put U-boot and a kernel on it and you are ready to go.

Or you can use that Olimex image and replace the files of the EXT4 partition with the files that come out of your installer.

Maybe you can run the 'initrd' installer for debian direcly but I haven't tested that.

Some pointers:
* Info about the qemu process: http://www.aurel32.net/info/debian_arm_qemu.php
* The Debian installer for ARM (non-hf) http://ftp.de.debian.org/debian/dists/stable/main/installer-armel/current/images/versatile/netboot


MBR

I'm not sure about the A10, but on A13 I use normal Debian armhf. And the RPI is really a bit special, it's not ARMv7 (the one for whah is Debian armhf compiled for), but just ARMv6.

The Wrong Cop

Ok thanks for your answers.

I found a debian wiki https://wiki.debian.org/InstallingDebianOn/Allwinner/A10-OLinuXino-LIME
which seems to answer my question.

But I'm not even sure to understand, would you know what means "bootstrap" ?

It's not that I don't like to solve problems and all but at least if the board could be compatible with a standard distribution, and the problems related only to software configuration, it would be better.

So LIME won't be for me.

MBR

By the boostrap, they probably mean the command deboostrap, wchich can install a new minimal system on a running one.

oldpenguin

@The Wrong Cop

The board is compatible at least with Debian.
I have successfully instaled it starting from SD and running debootstrap or just copying a root file system from available ones.
I've been using armhf cross-compilers from Linaro (gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux) to cross compile on my host and native compiler when compiling on target.
As with most embedded platforms, you don't use the standard debian kernel so you have to compile one yourself
There are images available to run Debian from SD.
The problem is when you want to run something from flash. There is no documented way of doing that, and you have to resort to several tricks that you can easily find around this forum (search for NAND flash)

Regards

The Wrong Cop

I read some more things about deboostrap and i think I understand.

The problem is you can't start the installation like you would do on a regular PC, booting from CD or USB right ?

That's why you have to use debootstrap and all ? It's like you install debian on the SD card from a computer ? And if I want to install it on a SATA disk, would it be the same ?

What is the problem with standard debian kernel ? If it is so common to compile it for embedded platforms, then who is using the standard ?

Thank you very much for your informations.

oldpenguin

Hello The Wrong Cop

QuoteThe problem is you can't start the installation like you would do on a regular PC, booting from CD or USB right ?

No because there is no bios. The CPU has an internal boot loader that can boot from SD or flash (not sure if it can boot from USB). If you google around you can find good info on this (search for linux-sunxi).

QuoteThat's why you have to use debootstrap and all ? It's like you install debian on the SD card from a computer ? And if I want to install it on a SATA disk, would it be the same ?

The easiest way to start working with these boards is to boot from SD using one of the available images. You just burn the image into the SD and start the board and thats it. Then you can start doing some experiments like programming flash or using SATA.

QuoteWhat is the problem with standard debian kernel ? If it is so common to compile it for embedded platforms, then who is using the standard ?

There is no nothing wrong with the standard kernel. Its just made for plain PC architecture.
The problem with embedded boards is that they have no standard architecture like PC, so it would be very difficult to support every different platform directly in the kernel. Normally you have to use a mainline kernel and apply patches the platform maintainers provide. These patches are used to tweak/modify/adapt the kernel for specific hardware features and so on.
Actually there are some lucky platforms that have support in mainline kernel, but I've never used one.
With AllWinner CPUs instead, the community maintains a specific kernel that tracks the mainline kernel. Other platforms do this as well, but sometimes you get the kernel already packaged or with the patching hidden in some installation script.

Regards

MBR

Yes, you can use a very generic kernel on PCs, but you cannot do this on ARMs, because there is no standard way to enumerate devices - ARMs lack PCI, ACPI or PnP. The most used way to get the HW info is the device tree, a binary database, compiled from a text source, attached to the kernel image (see http://en.wikipedia.org/wiki/Device_tree), but on AllWinner, the FEX file is used instead (see http://linux-sunxi.org/Fex_Guide).

So if you want "a something that boots everywhere", on PC you will need one or two kernels (32- and 64-bit one) and two bootloaders (the first for BIOS, the second for UEFI). On ARM, you will need a special kernel and a special version of bootloader for each family - one for AllWinners, one for Atmels, one for NPXs, one for STs, one for TIs, one for Cirruses (or Cirri?) and so on ...

The Wrong Cop

Well thank you very much fr your interesting answers.
It appears more clear to me now and I remain very interested with the LIME board.
I found out that two LIME versions exist, with A!0 or A20. For 3 euros difference, I think I will go for A20.

ckk

With the upcoming Jessie release (soon), installing Debian using the official installation media should be trivial. I verified this with the A10 and the Beta2 of the installer over the weekend. IIRC graphics aren't not working yet but otherwise there were no problems. There is no need for third-party components, we have everything in mainline. All you need is an empty SD card (for the LIME) and an USB stick (for the Debian install ISO).

I checked this both for the A10-OLinuXino-LIME and the A20-OLinuXino-LIME. The latter wasn't supported out-of-the-box yet (missing dtb) but the necessary changes have already been committed and full support for that device should be available soon as well.

I'll update the Debian wiki and post a link here as soon as some other things are sorted out!