Hi there,
after paying unexpectly high toll duties, I got my board in hands.
I started the board by pugging in USB OTG... but I guess this is not supported, so I connected 5V via USB3 HUB, that provides 2A per port. Even I ordered a board without Wallplug, I got one that is 100-250V but US... Fortunately I do have some adapters ...
The board does not feature a power LED and the fan didn't start too. So I feard my board is defective... I was interrupted by a call when suddenly a blue LED came up blinking! But then I attached serial console and saw that there was an Android booting that either didn't show a logo or was not satisfied with my HDMI TV screen. After unplugging and reconnecting my TV, Android launcher was shown!
As I want to have linux on running on the board, I downloaded the lubuntu 0930 image from here and flashed it using the linux tool...
Doesn't boot...
#Boot ver: 2014-10-30#2.17
sn:100612000100014A
no fuel gauge found
no fuel gauge found
read logo_on switch from dts [0]
checkKey
vbus = 1
no fuel gauge found
Hit any key to stop autoboot: 0
failed to load fdt from boot!
kernel @ 0x02000000 (0x005fd670)
ramdisk @ 0x059fc000 (0x00275b49)
Secure Boot state: 0
bootrk: do_bootm_linux...
Loading Device Tree to 0561c000, end 05636f1c ... OK
Add bank:0000000000000000, 0000000080000000
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x500
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0 (dujw@tchipserver2) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #41 SMP PREEMPT Tue Nov 11 16:35:58 CST 2014
[ 0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[ 0.00�DDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
I downloaded the older image ... doesn't boot too...
U-Boot 2014.01-00643-g77f8e4c-dirty (Apr 21 2014 - 15:36:44)
CPU: RK32xx
arm pll: 1008000000
general pll: 594000000
codec pll: 594000000
ddr pll: 300000000
new pll: 24000000
Board: RK32xx platform Board
DRAM: 128 MiB
arch_interrupt_init
storage init OK!
Using default environment
In: serial
Out: serial
Err: serial
In: serial
Out: serial
Err: serial
board_late_init
PowerKeyInit start
PowerKeyInit end
charger_init, charger_type = 1, dc_is_charging= 0
pmic_charger_setting charger_type = 1
i2c_set_bus_num: I2C bus = 0
rk_i2c_init: I2C bus = 0
i2c->regs_addr = ff650000,set clk(I2C_CLKDIV: 0x003f003f)
pmic_charger_setting charge ic id = 0xff
GetParam
check parameter success
Unknow param: MACHINE_MODEL:rk30sdk!
Unknow param: MACHINE_ID:007!
Unknow param: MANUFACTURER:RK30SDK!
Unknow param: PWR_HLD: 0,0,A,0,1!
partition(resource): offset=0x00002000, size=0x00008000
partition(boot): offset=0x0000A000, size=0x00008000
partition(misc): offset=0x00012000, size=0x00002000
partition(backup): offset=0x00014000, size=0x0001A000
partition(linuxroot): offset=0x0002E000, size=0xFFFFFFFF
sn:100612000100014A
checkKey
vbus = 1
reboot to rockusb.
startRockusb,178817
DDR Version 1.00 20140404
In
SRX
Channel a: DDR3 300MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 300MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
OUT
Then I downloaded the Android images from the server to restore the original environment... I thought..
Guess what? Doesn't boot...
#Boot ver: 2014-10-30#2.17
sn:100612000100014A
no fuel gauge found
no fuel gauge found
read logo_on switch from dts [0]
checkKey
vbus = 1
no fuel gauge found
got recovery cmd from misc.
failed to load fdt from recovery!
kernel @ 0x02000000 (0x005f3cf8)
ramdisk @ 0x059fc000 (0x004108ce)
Secure Boot state: 0
bootrk: do_bootm_linux...
Loading Device Tree to 0561c000, end 05636f1c ... OK
Add bank:0000000000000000, 0000000080000000
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x500
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0 (dujw@tchipserver2) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #40 SMP PREEMPT Tue Nov 11 16:26:39 CST 2014
[ 0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[ �DDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
All in all this is a pretty stumbling start...
What I miss on that board is
- Power LED
- Marking of PCB Revision, to find the correct schematics, PCB and software packages.
- A version of uboot that has the MMU bug fixed or a kernel that takes care of the loaders problem?
- A forum editor where I can set correct line spacings ...
That's so far a report of the first 45minutes with my firefly board
Kind regards
Astralix
Update:
On the IRC linux-rockchip there has be a hint about a MMU init problem between uboot and kernel. To check for this and updated drivers I ...
Downloaded the SDK mentioned in the wiki and followed the instructions.
Commpiled my own uboot from the SDK:
uboot starts correctly:
U-Boot 2014.10-RK3288-02 (Dec 17 2014 - 14:51:58)
CPU: rk3288
CPU's clock information:
arm pll = 600000000HZ
periph pll = 300000000HZ
ddr pll = 200000000HZ
codec pll = 594000000HZ
Board: Rockchip platform Board
DRAM: Found dram banks:1
Adding bank:0000000000000000(0000000080000000)
128 MiB
storage init OK!
Using default environment
GetParam
check parameter success
Unknow param: MACHINE_MODEL:rk30sdk!
Unknow param: MACHINE_ID:007!
Unknow param: MANUFACTURER:RK30SDK!
Unknow param: PWR_HLD: 0,0,A,0,1!
failed to prepare fdt from boot!
power key: bank-0 pin-5
can't find dts node for ricoh619
pmic:act8846
Can't find dts node for fuel guage cw201x
SecureBootEn = 0, SecureBootLock = 0
#Boot ver: 2014-12-17#2.17
empty serial no.
checkKey
vbus = 1
rockusb key pressed.
U-Boot 2014.10-RK3288-02 (Dec 17 2014 - 14:51:58)
CPU: rk3288
CPU's clock information:
arm pll = 600000000HZ
periph pll = 300000000HZ
ddr pll = 200000000HZ
codec pll = 594000000HZ
Board: Rockchip platform Board
DRAM: Found dram banks:1
Adding bank:0000000000000000(0000000080000000)
128 MiB
storage init OK!
Using default environment
GetParam
check parameter success
Unknow param: MACHINE_MODEL:rk30sdk!
Unknow param: MACHINE_ID:007!
Unknow param: MANUFACTURER:RK30SDK!
Unknow param: PWR_HLD: 0,0,A,0,1!
failed to prepare fdt from boot!
power key: bank-0 pin-5
can't find dts node for ricoh619
pmic:act8846
Can't find dts node for fuel guage cw201x
SecureBootEn = 0, SecureBootLock = 0
#Boot ver: 2014-12-17#2.17
empty serial no.
checkKey
vbus = 1
no fuel gauge found
no fuel gauge found
read logo_on switch from dts [0]
no fuel gauge found
Hit any key to stop autoboot: 0
failed to load fdt from boot!
kernel @ 0x02000000 (0x005fd670)
ramdisk @ 0x04bf0000 (0x00275b49)
Secure Boot state: 0
bootrk: do_bootm_linux...
Loading Device Tree to 0480d000, end 04827f1c ... OK
Add bank:0000000000000000, 0000000080000000
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x500
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0 (dujw@tchipserver2) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #41 SMP PREEMPT Tue Nov 11 16:35:58 CST 2014
[ 0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[ 0.000�DDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
uboot fetches kernel correctly but kernel fails to boot at the same point where it fails with the original image. So there was something else changed to get from 2014.10-01 to 2014.10-02 version of uboot...
However there was a hint to reset the MMU in the kernel to avoid that crash from the kernel side. Thanks to mmind00!
I cpoied that lines to head.S from kernel and rebuild the image but the result is almost the same:
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x500
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0 (astralix) (gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09) ) #1 SMP PREEMPT Wed Dec 17 16:07:54 CET 2014
[ 0.000000] CPU: ARMv7 Process�DDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
Astralix
OK here's what I get from my device (from power on to loader mode)
DDR Version 1.00 20140630
In
Channel a: DDR3 300MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 300MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
U-Boot 2014.04-RK3288-01-01104-gf91c05d (Sep 25 2014 - 09:46:59)
CPU: rk3288
CPU's clock information:
arm pll = 600000000HZ
periph pll = 297000000HZ
ddr pll = 300000000HZ
codec pll = 384000000HZ
Board: Rockchip platform Board
Found dram banks:1
Adding bank:0000000000000000(0000000080000000)
DRAM: 128 MiB
storage init OK!
Using default environment
GetParam
check parameter success
Unknow param: MACHINE_MODEL:rk30sdk!
Unknow param: MACHINE_ID:007!
Unknow param: MANUFACTURER:RK30SDK!
Unknow param: PWR_HLD: 0,0,A,0,1!
failed to prepare_fdt from boot!
no adc node
can't find dts node for ricoh619
can't find dts node for act8846
can't find dts node for rk808
can't find dts node for rk818
Can't find dts node for fuel guage cw201x
can't find dts node for ADC
SecureBootEn = 0, SecureBootLock = 0
#Boot ver: 2014-09-25#2.16
sn:100611000100001C
checkKey
vbus = 1
rockusb key pressed.
That's the U-Boot as shipped with the device. The shipped Ubuntu worked OK.
I can also build and boot kernel's from the Firefly SDK. I'm cross compiling
under x86-64 Fedora 20 with gcc 4.9.1
Currently I'm trying to get current mainline running. Using linux-next + some
patches and naobsd's firefly device tree, the kernel is getting as far as trying to
mount the root filesystem but is failing as it seems the eMMC isn't getting set up
right. But things seem to be moving in the right direction at least.
Cheers,
Andrew
Looks like the firefly-rk3288.dts is incomplete.
At least, after adding a section
memory {
reg =;
};
The kernel boots till setup of framebuffers, before it crashes again:
[ 0.684256] rk32-lvds rk32-lvds: rk32 lvds driver probe success
[ 0.684487] rk32-edp ff970000.edp: screen is not edp!
[ 0.684511] rk32-edp: probe of ff970000.edp failed with error -22
[ 0.684898] rk3288-lcdc lcdc0: can't find power_ctr node for lcdc0
[ 0.685197] graphics fb0: rockchip framebuffer registerd:fb0
[ 0.685563] graphics fb1: rockchip framebuffer registerd:fb1
[ 0.685723] graphics fb2: rockchip framebuffer registerd:fb2
[ 0.685868] graphics fb3: rockchip framebuffer registerd:fb3
[ 0.686019] graphics fb4: roDDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
So please, firefly team, provide a complete firefly-rk3288.dts for the board.
Astralix
Hi Astralix, please try the dual firmware file in Google drive:
https://drive.google.com/folderview?id= ... =drive_web
, which is listed in http://www.t-firefly.com/en/download/ .
I check your kernel version and conclude that you are using the old firmware file.
About u-boot, v2.17 and above is good for use.
Ok, the fun has only lasted short time...
While just showing a youtube overview screen, the board rebooted and is again trapped in a boot loop.
U-Boot 2014.10-RK3288-02 (Nov 26 2014 - 09:28:44)
CPU: rk3288
CPU's clock information:
arm pll = 600000000HZ
periph pll = 300000000HZ
ddr pll = 200000000HZ
codec pll = 594000000HZ
Board: Rockchip platform Board
DRAM: Found dram banks:1
Adding bank:0000000000000000(0000000080000000)
128 MiB
storage init OK!
Using default environment
GetParam
check parameter success
Unknow param: MACHINE_MODEL:rk30sdk!
Unknow param: MACHINE_ID:007!
Unknow param: MANUFACTURER:RK30SDK!
Unknow param: PWR_HLD: 0,0,A,0,1!
failed to prepare fdt from boot!
power key: bank-0 pin-5
can't find dts node for ricoh619
pmic:act8846
Can't find dts node for fuel guage cw201x
SecureBootEn = 0, SecureBootLock = 0
#Boot ver: 2014-11-26#2.17
empty serial no.
checkKey
vbus = 1
no fuel gauge found
no fuel gauge found
read logo_on switch from dts [0]
no fuel gauge found
got recovery cmd from misc.
failed to load fdt from recovery!
kernel @ 0x02000000 (0x00608530)
ramdisk @ 0x04bf0000 (0x00275b8f)
Secure Boot state: 0
bootrk: do_bootm_linux...
Loading Device Tree to 0480b000, end 04826184 ... OK
Add bank:0000000000000000, 0000000080000000
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x500
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0 (dujw@tchipserver2) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #63 SMP PREEMPT Thu Dec 11 17:22:26 CST 2014
[ 0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: Rockchip RK3288 (Flattened Device Tree), model: rockchip,rk3288
[ 0.000000] hdmi init vic is -1
[ 0.000000] rockchip_ion_reserve
[ 0.000000] cma: CMA: reserved 16 MiB at 2e800000
[ 0.000000] Memory policy: ECC disabled, Data cache writealloc
[ 0.000000] Boot mode: RECOVERY (2) flag: RECOVER (0xc3524203)
[ 0.000000] PERCPU: Embedded 9 pages/cpu @c1ed4000 s14016 r8192 d14656 u36864
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 522768
[ 0.000000] Kernel command line: console=ttyFIQ0 androidboot.hardware=rk30board androidboot.console=ttyFIQ0 board.ap_has_alsa=0 root=/dev/block/mtd/by-name/linuxroot rw rootfstype=ext4 init=/sbin/init mtdparts=rk29xxnand:0x00002000@0x00000000(parameter),0x00002000@0x00002000(uboot),0x00002000@0x00004000(misc),0x00008000@0x00006000(resource),0x00008000@0x0000e000(kernel),0x00010000@0x00016000(boot),0x00010000@0x00026000(recovery),0x0001a000@0x00036000(backup),0x00040000@0x00050000(cache),0x00002000@0x00090000(kpanic),0x0018000�DDR Version 1.00 20141007
In
Channel a: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 200MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Memory OK
Memory OK
OUT
It is the unmodified DualBoot v0930 image.
EDIT:
As I got a US power supply, I used the USB adapter cable connected to a USB3 HUB that is powered by a 5A supply.
This doesn't work... I used some test cables from the lab to do a flying adaption of US to Euro (don't try this at home!) and it boots again into Linux or Android.
So, if you encounter same problem you should try to change the way you supply power to the fly
EDIT:
The FAN is labeled 5V so I connected it to the 5V labeled upper contacts of the right extention port. What I didn't see was, that there are two contacts labeled FAN+ / FAN- at the lower end of this port. Using these pins while again supplying power with the USB adapter cable, it works more stable. Still testing this.
It looks like the fan introduces too much ripple into the 5V power train if it is connected to the upper 5V pins.
So the correct connection of the fan should be mentioned in the starter guide under a chapter mechanical assembly?
http://wiki.t-firefly.com/index.php/Fir ... r_guide/en
Astralix
Welcome Firefly Open Source Community (https://bbs.t-firefly.com/) | Powered by Discuz! X3.1 |