qnx在pxa255的应用

请问有人成功在PXA255上跑起QNX的吗?
小弟有事请教

有.

请问是你自己移植成功了吗?
我的邮箱是jxh2222@qq.com。能帮助一下我吗?

你有什么问题?

我在烧入IPL以后,内核起不来,停在image_start那里了[/list]

我猜boot image也写到FLASH里了,对吧?
停在说明IPL已经找到了boot image,startup也已经拷到了相应的位置,IPL要
跳到STARTUP去了.
1)startup的main.c里有debug port的定义,看看是否与IPL用的是同一个串口.时钟与波特率是否正确.
2)在build file的startup后加上-vvv看看有什么东西显示出来.
你可以在startup的main.c里加一些debug信息,用kprintf,但必须在select_debug后才可以用kprintf.

先谢谢帮助!
经过调试,发现在初始化SA1100中GP14不对,注释掉就可以进系统了,但还不知道这样做对不对。
我想接下来应该是调试驱动了吧,能不能给点简单、典型的提示呢?
还有就是我是在IDE下开发,导入的是source package ,并没有去导入BUILD FILE。请问要怎么去修改BUILD FILE来加入驱动。
还有就是我的驱动中发现不能生成devf-dbpxa250,就是FLASH那块驱动没生成,在BUILD FILE加进去的话,就会报错.

不知道GP14在你用的板子上是作什么用的,不敢妄加评论.
BUILD FILE里应该有串口驱动,照葫芦画瓢就可以了.
至于FLASH好象要买FLASH开发工具才行.

郁闷拉!
前几天IPL烧进去都有反应,昨天烧进去就没反应了,不知道怎么回事?
还有我每次都是烧那个IPL和IFS合成的ipl-bsp-db250dp.bin,有400多K,每次都要烧很久,应该有个单独的IPL烧吧,不知道在哪里生成的?
我现在的板子主要是要用网络和液晶,不知道这两个驱动要怎么加上去,在BSP中要做什么样的修改。

有个不情之请,请问能不能把你以前所编译的可用文件发给我一份,就是烧进去就能跑的。

板子不一样,MEMORY的初始化也不一样,恐怕不能通邮.
IPL可以单独烧,用objcopy -Obinary ipl-dbpxa250dp ipl-bin, ipl-bin就可以
直接烧到FLASH上,应该只用几K.
有了IPL以后就可以用串口来下载boot image,虽然慢点,省了烧FLASH的麻烦.
这是标准的DBPXA250DP的BUILD文件,不知你有没有.
上面有启动网络和液晶驱动的例子.

###########################################################################

QNX Neutrino 6.3 on the Intel DBPXA250DP board.

###########################################################################

SUPPORTED DEVICES:

SERIAL1: PXA250 FFUART (/dev/ser1)

SERIAL2: PXA250 BTUART (/dev/ser2)

NETWORK: SMC91C96 ethernet

FLASH: Intel 28F128 StrataFlash (2x128Mbit)

GRAPHICS: PXA250 LCD controller

INPUT: SA1111 PS/2 keyboard and mouse

AUDIO: PXA250 AC97 audio

- For detailed instructions on the default example configuration for

these devices see the “CONFIGURING ON-BOARD SUPPORTED HARDWARE”

section below the build script section, or refer to the BSP docs.

- Tip: Each sub-section which relates to a particular device is marked

with its tag (ex. SERIAL1). You can use the search features of

your editor to quickly find and add or remove support for

these devices.

- For details on how build files work, please refer to the help

documentation for “mkifs” in the QNX Neutrino Utilities Reference.

###########################################################################

NOTES:

- The serial console is via the FFUART at 115200 baud, 8N1.

- Switch S13 must be set to the dot-position for

ethernet/SA1111 interrupts.

- Switch S1 must be set to the dot-position for the

CS4299 audio codec.

###########################################################################

###########################################################################

START OF BUILD SCRIPT

###########################################################################

###########################################################################

To boot using XIP, use the following commands:

- XIP only supports binary uncompressed images, do not use +compress

###########################################################################

[image=0xa0200000]

[ram=0x1000]

[virtual=armle,binary] .bootstrap = {

###########################################################################

If not using XIP, use the following 2 lines:

###########################################################################
[image=0xa0200000]

[virtual=armle,binary +compress] .bootstrap = {

###########################################################################
startup-dbpxa250dp -v
#######################################################################

PATH set here is the safe path for executables.

LD_LIBRARY_PATH set here is the safe path for libraries.

i.e. These are the paths searched by setuid/setgid binaries.

(confstr(_CS_PATH…) and confstr(_CS_LIBPATH…))

#######################################################################
PATH=:/proc/boot:/bin:/usr/bin LD_LIBRARY_PATH=:/proc/boot:/lib:/usr/lib:/lib/dll procnto -v
}
[+script] .script = {
procmgr_symlink …/…/proc/boot/libc.so.2 /usr/lib/ldqnx.so.2

display_msg Welcome to QNX Neutrino 6.3 on the Intel DBPXA250DP board

#######################################################################

SERIAL1 and SERIAL2 drivers

- this board uses FFUART as /dev/ser1, BTUART as /dev/ser2

- by default, the driver will initialize both UARTs

#######################################################################
devc-serpxa250 -e
waitfor /dev/ser1
reopen /dev/ser1

slogger
pipe

#######################################################################

NETWORK driver

- substitute your IP address for 1.2.3.4

#######################################################################

display_msg Starting on-board ethernet with large TCP/IP stack…

io-net -dsmc9000 ioport=0x0c000000,irq=35,variant=dbpxa250dp -ptcpip

waitfor /dev/io-net/en0 4

ifconfig en0 1.2.3.4

#######################################################################

REMOTE_DEBUG (gdb or Momentics)

- refer to the help documentation for the gdb, qconn and the IDE

for more information on remote debugging

- the commands shown require that NETWORK is enabled too

#######################################################################

devc-pty

waitfor /dev/ptyp0 4

waitfor /dev/socket 4

qconn port=8000

#######################################################################

FLASH driver

#######################################################################

display_msg Starting flash driver…

devf-dbpxa250dp

#######################################################################

AUDIO driver

#######################################################################

display_msg Starting audio driver…

io-audio -dpxa250

#######################################################################

GRAPHICS driver

#######################################################################

display_msg Starting graphics driver…

io-graphics -dpxa250 xres=640,yres=480,bitpp=8,mode_opts=/usr/photon/config/pxa250.conf,photon -pphoton

#######################################################################

INPUT driver

#######################################################################

display_msg Starting input driver…

devi-sa1111 kbd kmi -p0x10000a00 -i86 ps2 kmi -m -p0x10000c00 -i83

#######################################################################

These env variables are inherited by all the programs which follow

#######################################################################
SYSNAME=nto
TERM=qansi
HOME=/
PATH=:/proc/boot:/bin:/usr/bin:/opt/bin
LD_LIBRARY_PATH=:/proc/boot:/lib:/usr/lib:/lib/dll:/opt/lib

[+session] fesh &
}

[type=link] /bin/sh=/proc/boot/fesh
[type=link] /dev/console=/dev/ser1
[type=link] /tmp=/dev/shmem

libc.so

###########################################################################

uncomment for NETWORK driver

###########################################################################

devn-smc9000.so

libsocket.so

npm-tcpip.so

###########################################################################

uncomment for AUDIO driver

###########################################################################

deva-ctrl-pxa250.so

deva-mixer-ac97.so

libasound.so

###########################################################################

uncomment for GRAPHICS driver

###########################################################################

/usr/photon/config/pxa250.conf=${QNX_TARGET}/armle/usr/photon/config/pxa250.conf

devg-pxa250.so

libdisputil.so

libffb.so

[data=c]
devc-serpxa250

###########################################################################

uncomment for NETWORK driver

###########################################################################

io-net

ifconfig

nicinfo

netstat

ping

###########################################################################

uncomment for REMOTE_DEBUG (gdb or Momentics)

###########################################################################

devc-pty

qconn

/usr/bin/pdebug=pdebug

###########################################################################

uncomment for FLASH driver

###########################################################################

devf-dbpxa250dp

flashctl

###########################################################################

uncomment for AUDIO driver

###########################################################################

io-audio

###########################################################################

uncomment for GRAPHICS driver

###########################################################################

io-graphics

###########################################################################

uncomment for INPUT driver

###########################################################################

devi-sa1111

###########################################################################

general commands

###########################################################################
ls
fesh
pipe
pidin
uname
slogger
sloginfo
slay

###########################################################################

END OF BUILD SCRIPT

###########################################################################

首先要谢谢comquter大虾不厌其烦地给我帮助 :slight_smile:
是有IPL-DBPXA250DP生成。
objcopy -Obinary ipl-dbpxa250dp ipl-bin是在什么环境下执行呢,我是用IDE开发。
BUILD FILE我有,但我没有去修改BUILD FILE,而是在.bld里面直接加载需要的DLL等(按照BUILD FILE要求的)。不知道有没有影响?
网卡是不是只需要修改确定IRQ和ioport就可以了呢,其他的只要按照BUILD FILE上面的做就可以了?怎么去测试网卡通没通呢?
ioport=0x200,是我随便写的,这个地址是怎么去确定的呢?

在IDE上好象要用ntoarm-objcopy,具体在哪个目录底下我不清楚.我对IDE几乎一无所知.
网卡的ioport是由硬件决定的,板子的设计者应该清楚.IRQ也是,要由哪个GPIO以及init_intrinfo.c里GPIO中断的定义来决定.
还有,PXA系列SMC9000的硬件连接都有点蹊跷,QNX提供的variant option几乎都是给该系列用的.如果你有源代码的话就容易理解了.

还有,PXA系列SMC9000的硬件连接都有点蹊跷,QNX提供的variant option几乎都是给该系列用的.如果你有源代码的话就容易理解了
不好意思哦,不是很理解这句话。
如果IOPORT设置错误会导致INIT不成功吗?我现在就是INIT就出错。

我现在找到我的板子的IORANGE和IRQ了,但在INIT的时候还是有错误。
io-net -d smc9000 iorange=0x04000000,irq=148 -p tcpip

process 7 (io-net) terminated SIGFPE code=1 fltno=8 ip=01073524 mapaddr=0000c524

ifconfig :socket :Address family not supported by protocol family

下午接上LCD想看看,结果又是打击
先在.bld中加上LCD所需文件,编译,下载
运行io-graphics -dldevg-pxa250.so -g64048016 -amode=/usr/photon/config/pxa250.conf
结果没报什么错,也没什么反应,
我的CONFIG文件是这样(按照LINUX驱动修改的)
hsw=1,elw=96,blw=2,vsw=2,efw=208,bfw=2,vsp=0,hsp=0,pcp=1,oep=0,acb=0,pcd=5,type=1,num=0,board=1,x=640,y=480

DBPXA250的A2-A21接到SMC9000的A0-A19,所以单纯指定IOPORT是不够的,
还有,SMC9000的地址空间可能被设置成16比特或32比特总线,而SMC9000驱动
里要用到8比特操作,会出错.

LCD的BACKLIGHT点了没有?