On 13 April 2014 13:25, Robert Brown <rebrown@exemail.com.au> wrote:
Thanks for your suggestions Erik.

I see that the current BDI3000 device is worth more than the combined hardware cost of what I am working with. I am no developer and I guess I am really just hoping some-one can tell me
a)    if my cross-compile method is flawed or
b)    if there is a way of accessing the u-boot prompt (keystroke?) on the (HDMI connected) screen the MK802II plugs into or
c)    if trying to compile a kernel 3.10 or later for this device is fundamentally problematic or

That, in a nutshell. Just about all these (Allwinner, Rockchip, etc) type of devices are stuck on 3.2 or 3.4 kernels at best, and many are still on 3.0.
Usually the actual CPU itself is supported and will start booting a recent kernel, but the drivers to access the NAND, SD card, video (and other vital features) are only available as binary blobs (compiled for the old kernels) without source code. (Despite GPL requirements)
 
d)    how to compile the rtl2832u.ko module for a 3.4.67 kernel where source files don't seem to natively exist.

If it exists for a later kernel, then you can attempt to backport it yourself, but this is very hard unless you're familiar with developing Linux drivers already.
 

This DVB-T device is quite common so I am surprised at the struggle I am having making progress on any of the above for the armv7 architecture. Further details below.

To be fair, it's not the ARMv7 architecture that is the problem here.
 

On 11/04/14 15:33, Erik Christiansen wrote:
On 10.04.14 18:28, Robert Brown wrote:
Following some research on the later kernels and the role of u-boot and dtsb
I have used the following - but again without a successful boot:
...

When it fails to boot there's not much chance of troubleshooting as I have
not been able to get to the uboot prompt.
Anyone got any thoughts?
The one time I set out to port linux to an embedded platform (PPC in
that case), I made sure I had a BDI2000 debugger before starting.
It's good for u-boot or kernel debugging, not so good for user-space
processes, because it supports only one contiguous memory space. In
particular the bdiGDB system for the BDI2000 supports Linux kernel
debugging including when the MMU is enabled. I found it invaluable while
struggling to get to the uboot prompt. (More than half a decade ago,
now.)

In its absence, I would only expect to make progress given logging (e.g.
on a serial port) from uboot and the kernel. While most of my quarter of
a century of embedded systems development used In-Circuit Emulators,
good progress can be made with nothing more than strategically sprinkled
printf statements and a good helping of persistence.

Are you using your own Board Support Package, or relying on someone
else's work there? (I.e. Is that, at least, tested?)

Erik




Following some research on the later kernels and the role of u-boot and dtsb I have used the following - but again without a successful boot:

make -j5 ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabihf- menuconfig
make -j5 ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabihf- LOADADDR=0x40008000 uImage dtbs
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabihf- -j5 INSTALL_MOD_PATH=output modules
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabihf- -j5 INSTALL_MOD_PATH=output modules_install

put a copy of the created uImage and arch/arm/boot/sun4i-a10-a1000.dtb into the boot partition of the sdcard
copy the created modules to the /lib/modules on the rootfs partition

In case the existing boot.scr has some inconsistency I save this to boot.cmd:


setenv bootargs console=ttyS0,115200 root=/dev/sda1 rootwait ro earlyprintk debug
ext2load mmc 0 0x46000000 uImage
ext2load mmc 0 0x49000000 sun4i-a10-a1000.dtb
env set fdt_high ffffffff
bootm 0x46000000 - 0x49000000

and run:
mkimage -C none -A arm -T script -d boot.cmd boot.scr

copy this boot.scr to the boot partition of the sdcard

When it fails to boot there's not much chance of troubleshooting as I have not been able to get to the uboot prompt.
Anyone got any thoughts?

Thanks
Rob

-------- Original Message --------
Subject: Fwd: Cross-Compiling for Armv7
Date: Sat, 22 Mar 2014 11:02:26 +1100
From: Robert Brown <rebrown@exemail.com.au>
To: luv-beginners@luv.asn.au



Do I need to use u-boot to start uImage or can I just put a copy of it in the boot partition? Maybe that is where the failure to boot arises.

Thanks

-------- Original Message --------
Subject: Cross-Compiling for Armv7
Date: Thu, 20 Mar 2014 21:46:03 +1100
From: Robert Brown <rebrown@exemail.com.au>
To: luv-beginners@luv.asn.au


Hi
Is anyone able to offer helpful tips or new directions with this:
I am wanting to use a usb device with ID 0bda:2838 Realtek Semiconductor 
Corp. RTL2838 DVB-T on a MK802II mini pc using the Allwinner A10 cpu.

This device requires modules rtl2830.ko, rtl2832.ko and dvb_usb_rtl28xxu.
The second of these modules does not seem to exist without patches on 
kernel 3.4 but on a raspberry pi I have been successful using kernel 
3.10.25+.

Here is the relevant lsmod from the pi:
r820t                  16279  1
rtl2832                 8020  1
dvb_usb_rtl28xxu       14333  1
dvb_usb_v2             14860  1 dvb_usb_rtl28xxu
rc_core                16313  3 dvb_usb_rtl28xxu,dvb_usb_v2
rtl2830                 7378  1 dvb_usb_rtl28xxu
dvb_core               92797  3 rtl2830,rtl2832,dvb_usb_v2

However when I try to compile a kernel for the A10 with 3.10.25+ I have 
no success.

If I use the raspi sources for the cross-compile:
https://github.com/raspberrypi/linux/archive/rpi-3.10.y.tar.gz
I get errors that seem unresolvable:
e.g.: undefined reference to `v6wbi_flush_kern_tlb_range'

If I use the sunxi kernel source:
https://github.com/linux-sunxi/linux-sunxi/tree/reference-3.10
the compile completes without error and I get modules and a uImage file 
but the device won't boot

I am using this as a guide: 
http://jas-hacks.blogspot.com.au/2012/10/hackberry-a10-compiling-kernel-armhfs.html

I have tried using various .config files as a starting point including 
the pi and from the earlier 3.4 kernel without success

Does anyone have any experience in this area? Any help would be much 
appreciated.

Thanks
Rob




_______________________________________________
luv-main mailing list
luv-main@luv.asn.au
http://lists.luv.asn.au/listinfo/luv-main



--
Turning and turning in the widening gyre
The falcon cannot hear the falconer
Things fall apart; the center cannot hold
Mere anarchy is loosed upon the world