Nikita

Nikita

1个粉丝

35

问答

0

专栏

1

资料

Nikita  发布于  2014-04-19 14:22:50
采纳率 0%
35个问答
12904

你们好!Need help with hi3531 linux kernel.

 
Hello! Sorry, I don`t speak chineese :-( I hope there are english speaking people here.

I have start developing for Hi3531 some time ago.
I have SDK Hi3531_V100R001C02SPC080.rar ( Hi3531_SDK_V2.0.8.0 ).

1) Are there newer SDK version? My SDK have linux 3.0.8 and it is updated last time 2012 year. I have tried to mail [email]support@hisilicon.com[/email], but nobody answered.
2) I have compiled kernel with default godnet_defconfig:
[code]
make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- clean
make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- menuconfig
make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- uImage
[/code]

I have iploaded uImage to USB flash and my kernel stops boot at rootfs mount :(

[code]U-Boot 2010.06 (Mar 25 2013 - 23:57:06)

DRAM:  256 MiB
Check spi flash controller v300. found
Spi(cs1) ID: 0xEF 0x40 0x18 0x00 0x00 0x00
Spi(cs1): Block:64KB Chip:16MB Name:"W25Q128BV"
In:    serial
Out:   serial
Err:   serial
judge ddr init
user init finish.
Hit any key to stop autoboot:  3  0
hisilicon # usb start
(Re)start USB...
USB:   scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... usb_stor_get_info->1406,blksz:512
1 Storage Device(s) found
hisilicon # fatload usb 0:2 0x82000000 uImage2
reading uImage2
..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

6656580 bytes read
hisilicon # bootm 0x82000000
## Booting kernel from Legacy Image at 82000000 ...
   Image Name:   Linux-3.0.8
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    6656516 Bytes = 6.3 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Loading Kernel Image ... OK
OK

Starting kernel ...

Linux version 3.0.8 (nikita@nikita-ThinkPad-X220) (gcc version 4.4.1 (Hisilicon_v200(gcc4.4-290+glibc-2.11+eabi+nptl)) ) #12 SMP Sat Apr 19 08:59:27 MSK 2014
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=10c53c7f
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: godnet
debug: ignoring loglevel setting.
Memory policy: ECC disabled, Data cache writealloc
On node 0 totalpages: 32768
free_area_init_node: node 0, pgdat c0660a20, node_mem_map c06be000
  Normal zone: 256 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 32512 pages, LIFO batch:7
PERCPU: Embedded 7 pages/cpu @c07c1000 s5152 r8192 d15328 u32768
pcpu-alloc: s5152 r8192 d15328 u32768 alloc=8*4096
pcpu-alloc: [0] 0 [0] 1
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: mem=128M console=ttyAMA0,115200 root=/dev/sda1 rw ignore_loglevel
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 122968k/122968k available, 8104k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
    vmalloc : 0xc8800000 - 0xfe000000   ( 856 MB)
    lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .init : 0xc0008000 - 0xc0036000   ( 184 kB)
      .text : 0xc0036000 - 0xc063a000   (6160 kB)
      .data : 0xc063a000 - 0xc06611e0   ( 157 kB)
       .bss : 0xc0661204 - 0xc06bd934   ( 370 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:128 nr_irqs:128 128
sched_clock: 32 bits at 155MHz, resolution 6ns, wraps every 27709ms
sched_clock: wrong multiply/shift: 432960413>>26 vs calculated 3463683303>>29
sched_clock: fix multiply/shift to avoid scheduler hiccups
Console: colour dummy device 80x30
Calibrating delay loop... 1849.75 BogoMIPS (lpj=9248768)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
CPU1: Booted secondary processor
Brought up 2 CPUs
SMP: Total of 2 processors activated (3706.06 BogoMIPS).
NET: Registered protocol family 16
Serial: AMBA PL011 UART driver
uart:0: ttyAMA0 at MMIO 0x20080000 (irq = 40) is a PL011 rev2
console [ttyAMA0] enabled
uart:1: ttyAMA1 at MMIO 0x20090000 (irq = 41) is a PL011 rev2
bio: create slab at 0
controller0, config base:0x20800000, mem size:0x800000
controller1, config base:0x20810000, mem size:0x800000
pci 0000:00:00.0: [19e5:3531] type 1 class 0x000604
pci 0000:00:00.0: reg 10: [mem 0x00000000-0x007fffff pref]
pci 0000:00:00.0: reg 14: [mem 0x00000000-0x0000ffff]
pci 0000:00:00.0: reg 38: [mem 0x00000000-0x0000ffff pref]
pci 0000:00:00.0: supports D1
pci 0000:00:00.0: PME# supported from D0 D1 D3hot
pci 0000:00:00.0: PME# disabled
PCI: bus0: Fast back to back transfers disabled
pcie_read_from_device->486,pcie0 not link up!
PCI: bus1: Fast back to back transfers enabled
pci 0000:02:00.0: [19e5:3531] type 1 class 0x000604
pci 0000:02:00.0: reg 10: [mem 0x00000000-0x007fffff pref]
pci 0000:02:00.0: reg 14: [mem 0x00000000-0x0000ffff]
pci 0000:02:00.0: reg 38: [mem 0x00000000-0x0000ffff pref]
pci 0000:02:00.0: supports D1
pci 0000:02:00.0: PME# supported from D0 D1 D3hot
pci 0000:02:00.0: PME# disabled
PCI: bus2: Fast back to back transfers disabled
pcie_read_from_device->486,pcie1 not link up!
PCI: bus3: Fast back to back transfers enabled
pci 0000:02:00.0: BAR 0: assigned [mem 0x60000000-0x607fffff pref]
pci 0000:02:00.0: BAR 0: set to [mem 0x60000000-0x607fffff pref] (PCI address [0x60000000-0x607fffff])
pci 0000:02:00.0: BAR 1: assigned [mem 0x60800000-0x6080ffff]
pci 0000:02:00.0: BAR 1: set to [mem 0x60800000-0x6080ffff] (PCI address [0x60800000-0x6080ffff])
pci 0000:02:00.0: BAR 6: assigned [mem 0x60810000-0x6081ffff pref]
pci 0000:02:00.0: PCI bridge to [bus 03-03]
pci 0000:02:00.0:   bridge window [io  disabled]
pci 0000:02:00.0:   bridge window [mem disabled]
pci 0000:02:00.0:   bridge window [mem pref disabled]
pci 0000:00:00.0: BAR 0: assigned [mem 0x30000000-0x307fffff pref]
pci 0000:00:00.0: BAR 0: set to [mem 0x30000000-0x307fffff pref] (PCI address [0x30000000-0x307fffff])
pci 0000:00:00.0: BAR 1: assigned [mem 0x30800000-0x3080ffff]
pci 0000:00:00.0: BAR 1: set to [mem 0x30800000-0x3080ffff] (PCI address [0x30800000-0x3080ffff])
pci 0000:00:00.0: BAR 6: assigned [mem 0x30810000-0x3081ffff pref]
pci 0000:00:00.0: PCI bridge to [bus 01-01]
pci 0000:00:00.0:   bridge window [io  disabled]
pci 0000:00:00.0:   bridge window [mem disabled]
pci 0000:00:00.0:   bridge window [mem pref disabled]
vgaarb: loaded
SCSI subsystem initialized
libata version 3.00 loaded.
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource timer1
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 128 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 128 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
PCI: CLS 32 bytes, default 32
L2cache cache controller enabled
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
fuse init (API version 7.16)
SGI XFS with security attributes, large block/inode numbers, no debug enabled
yaffs: yaffs built Apr 19 2014 08:50:48 Installing.
msgmni has been set to 240
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
io scheduler noop registered
io scheduler deadline registered (default)
io scheduler cfq registered
brd: module loaded
loop: module loaded
ahci: SSS flag set, parallel bus scan disabled
ahci ahci.0: AHCI 0001.0200 32 slots 2 ports 3 Gbps 0x3 impl platform mode
ahci ahci.0: flags: ncq sntf stag pm led clo only pmp pio slum part ccc sxs boh
scsi0 : ahci_platform
scsi1 : ahci_platform
ata1: SATA max UDMA/133 mmio [mem 0x10080000-0x1008ffff] port 0x100 irq 68
ata2: SATA max UDMA/133 mmio [mem 0x10080000-0x1008ffff] port 0x180 irq 68
Spi id table Version 1.22
Hisilicon Spi Flash Controller V300 New Device Driver, Version 1.10
Check Spi Flash Controller V300 New.
Found
Spi(cs1) ID: 0xEF 0x40 0x18 0x00 0x00 0x00
Spi(cs1):
Block:64KB
Chip:16MB
Name:"W25Q128BV"
spi size: 0x16777216
chip num: 1
Creating 0 MTD partitions on "hi_sfc":
Special nand id table Version 1.35
Hisilicon Nand Flash Controller V301 Device Driver, Version 1.10
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
ata1.00: ATA-8: ST31000528ASQ, AP24, max UDMA/133
ata1.00: 1953525168 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata1.00: configured for UDMA/133
scsi 0:0:0:0: Direct-Access     ATA      ST31000528ASQ    AP24 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: Attached scsi generic sg0 type 0
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI disk
ata2: SATA link down (SStatus 0 SControl 300)[/code]

What is the problem? I don`t think that I`m doing something wrong, because I have read all docs and have tried a lot of variants.

By the way I don`t have good development board. So, I have bought 4 channel HD-SDI DVR, disassemble it and take out board with Hi3531. Plug USB serial to UART port on the board and take control over it.

Please look to attached images of my board:

[attach]1766[/attach]
[attach]1767[/attach]

My primary task it to setup Linux environment with Glibc and NPTL (pthreads) with X.org via HiFB (or FB).
Does somebosy know anything about X.org on Hi3531?

我来回答
回答10个
时间排序
认可量排序

david

33个粉丝

368

问答

253

专栏

229

资料

david 2014-04-19 23:22:30
认可0
Hi Nikita
1,As I know, The SDK has been updated to Hi3531_V100RXXXXXPC090 six months ago. now I am not  paying attention.  Your SDK is too old. we never send the email to [email]support@hisilicon.com[/email],you must send to your FAE  or call him.
2,The Log look like Dmesg, but I can't get any message about your problem.
you can try  cross compiler  "arm-hisiv100nptl-linux"

---------------------------------------------------------------------------------------------------------------------
My primary task it to setup Linux environment with Glibc and NPTL (pthreads) with X.org via HiFB (or FB).
Does somebosy know anything about X.org on Hi3531?

A: Do you wanna use X- windows at the same time to do 1080P decode or encode?  we  use the QT or miGUI for windows.

Nikita

1个粉丝

35

问答

0

专栏

1

资料

Nikita 2014-04-20 00:02:07
认可0
Hello David!

In last hour I have solved problem with kernel. I have turned off SPI and NAND drivers. It seems it works not very good on my board (My board is some DVR, not full dev kit).
So now I can mount rootfs as SATA HDD. I will try to use NFS as root fs it is much easy, than each time to connect HDD to computer and rewrite rootfs.

My next task it to create usable rootfs. Default with only busy box, is not very good for me.

As my toolchain is a bit oldy, I have tried to use http://www.buildroot.net util. I have configured it to

  • ARM little indian
  • Cortex-A9
  • EABI (as I understand Hi3531 have softfp and vfpv3-d16)
  • ARM instruction set. Do you know, does Hi3531 support THUMB instruction set?


As toolchain I have choosed Arago ARMv7 2011.09 (gcc 4.5.3, binutils 2.20.1, glibc 2.12, gdb 7.2), later I will try Sourcery CodeBench ARM 2013.11.

So, buildroot have compiled kernel, It works good. And it creates me some rootfs, based on busy box.
Unfortunately there is some problem with root fs, kernel fails after on init

[code]
...
ata1.00: configured for UDMA/133
scsi 0:0:0:0: Direct-Access     ATA      ST31000528ASQ    AP24 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
sd 0:0:0:0: Attached scsi generic sg0 type 0
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
scsi2 : usb-storage 1-1:1.0
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI disk
ata2: SATA link down (SStatus 0 SControl 300)
EXT3-fs: barriers not enabled
kjournald starting.  Commit interval 5 seconds
EXT3-fs (sda1): using internal journal
EXT3-fs (sda1): mounted filesystem with ordered data mode
VFS: Mounted root (ext3 filesystem) on device 8:1.
Freeing init memory: 184K
Kernel panic - not syncing: Attempted to kill init!
Backtrace:
[] (dump_backtrace+0x0/0x110) from [] (dump_stack+0x18/0x1c)
r6:c782c13c r5:c06578a8 r4:c06578a8 r3:c063a774
[] (dump_stack+0x0/0x1c) from [] (panic+0x74/0x18c)
[] (panic+0x0/0x18c) from [] (do_exit+0x6b4/0x760)
r3:00000000 r2:c0636020 r1:c782c13c r0:c05c8d14
r7:00000000
[] (do_exit+0x0/0x760) from [] (do_group_exit+0x44/0xd4)
r7:c7832000
[] (do_group_exit+0x0/0xd4) from [] (get_signal_to_deliver+0x1f0/0x420)
r7:c7832000 r6:c7831ec8 r5:c7830000 r4:00000000
[] (get_signal_to_deliver+0x0/0x420) from [] (do_signal+0x84/0x5f0)
[] (do_signal+0x0/0x5f0) from [] (do_notify_resume+0x58/0x64)
[] (do_notify_resume+0x0/0x64) from [] (work_pending+0x24/0x28)
r4:c06394c0 r3:c782c000
CPU1: stopping
Backtrace:
[] (dump_backtrace+0x0/0x110) from [] (dump_stack+0x18/0x1c)
r6:c0636240 r5:c7848000 r4:00000001 r3:c063a774
[] (dump_stack+0x0/0x1c) from [] (do_IPI+0x1c0/0x1e0)
[] (do_IPI+0x0/0x1e0) from [] (__irq_svc+0x38/0xa0)
Exception stack(0xc7849f60 to 0xc7849fa8)
9f60: c7848000 c7848028 c7849fa8 00000000 c7848000 c0656fe4 c051c80c c06397f4
9f80: 8000406a 413fc090 00000000 c7849fb4 c7849fb8 c7849fa8 c003dd14 c003dd18
9fa0: 60000013 ffffffff
[] (default_idle+0x0/0x30) from [] (cpu_idle+0xac/0xe0)
[] (cpu_idle+0x0/0xe0) from [] (secondary_start_kernel+0x168/0x16c)
r7:c065711c r6:c7848000 r5:00000002 r4:c063c9f0
[] (secondary_start_kernel+0x0/0x16c) from [<80515474>] (0x80515474)
r6:10c03c7d r5:00000015 r4:8784c06a r3:c051545c[/code]

Could you tell me what versions of software (glibc, gcc, etc) have Hi3531_V100RXXXXXPC090 ?

About X.org. Let me explain. I want just start some graphics interface, like desktop distrib have, some like Ubuntu on any ARM board (AllWinner A10/A20 or Raspberry PI). And have HDMI out, 720p or 1080p.
I don`t want to decode video. At the same time as I will have GUI, I want to capture two video sources from SDI cameras (1080p@30) and encodes one big image (like 2560x720 or if it will be avalible 3840x1080)
to h.264 and save raw bitstream to HDD.

In my SDK there are some precompiled modules hi*.ko. Does HiSilicon provides their sources? I affraid I can`t use that modules on system, because of different toolchain.

You said  [quote]we  use the QT or miGUI for windows.[/quote]
How do you use it? Could you explain me graphical stack of Hi3531?

I hope for a little of your help. Thanks!

david

33个粉丝

368

问答

253

专栏

229

资料

david 2014-04-20 13:57:32
认可0
本帖最后由 david 于 2014-4-20 14:09 编辑

hisilicon every versions sdk work good for kernel ,rootfs have been released.   need not another toolchain.
please use the toolchain in the SDK.

How do you use it? Could you explain me graphical stack of Hi3531?


Reference  "Graphics development user guide"

david

33个粉丝

368

问答

253

专栏

229

资料

david 2014-04-20 14:03:14
认可0
本帖最后由 david 于 2014-4-20 14:16 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=6755&ptid=3301]Nikita 发表于 2014-4-20 00:02[/url]
Hello David!

In last hour I have solved problem with kernel. I have turned off SPI and NAND drive ...[/quote]

hi Nikita
hisilicon doesn't provide source code for their some modules . Don't you  have hisilicon provides toolchain?

Nikita

1个粉丝

35

问答

0

专栏

1

资料

Nikita 2014-04-20 18:15:48
认可0
Hi!

Yes, I have SDK Hi3531_V100R001C02SPC080.rar ( Hi3531_SDK_V2.0.8.0 ). And there is toolchain in the SDK.
I will ask my supplier to give me latest version of SDK.

So, now I have configured buildroot with arm-hisiv200-linux toolchain. And I have working kernel and rootfs. That`s great.
Next I will configure HI Media modules and try to run X.org via fb driver.

I will continue my research. 谢谢!

Nikita

1个粉丝

35

问答

0

专栏

1

资料

Nikita 2014-04-20 19:44:06
认可0
By the way, David, could you tell me did Hisilicon update linux kernel version from 3.0.8 in my SDK, in last SDK. For example what version of kernel is in your 6 month old sdk?

goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman 2014-04-22 19:10:53
认可0
As I know the last SDK version was Hi3531_V100R001C02SPC0A0 and linux kernel version was not change!

david

33个粉丝

368

问答

253

专栏

229

资料

david 2014-04-22 19:56:33
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=6784&ptid=3301]goodman 发表于 2014-4-22 19:10[/url]
As I know the last SDK version was Hi3531_V100R001C02SPC0A0 and linux kernel version was not change! ...[/quote]

oh.. The SDK update so quickly!   thanks goodman.

Nikita

1个粉丝

35

问答

0

专栏

1

资料

Nikita 2014-04-22 20:02:55
认可0
Yes, yesterday I had got Hi3531_V100R001C02SPC0A0 version. It seems it is the same as my previous version (2 years old), maybe except some bug fixes.

hilinux

0个粉丝

17

问答

0

专栏

0

资料

hilinux 2014-04-25 08:29:55
认可0
Hi,Nikita!

what about your root filesystem?Ext3?

Hisi kernel version is not changed every upateing version,Please check your root filesystem.

Youre root filesystem mounted error, so you need check rootfs !
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
更多相似问答
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区