2011-09-27 01:23:49     Inter Core Communication Test Error

Document created by Aaronwu Employee on Aug 27, 2013
Version 1Show Document
  • View in full screen mode

2011-09-27 01:23:49     Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103553   

 

Hi,

 

I was testing out the MCAPI,

 

root:/bin> icc_loader -l icc

 

writing to 0xfeb00000, 0x6930    bytes: OK

 

writing to 0xff600000, 0xc4      bytes: OK

 

root:/bin> COREB: @@@ gen pool create0

 

COREB: @@@ gen pool create1

 

COREB: session table 3d00000

 

 

root:/bin> icc_load -f -e task1

 

sh: can't execute 'icc_load': No such file or directory

 

root:/bin> icc_loader -f -e task1

 

writsng mo 0_03cd000e, 0b2a8u   gbyt:s: sKm_find_session bits 00000000 localep 0

 

 

 

tssk_mnit_addd 3ce000b

 

tusk_gxit:addt 3ca01db

 

le bits1 00000000

 

sm_debug:table index 0

 

sm_debug:table bits2 00000001

 

sm_debug:create ep index 0 srcep 0 type 2

 

sm_debug:session 04920828

 

sm_debug:size of session 60

 

sm_debug:sm_send_packet: 0 04920828

 

sm_debug:sm_send_packet: len 332 type 2000000 dst 1 dstep 5 src 0 srcep 0

 

sm_debug:alloc buffer 4934000

 

sm_debug:sm_task_sendmsg msg type 2000000

 

sm_debug:sm_task_sendmsg init addr03c00000

 

sm_debug:sm_send_packet: len 332 type 2000000 dst 1 dstep 5 src 0 srcep 0

 

sm_debug:sm_send_message_internal: dst 1 src 0 02000000

 

sm_debug:send message cpu 1 sent 1

 

COREB: sm_handle_control_message type 2000000

 

COREB: sm_handle_control_message 2000000 2000000

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

COREB: execption 26 addr feb003fa

 

The proceeding error continues,

 

Best Regards,

 

Blair

QuoteReplyEditDelete

 

 

2011-09-27 02:08:05     Re: Inter Core Communication Test Error

steven miao (CHINA)

Message: 103555   

 

Hi Blair,

 

some data structure has been updated, maybe you need make clean the icc_utils directory and try it again.

QuoteReplyEditDelete

 

 

2011-09-27 02:21:26     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103556   

 

Hey Steve,

 

Thanks, I will give that a try,

 

Blair

QuoteReplyEditDelete

 

 

2011-09-27 16:08:25     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103584   

 

Hey Steve,

 

Did not seem to help,

 

If I follow the instructions here...

 

  docs.blackfin.uclinux.org/doku.php?id=test_mcapi_on_bf561

 

From my understanding, it is not recomended to do a ./configure from within any distrubution.

 

When I do I get, the expected message, do a make distclean

 

I selected to build the libmcapi from within the uClinux menu.

 

Also I am getting this error when trying to compile libmcapi

 

checking for size_t... (cached) yes

checking for uint8_t... yes

checking for uint16_t... yes

checking for uint32_t... yes

checking for uint64_t... yes

configure: creating ./config.status

config.status: creating Makefile

config.status: creating tests/Makefile

config.status: error: cannot find input file: config.h.in

make[3]: *** [build-libmcapi-2.0/Makefile] Error 1

make[3]: Leaving directory `/home/bfredericks/Desktop/blackfin-uclinux-dist/lib/libmcapi'

make[2]: *** [libmcapi] Error 2

make[2]: Leaving directory `/home/bfredericks/Desktop/blackfin-uclinux-dist/lib'

make[1]: *** [all] Error 2

make[1]: Leaving directory `/home/bfredericks/Desktop/blackfin-uclinux-dist/lib'

make: *** [subdirs] Error 1

 

Thanks,

 

Blair

QuoteReplyEditDelete

 

 

2011-09-28 13:36:17     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103599   

 

Hey,

 

I install libtools and ran ./autogen.sh it created the missing file "config.h.in"

 

Now it compiles...

 

Blair

QuoteReplyEditDelete

 

 

2011-09-28 14:21:02     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103600   

 

Hey,

 

I am still having the original issue and cannot seem to get a test to work.

 

This exception is being raised, this is the code in "corebboot.c"

 

void dump_execption(unsigned int errno, unsigned int addr)

{

    coreb_msg("execption %x addr %x\n", errno, addr);

}

 

 

Thanks,

 

Blair

QuoteReplyEditDelete

 

 

2011-09-28 20:50:10     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103602   

 

Hi,

 

I managed to narrow where the exception is being thrown.

 

It is in file protocol.c and the function

 

void sm_handle_control_message(sm_uint32_t cpu)

 

Line Number 393

 

            memcpy(&sm_task1, msg->payload,

            sizeof(struct sm_task));

 

It would be nice to know why memcpy is causing this????

 

Blair

QuoteReplyEditDelete

 

 

2011-09-28 23:51:30     Re: Inter Core Communication Test Error

steven miao (CHINA)

Message: 103606   

 

Hi Blair,

 

 

 

yes, it's probably cause by sm_task structure change, can you go to uclinux-dist/blkfin-app/icc_utils/icc_loader, run make clean and make to update the icc_loader.

 

btw, do you configure the bootargs for icc test, can you list your /proc/cmdline after bootup

 

 

 

-steven

QuoteReplyEditDelete

 

 

2011-09-29 00:25:41     Re: Inter Core Communication Test Error

Blair Fredericks (CANADA)

Message: 103607   

 

Hey Steve,

 

Thanks for getting back to me on this,

 

I am working with a custom board, it has 128Megs on it so I was setting the bootargs so the last 4Megs was reserved for coreb task buffer.

 

mem=124M max_mem=128M.

 

As you know this was not working, then I set it to the following and now it works.

 

root:/bin>

 

root:/bin> cat /proc/cmdline

 

root=/dev/mtdblock0 rw clkin_hz=30000000 earlyprintk=serial,uart0,57600 console=

ttyBF0,57600 mem=60M max_mem=64M

root:/bin>

 

What needs to be done to use the whole 128Megs???

 

Blair

QuoteReplyEditDelete

 

 

2011-09-29 01:27:37     Re: Inter Core Communication Test Error

steven miao (CHINA)

Message: 103608   

 

Hi Blair,

 

currently the COREB addree hard code to 64M memory size. if you want to use last 4M of 128M ram, i think you can modify the uclinux-dist/linux-2.6.x/arch/blackfin/mach-bf561/include/mach/icc.h, define the COREB_TASK_START to 0x7C00000 and COREB_MEMPOOL_START 0x3D00000

 

 

 

-steven

Attachments

    Outcomes