This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Problem in adapting SH3 77x9SE01 ecos code for SH37729RSE01 .
- From: "Prabhat Shrivastav" <shrivastavp at myw dot ltindia dot com>
- To: <ecos-discuss at sources dot redhat dot com>
- Cc: <sridhar at hitachi dot co dot in>,<yashoranjan at hitachi dot co dot in>,"Rout R N" <RoutRN at myw dot ltindia dot com>
- Date: Thu, 11 Mar 2004 15:57:06 +0530
- Subject: [ECOS] Problem in adapting SH3 77x9SE01 ecos code for SH37729RSE01 .
Hi All
I am try to adapting SH3 77x9SE01 ecos code for SH37729RSE01 board,
i had modified following things of making compactable eCos SH77x9SE01 platform code for SH7729RSE01 board.
As i came to now that the difference between board with SH3-7729 and board with SH3-7729R is only with oscillator frq.
1)This is for seting of clock frq of the controller.
Modified in cygwin\opt\ecos\ecos-2.0\packages\hal\sh\se77x9\v2_0\cdl\hal_sh_sh77x9_se77x9.cdl
Change 1 : cdl_option CYGNUM_HAL_SH_OOC_XTAL_DEFAUL
From 33333300 to 66666600
Change 2 : cdl_option CYGHWR_HAL_SH_OOC_XTAL
leagal_value form : 8000000 to 33333300
to : 50000000 to 66666600
2) Modification in cygwin\opt\ecos\ecos-2.0\packages\hal\sh\se77x9\v2_0\include\platform.inc
BSC_settings_table:
// Change for SE7729r
//.word CYGARC_REG_WTCSR, 0xA502
.word CYGARC_REG_WTCSR, 0xA504 (This for set the watchdog timer control and status resister)
.word CYGARC_REG_WTCNT, 0x5A00
.word CYGARC_REG_FRQCR, CYGARC_REG_FRQCR_INIT
# Settings from Hitachi docs for SE7709A
#ifdef CYGNUM_HAL_SH_SE77X9_SDRAM_SETUP
.word CYGARC_REG_BCR1, 0x0008
#else
.word CYGARC_REG_BCR1, 0x0810
#endif
.word CYGARC_REG_BCR2, 0x2ef0
.word CYGARC_REG_BCR3, 0x0000
.word CYGARC_REG_WCR1, 0x0c30
#ifdef CYGNUM_HAL_SH_SE77X9_SDRAM_SETUP
// Change for SE7729r
//.word CYGARC_REG_WCR2, 0x7ddb
.word CYGARC_REG_WCR2, 0xBFDD (This for set the wait state control resister2)
.word CYGARC_REG_MCR, 0x002c
#else
.word CYGARC_REG_WCR2, 0x5d5a
.word CYGARC_REG_MCR, 0x0055
#endif
3) Modification in cygwin\opt\ecos\ecos-2.0\packages\devs\flash\sh\se77x9\v2_0\src\sh_se77x9_flash.c
In plf_flash_init()
change from : flash_data_t id[2] ;
to : flash_data_t id[4] ;
4) Modification in cygwin\opt\ecos\ecos-2.0\packages\hal\sh\sh3\v2_0\include\mod_regs_cpg.h
For the V3 (last) group of conditional compilation statements,
Following the statement #elif (CYGHWR_HAL_SH_OOC_DIVIDER_2 == 6)
Change from : # define CYGARC_REG_FRQCR_INIT_DIVIDER2 0x2002
to : # define CYGARC_REG_FRQCR_INIT_DIVIDER2 0x2001
5) After making these modifications, generate a project for the 7729SE01. And change the Oscillator related setting in Configuration tool, under
" Hitachi \SH77x9 SE77x9board" -> "SH on-chip platform clock controls"
Change the " SH clock PLL circuit 1 " value to 3 and the :SH clock divider 2 " value to 6 "
But even after these modification in am not able to get the RedBoot prompt on cygwin console, I am using serial port for communication with target board.
Please suggest me to come out of this problem .
Thanx
Regards
Prabhat Shrivastav
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss