Giter Site home page Giter Site logo

pine64's People

Contributors

andre-arm avatar apritzel avatar n1tehawk avatar zador-blood-stained avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pine64's Issues

Failed to boot with the pine64_linux-20160121.img.xz image

Hi,
I tried to boot my Pine64+ 2GB with your pine64_linux-20160121.img.xz image (MD5 sum: f6d2914894a62d08a16c95495248702e)
I have the UART0 connected and can see the debug message and U-Boot prompt time out.
However, it stops forever after showing "Starting kernel ..." and two INFO logs.
I think the expected result should be a Debian installer.
The complete log is attached, do you have any idea?
Thanks!

HELLO! BOOT0 is starting!
boot0 commit : 045061a8bb2580cb3fa02e301f52a015040c158f

boot0 version : 4.0.0
set pll start
set pll end
rtc[0] value = 0x00000000
rtc[1] value = 0x00000000
rtc[2] value = 0x00000000
rtc[3] value = 0x00000000
rtc[4] value = 0x00000000
rtc[5] value = 0x00000000
DRAM driver version: V1.1
rsb_send_initseq: rsb clk 400Khz -> 3Mhz
PMU: AXP81X
ddr voltage = 1500 mv
DRAM Type = 3 (2:DDR2,3:DDR3,6:LPDDR2,7:LPDDR3)
DRAM clk = 672 MHz
DRAM zq value: 003b3bbb
DRAM single rank full DQ OK
DRAM size = 2048 MB
DRAM init ok
dram size =2048
card boot number = 0, boot0 copy = 0
card no is 0
sdcard 0 line count 4
[mmc]: mmc driver ver 2015-05-08 20:06
[mmc]: sdc0 spd mode error, 2
[mmc]: Wrong media type 0x00000000
[mmc]: ***Try SD card 0***
[mmc]: HSSDR52/SDR25 4 bit
[mmc]: 50000000 Hz
[mmc]: 30436 MB
[mmc]: ***SD/MMC 0 init OK!!!***
sdcard 0 init ok
The size of uboot is 000fc000.
sum=a3d52686
src_sum=a3d52686
Succeed in loading uboot from sdmmc flash.
boot0: start load other image
boot0: Loading BL3-1
Loading file 0 at address 0x40000000,size 0x0000b400 success
boot0: Loading scp
Loading file 2 at address 0x00040000,size 0x00019c00 success
set arisc reset to de-assert state
Ready to disable icache.
%9=▒NOTICE:  BL3-1: v1.0(debug):045061a
NOTICE:  BL3-1: Built : 14:30:28, Dec  3 2015
NOTICE:  BL3-1 commit: 045061a8bb2580cb3fa02e301f52a015040c158f

INFO:    BL3-1: Initializing runtime services
INFO:    BL3-1: Preparing for EL3 exit to normal world
INFO:    BL3-1: Next image address = 0x4a000000
INFO:    BL3-1: Next image spsr = 0x1d3


U-Boot 2014.07 (Dec 03 2015 - 14:30:33) Allwinner Technology

uboot commit : 045061a8bb2580cb3fa02e301f52a015040c158f

rsb: secure monitor exist
[      0.387]pmbus:   ready
[      0.390][ARISC] :arisc initialize
[      0.720][ARISC] :arisc_dvfs_cfg_vf_table: support only one vf_table
[SCP] :sunxi-arisc driver begin startup 2
[SCP] :arisc_para size:1a8
[SCP] :arisc version: [v0.1.76]
[SCP] :sunxi-arisc driver v1.10 is starting
[      0.848][ARISC] :sunxi-arisc driver startup succeeded
[      0.881]PMU: AXP81X
[      0.883]PMU: read AXP81X 84H=0xf2
[      0.887]PMU: write AXP81X 84H=0xf6
[      0.890]PMU: AXP81X found
bat_vol=264, ratio=100
[      0.897]PMU: dcdc2 1100
[      0.900]PMU: cpux 1008 Mhz,AXI=336 Mhz
PLL6=600 Mhz,AHB1=200 Mhz, APB1=100Mhz AHB2=300Mhz MBus=400Mhz
device_type = 3253, onoff=1
dcdc1_vol = 3300, onoff=1
dcdc2_vol = 1100, onoff=1
dcdc6_vol = 1100, onoff=1
aldo1_vol = 2800, onoff=0
aldo2_vol = 1800, onoff=1
aldo3_vol = 3000, onoff=1
dldo1_vol = 3300, onoff=0
dldo2_vol = 3300, onoff=0
dldo3_vol = 2800, onoff=0
dldo4_vol = 3300, onoff=1
eldo1_vol = 1800, onoff=1
eldo2_vol = 1800, onoff=0
eldo3_vol = 1800, onoff=0
fldo1_vol = 1200, onoff=0
fldo2_vol = 1100, onoff=1
gpio0_vol = 3100, onoff=0
vbus exist
no battery, limit to dc
run key detect
no key found
no uart input
DRAM:  2 GiB
fdt addr: 0xb6eb70e0
Relocation Offset is: 75f09000
In:    serial
Out:   serial
Err:   serial
gic: sec monitor mode
[      1.710]start
drv_disp_init
init_clocks: finish init_clocks.
enable power vcc-hdmi-33, ret=0
drv_disp_init finish
boot_disp.output_disp=0
boot_disp.output_type=1
boot_disp.output_type=4
fetch script data boot_disp.auto_hpd fail
disp0 device type(1) enable
[      2.041]end
workmode = 0,storage type = 1
[      2.045]MMC:        0
[mmc]: mmc driver ver 2015-07-29 14:10:00
SUNXI SD/MMC: 0
[mmc]: start mmc_calibrate_delay_unit, don't access device...
[mmc]: delay chain cal done, sample: 192(ps)
[mmc]: media type 0x0
[mmc]: Wrong media type 0x0
[mmc]: ************Try SD card 0************
[mmc]: host caps: 0x27
[mmc]: MID 03 PSN 736c4384
[mmc]: PNM SE32G -- 0x53-45-33-32-47
[mmc]: PRV 8.0
[mmc]: MDT m-5 y-2016
[mmc]: speed mode     : HSSDR52/SDR25
[mmc]: clock          : 50000000 Hz
[mmc]: bus_width      : 4 bit
[mmc]: user capacity  : 30436 MB
[mmc]: ************SD/MMC 0 init OK!!!************
[mmc]: erase_grp_size      : 0x1WrBlk*0x200=0x200 Byte
[mmc]: secure_feature      : 0x0
[mmc]: secure_removal_type : 0x0
[      2.267]sunxi flash init ok
*** Warning - bad CRC, using default environment

--------fastboot partitions--------
-total partitions:8-
-name-        -start-       -size-
dtb         : 100000        10000
altdtb      : 200000        10000
bpart       : 1000000       6400000
env         : 7500000       100000
boot        : 7700000       1000000
shell       : 8800000       2000000
debug       : a900000       1000000
mainline    : ba00000       2000000
-----------------------------------
base bootcmd=run setargs_nand boot_normal
bootcmd set setargs_mmc
key 0
recovery key high 12, low 10
fastboot key high 6, low 4
no misc partition is found
to be run cmd=run setargs_mmc boot_normal
update dtb dram start
update dtb dram  end
serial is: 5400519008086407078b
no battery exist
sunxi_bmp_logo_display
** Unrecognized filesystem type **
sunxi bmp info error : unable to open logo file bootlogo.bmp
[      2.584]inter uboot shell
Hit any key to stop autoboot:  0
[      5.740]sunxi flash read :offset 7500000, 1048576 bytes OK
## Info: input data size = 477 = 0x1DD
[      5.758]sunxi flash read :offset 100000, 65536 bytes OK
[      7.200]sunxi flash read :offset 8800000, 33554432 bytes OK
Android's image name: Pine64
Kernel load addr 0x41080000 size 11747 KiB
RAM disk load addr 0x42000000 size 4331 KiB
WARNING: could not set bootargs FDT_ERR_NOSPACE.
fdt_initrd: FDT_ERR_NOSPACE
[      7.485]ready to boot
prepare for kernel
[mmc]: MMC Device 2 not found
[mmc]: mmc 2 not find, so not exit

Starting kernel ...

INFO:    BL3-1: Next image address = 0x41080000
INFO:    BL3-1: Next image spsr = 0x3c5

tools directory and sunxi-tools

This repo contains some useful scripts and tools in the tools/ subdirectory.
Wouldn't it be better to add them to the linux-sunxi/sunxi-tools repository instead?

How it is created

Hi,
First I wanna thank you for this fantastic work, that's what I was waitinf for for my board.
I just want to know if it's possible that you share how you did it and explain all the steps followed.
thanks in advance,

Readonly Filesystem

Hey there!

It seems that after copying a rootfs (debian jessie, in my case) to the /dev/sdd10 partition (which I have formatted to ext4 via gparted) of the SD card, and following the instructions laid out in the readme, the board successfully boots into a linux shell. The issue, however, is that the partition the rootfs is located on is in readonly mode. Is there a step I'm missing, or is it to do with the way the partition was formatted?

Thanks,
~Jaci

kernel panic with 4.4.0-rc8

Under heavy load, the kernel panics from time to time ...

Bad mode in Synchronous Abort handler detected, code 0x86000005 -- IABT (current EL)
CPU: 2 PID: 0 Comm: swapper/2 Not tainted 4.4.0-rc8 #5
Hardware name: Pine64+ (DT)
task: ffffffc0304e7300 ti: ffffffc0304ec000 task.ti: ffffffc0304ec000
PC is at 0x200000
LR is at sched_clock+0x50/0xd8
pc : [<0000000000200000>] lr : [<ffffffc000158788>] pstate: 200001c5
sp : ffffffc0304ef9b0
x29: ffffffc0304ef9b0 x28: 0000000000000002
x27: 0000000000000007 x26: ffffffc000d76988
x25: 0000000001000000 x24: ffffffc03dfd1c80
x23: ffffffc03dfd2530 x22: ffffffc000d76980
x21: 0000000000000000 x20: ffffffc000d3ada0
x19: ffffffc000d76988 x18: 0000007fd3bf0b70
x17: 000000000043b280 x16: ffffffc000240668
x15: ffffffffffffffff x14: 0000000000000000
x13: 0000000000000000 x12: 0000000000000000
x11: 1ffffff805f1df8a x10: 1ffffff807bf9e33
x9 : ffffff8807bf9e33 x8 : dfffff9000000000
x7 : 0000000000000000 x6 : 00225510229b6000
x5 : dfffff9000000000 x4 : 0000000000000000
x3 : 00000000f4f4f404 x2 : 1ffffff8001aed34
x1 : dfffff9000000000 x0 : 0000000000200000

Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP
Modules linked in:
CPU: 2 PID: 0 Comm: swapper/2 Not tainted 4.4.0-rc8 #5
Hardware name: Pine64+ (DT)
task: ffffffc0304e7300 ti: ffffffc0304ec000 task.ti: ffffffc0304ec000
PC is at 0x200000
LR is at sched_clock+0x50/0xd8
pc : [<0000000000200000>] lr : [<ffffffc000158788>] pstate: 200001c5
sp : ffffffc0304ef9b0
x29: ffffffc0304ef9b0 x28: 0000000000000002
x27: 0000000000000007 x26: ffffffc000d76988
x25: 0000000001000000 x24: ffffffc03dfd1c80
x23: ffffffc03dfd2530 x22: ffffffc000d76980
x21: 0000000000000000 x20: ffffffc000d3ada0
x19: ffffffc000d76988 x18: 0000007fd3bf0b70
x17: 000000000043b280 x16: ffffffc000240668
x15: ffffffffffffffff x14: 0000000000000000
x13: 0000000000000000 x12: 0000000000000000
x11: 1ffffff805f1df8a x10: 1ffffff807bf9e33
x9 : ffffff8807bf9e33 x8 : dfffff9000000000
x7 : 0000000000000000 x6 : 00225510229b6000
x5 : dfffff9000000000 x4 : 0000000000000000
x3 : 00000000f4f4f404 x2 : 1ffffff8001aed34
x1 : dfffff9000000000 x0 : 0000000000200000

Process swapper/2 (pid: 0, stack limit = 0xffffffc0304ec020)
Stack: (0xffffffc0304ef9b0 to 0xffffffc0304f0000)
f9a0:                                   ffffffc0304efa10 ffffffc0001041d8
f9c0: ffffffc03dfd1c80 ffffffc000d3ada0 0000000000000002 00000000ffff56b8
f9e0: ffffffc03dfd2530 ffffffc03dfd1c80 0000000000000000 0000000000000002
fa00: 0000000000000007 ffffffc0000ce228 ffffffc0304efa20 ffffffc0000f8f84
fa20: ffffffc0304efa50 ffffffc0000f9218 ffffffc03dfd1c80 ffffffc000d3ada0
fa40: 0000000000000002 ffffffc0000f9208 ffffffc0304efa70 ffffffc000107494
fa60: ffffffc03dfd1c80 ffffffc000107470 ffffffc0304efb30 ffffffc0001128d0
fa80: ffffffc000d1fc80 ffffffc000d3a300 ffffffc000d3ada0 00000000ffff56b8
faa0: 1ffffff80609df78 ffffffc03dfd1c80 0000000000000000 0000000000000002
fac0: 0000000000000007 0000000000000002 ffffffc0304e7300 0000000000000002
fae0: 0000000000000001 ffffffc000d3adb0 ffffffc0008d3f40 0000000000000140
fb00: ffffffc03dfd1c80 ffffffc0304efb00 ffffffc0304efb30 ffffffc0000fe908
fb20: ffffffc0304efb30 ffffffc0001128bc ffffffc0304efc20 ffffffc000112e88
fb40: ffffffc000d1fc80 000000003d2b2000 ffffffc03dfd1c80 0000000000000002
fb60: ffffffc03dfd1c80 00000000ffff56b8 ffffffc000d3a000 000000003d2b2000
fb80: 0000000000000007 0000000000000002 ffffffc0304efbb0 ffffffc000143dd0
fba0: ffffffc03dfcdb80 ffffffc000143dc4 ffffffc0304efcb0 ffffffc0000cd7ac
fbc0: 0000000041b58ab3 ffffffc000bed188 ffffffc000112820 ffffffc000d3a200
fbe0: ffffffc000000001 ffffffc0304ec018 0000000000000101 000000003d2b2000
fc00: 0000000000000001 00000000000000a0 ffffffc0304efc20 ffffffc000112ca0
fc20: ffffffc0304efcb0 ffffffc0000cd7ac 0000000000000007 0000000000000028
fc40: ffffffc000d3a238 ffffffc000d3a210 ffffffc0304ec000 ffffffc0304ec018
fc60: 0000000000000101 000000003d2b2000 0000000000000007 0000000000000002
fc80: ffffffc000d3adb0 ffffffc0006e77e8 ffffffc03dfd5200 ffffffc000d1ba38
fca0: ffffffc0304efcb0 ffffffc000000000 ffffffc0304efd50 ffffffc0000cdd2c
fcc0: ffffffc000d3a000 ffffffc000fcb280 0000000000000100 000000003d2b2000
fce0: 0000000000000000 0000000000000001 ffffffc030410000 ffffffc0304efe10
fd00: ffffffc000d3a000 0000000000000002 00200040304efd60 00000000ffff56b9
fd20: ffffffc00000000a ffffffc000d1ddf8 ffffffc000fcb280 ffffffc0304efcb0
fd40: ffffffc000d1ba38 ffffffc000d1ba5c ffffffc0304efd80 ffffffc00012958c
fd60: ffffffc000d1d000 ffffffc000d1ddf8 0000000000000000 000000003d2b2000
fd80: ffffffc0304efdd0 ffffffc000082808 ffffff900001400c ffffffc0304efe10
fda0: ffffffc000d3d000 ffffff9000014010 ffffff9000015000 ffffffc000d1bac0
fdc0: 0000000000000000 ffffffc0304eff60 ffffffc0304eff30 ffffffc0000855a8
fde0: ffffffc0304ec000 ffffffc0008cd680 ffffffc0304eff30 ffffffc0000868a0
fe00: 0000000020000145 ffffffc02f475080 0000000000000000 dfffff9000000000
fe20: 1ffffff80609d800 0000000000000000 0000000000000000 0000000000000018
fe40: 0021dafe229a6600 0000000000000000 ffffffc0304e7ac0 ffffffc0304efe70
fe60: 0000000000000760 1ffffff805f1df8a 0000000000000000 0000000000000000
fe80: 0000000000000000 ffffffffffffffff ffffffc000240668 000000000043b280
fea0: 0000007fd3bf0b70 ffffffc0304ec000 ffffffc0008cd680 ffffffc000d3a000
fec0: ffffffc0304ec01c 0000000000000000 ffffffc000d1bac0 0000000000000000
fee0: ffffffc0304eff60 ffffffc000d3a000 0000000000000002 ffffffc0304eff30
ff00: ffffffc00008689c ffffffc0304eff30 ffffffc0000868a0 0000000020000145
ff20: 00000000000001c0 ffffffc00013b110 ffffffc0304eff40 ffffffc00011c180
ff40: ffffffc0304eff60 ffffffc00011c460 ffffffc0304ec000 ffffffc00011c36c
ff60: ffffffc0304effc0 ffffffc00009097c ffffffc0008bc480 0000000000000002
ff80: 0000000000000002 ffffffc0304e7300 0000000000000000 0000000000000000
ffa0: 0000000042011000 0000000042014000 ffffffc000082b30 0000000000000000
ffc0: 0000000000000000 0000000041082b1c 0000000000000000 0000000000000e11
ffe0: ffffffc000fc8f60 0000000000000000 8204004040800040 0808840410000804
Call trace:
[<0000000000200000>] 0x200000
[<ffffffc0001041d8>] sched_clock_cpu+0x18/0x28
[<ffffffc0000f8f84>] update_rq_clock.part.12+0x24/0x68
[<ffffffc0000f9218>] update_rq_clock+0x28/0x38
[<ffffffc000107494>] update_blocked_averages+0x5c/0x818
[<ffffffc0001128d0>] rebalance_domains+0xb0/0x3f8
[<ffffffc000112e88>] run_rebalance_domains+0x270/0x2c0
[<ffffffc0000cd7ac>] __do_softirq+0x18c/0x310
[<ffffffc0000cdd2c>] irq_exit+0xfc/0x120
[<ffffffc00012958c>] __handle_domain_irq+0x7c/0xe8
[<ffffffc000082808>] gic_handle_irq+0x58/0xa8
Exception stack(0xffffffc0304efde0 to 0xffffffc0304eff00)
fde0: ffffffc0304ec000 ffffffc0008cd680 ffffffc0304eff30 ffffffc0000868a0
fe00: 0000000020000145 ffffffc02f475080 0000000000000000 dfffff9000000000
fe20: 1ffffff80609d800 0000000000000000 0000000000000000 0000000000000018
fe40: 0021dafe229a6600 0000000000000000 ffffffc0304e7ac0 ffffffc0304efe70
fe60: 0000000000000760 1ffffff805f1df8a 0000000000000000 0000000000000000
fe80: 0000000000000000 ffffffffffffffff ffffffc000240668 000000000043b280
fea0: 0000007fd3bf0b70 ffffffc0304ec000 ffffffc0008cd680 ffffffc000d3a000
fec0: ffffffc0304ec01c 0000000000000000 ffffffc000d1bac0 0000000000000000
fee0: ffffffc0304eff60 ffffffc000d3a000 0000000000000002 ffffffc0304eff30
[<ffffffc0000855a8>] el1_irq+0x68/0xd8
[<ffffffc00011c180>] default_idle_call+0x28/0x48
[<ffffffc00011c460>] cpu_startup_entry+0x240/0x290
[<ffffffc00009097c>] secondary_start_kernel+0x17c/0x1a8
[<0000000041082b1c>] 0x41082b1c
Code: bad PC value
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=5247
        (detected by 3, t=5254 jiffies, g=1796, c=1795, q=787)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
systemd[1]: Starting Journal Service...
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=20989
        (detected by 3, t=21009 jiffies, g=1796, c=1795, q=1023)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=36735
        (detected by 3, t=36764 jiffies, g=1796, c=1795, q=1027)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
systemd[1]: systemd-journald.service stop-sigterm timed out. Killing.
systemd[1]: Starting Journal Service...
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=52479
        (detected by 3, t=52519 jiffies, g=1796, c=1795, q=1048)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
systemd[1]: systemd-journald.service still around after SIGKILL. Ignoring.
systemd[1]: Starting Journal Service...
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=68222
        (detected by 3, t=68274 jiffies, g=1796, c=1795, q=1060)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
systemd[1]: systemd-journald.service stop-final-sigterm timed out. Killing.
systemd[1]: Starting Journal Service...
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=83965
        (detected by 3, t=84029 jiffies, g=1796, c=1795, q=1070)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=99711
        (detected by 3, t=99784 jiffies, g=1796, c=1795, q=1074)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
systemd[1]: systemd-journald.service still around after final SIGKILL. Entering failed mode.
systemd[1]: Unit systemd-journald.service entered failed state.
systemd[1]: systemd-journald.service has no holdoff time, scheduling restart.
systemd[1]: Stopping Journal Service...
systemd[1]: Starting Journal Service...
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=5253
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=5254
        (detected by 3, t=5255 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=115439
        (detected by 3, t=115539 jiffies, g=1796, c=1795, q=1113)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=20997
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=20998
        (detected by 3, t=21010 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=131171
        (detected by 3, t=131294 jiffies, g=1796, c=1795, q=1130)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=36741
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=36742
        (detected by 3, t=36765 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=146903
        (detected by 3, t=147049 jiffies, g=1796, c=1795, q=1142)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=52485
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=52486
        (detected by 3, t=52520 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=162644
        (detected by 1, t=162802 jiffies, g=1796, c=1795, q=1154)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=68225
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=68226
        (detected by 3, t=68275 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=178377
        (detected by 3, t=178559 jiffies, g=1796, c=1795, q=1166)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_sched detected stalls on CPUs/tasks:
        0-...: (1 GPs behind) idle=d09/1/0 softirq=1302/3861 fqs=83969
        2-...: (1 GPs behind) idle=157/2/0 softirq=1341/3334 fqs=83970
        (detected by 3, t=84030 jiffies, g=-93, c=-94, q=1)
Task dump for CPU 0:
swapper/0       R  running task        0     0      0 0x00000002
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)
INFO: rcu_preempt detected stalls on CPUs/tasks:
        2-...: (1 GPs behind) idle=157/2/0 softirq=3334/3334 fqs=194108
        (detected by 3, t=194314 jiffies, g=1796, c=1795, q=1178)
Task dump for CPU 2:
swapper/2       R  running task        0     0      1 0x00000000
Call trace:
[<ffffffc000086ed4>] __switch_to+0xd4/0xf8
[<          (null)>]           (null)

DTB Woes

Thanks for all your work on this! I've been trying to get your u-boot image to work for me for booting the mainline kernel from Debian (linux-image-4.14.0-0.bpo.3-arm64), and I've been having a lot of trouble, I think because of problems with DTB.

The DTB that you bundle with the image seems to actually work for me. That is, if I boot with booti $kernel_addr_r - $fdtcontroladdr everything seems to work well. However, I don't want to have to boot from the u-boot command line, and it seems like the best way to boot from an editable text file is with extlinux.conf. If fdt_addr were set to the value of fdtcontroladdr, then it would automatically load that one, but it's not and I don't know how to change the default environment built into the image. I also don't know how to get that DTB as a file; based on the commit message in ee12bea it looks like you applied a lot of custom patches to produce the image you provide.

I've also tried using other DTBs I've found, to no avail. CallMeFoxie provides a DTB and kernel as part of her image (https://github.com/CallMeFoxie/pine64-mainline-project), and they work together, but her DTB doesn't work with the Debian kernel. I've also tried using the DTB that Debian ships with their kernel package, as well as building the DTB myself from u-boot sources, and none of those work. Here, "doesn't work" means that after boot, either the Ethernet or the MMC (or both) don't work at all and don't show up.

I've tried following the instructions in your README, but that doesn't produce the same thing as the image you provide. If you can help me, I'd really appreciate it, as I need some help. An explanation of what might be going wrong with the DTBs would be great. A more comprehensive description of how to generate the image you provide would be great. The actual DTB as a file would be great. An explanation of how to change the default environment would be great. Really, any help you can provide would help tremendously.

eFuses?

Hi, I hope you don't mind me reaching out in this way. Somebody on IRC mentioned that you had experimented with burning the e-fuses in the Allwinner A64 a couple years ago to try to use signed boot for your own purposes. I don't know whether you still use IRC, but I would love to continue this work. Is there a chance we could sync about how far you got?

I did see some wiki pages which may have been written by you, detailing how the SoC's boot0 uses the fuses and the format of the signed binaries it's expecting. It's the electrical characteristics that I specifically don't see information about anywhere. I'm prepared to buy a bunch of devices and damage them to figure out voltage and stuff, but I thought it would be best to talk to someone who's tried it first.

I totally understand if you don't have time to talk, or if this was just too long ago and there's nothing useful you can tell me. Either way, thanks in advance!

idea to circumvent the u-boot dtb issue

Hi,

thank you for doing all the bootstrapping work for the pine64.

I have an idea to circumvent the u-boot dtb issue. On ARMv7 it is possible to append the device tree binary to the kernel image directly via:

CONFIG_ARM_APPENDED_DTB=y
CONFIG_ARM_ATAG_DTB_COMPAT=y
# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER is not set
CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND=y

and just invoke

boot[m,z] $loadaddr

after loading the kernel image.

U-Boot comes up with MMC2 device

I built the firmware image according to the description in README.md from the git repo (tag v2021.07-rc3 which happened to be the current master at that time). Config is pine64_plus_defconfig

This went well, but for some reason the device mmc@1c0f000, which is the only enabled mmc device in the device tree, comes up as MMC device 2 in U-Boot:

U-Boot 2021.07-rc3-dirty (May 27 2021 - 23:04:35 +0200) Allwinner Technology

CPU:   Allwinner A64 (SUN50I)
Model: Pine64+
DRAM:  2 GiB
MMC:   mmc@1c0f000: 2
Loading Environment from FAT... OK
In:    serial
Out:   serial
Err:   serial
Net:   phy interface10
eth0: ethernet@1c30000
starting USB...
Bus usb@1c1a000: USB EHCI 1.00
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a000 for devices... 1 USB Device(s) found
scanning bus usb@1c1a400 for devices... 1 USB Device(s) found
scanning bus usb@1c1b000 for devices... 1 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0 
=> mmc list
mmc@1c0f000: 2 (SD)

I can then force to boot from that device using:

=> devnum=2
=> run mmc_boot

In Linux (Fedora 34), the device is /dev/mmcblk2 as well. One thing is odd: The device tree
defines an alias for mmc1:

[root@pine64 ~]# ls /proc/device-tree/aliases/
ethernet0  mmc1  name  serial0  serial1  serial2  serial3  serial4
[root@pine64 ~]# cat /proc/device-tree/aliases/mmc1 
/soc/mmc@1c11000

If I force to use the dtb that comes with the distribution kernel, the MMC device is /dev/mmcblk0
and I don't see that alias:

[root@pine64 ~]# ls /proc/device-tree/aliases/
ethernet0  name  serial0  serial1  serial2  serial3  serial4

The dts files of the distribution kernel (5.12.6) and u-boot are identical.

I am running out of ideas where that alias comes from and why the MMC device is device 2...

the right kernel offset is 0x01080000, not 0x01800000

.../mkbootimg --kernel arch/arm64/boot/Image --base 0x40000000 --kernel_offset 0x01080000 --board Pine64 --pagesize 2048 -o arch/arm64/boot/Image.boota
sudo dd if=arch/arm64/boot/Image.boota bs=1M of=/dev/mmcblk0p7

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.