Hi all,
is there any formalities in giving the EXEBASE to the Kernel in KERN,
KERNKITL, KERNKITLPROF?
because the default value here in the ARMINTEGRETOR BSP is something like
0x8CC00000 where the
NK 88070000 01700000 RAMIMAGE
RAM 89770000 00890000 RAM
here the address is even outside the RAM Range?
is there any way to find it out?
regards
Sujith

Re: EXEBASE of NK.EXE by Yannick

Yannick
Wed Sep 29 00:28:49 CDT 2004

EXEBASE is only used for debugging not for build or execution.

Consequently, an invalid value will have no influence on the way the image
run, but only when the debugger would try to resolve a breakpoint to find
the right line of source code

--
----------------------------------------------------------------
Yannick Chamming's (eMVP)
ADESET
Windows Embedded Manager
ychammings AT adeset DOT com>
http://www.adeset.com
Tél : +33 (0)4.72.18.57.77
Fax : +33 (0)4.72.18.57.78
----------------------------------------------------------------

"Sujith" <sujithss@nospam.hotmail.com> wrote in message
news:OT4w9IHpEHA.516@TK2MSFTNGP09.phx.gbl...
> Hi all,
> is there any formalities in giving the EXEBASE to the Kernel in KERN,
> KERNKITL, KERNKITLPROF?
> because the default value here in the ARMINTEGRETOR BSP is something like
> 0x8CC00000 where the
> NK 88070000 01700000 RAMIMAGE
> RAM 89770000 00890000 RAM
> here the address is even outside the RAM Range?
> is there any way to find it out?
> regards
> Sujith
>
>



Re: EXEBASE of NK.EXE by Sujith

Sujith
Wed Sep 29 01:15:40 CDT 2004

Hi,
but doesn't it have an impact on .NB0 files..?
because, when I gave wrong EXEBASE, my SBOOT.NB0 was not working !!! like
that is there any relationship to NK.NB0 ?
Regards
Sujith
"Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in message
news:%23pCv0UepEHA.3900@TK2MSFTNGP10.phx.gbl...
> EXEBASE is only used for debugging not for build or execution.
>
> Consequently, an invalid value will have no influence on the way the image
> run, but only when the debugger would try to resolve a breakpoint to find
> the right line of source code
>
> --
> ----------------------------------------------------------------
> Yannick Chamming's (eMVP)
> ADESET
> Windows Embedded Manager
> ychammings AT adeset DOT com>
> http://www.adeset.com
> Tél : +33 (0)4.72.18.57.77
> Fax : +33 (0)4.72.18.57.78
> ----------------------------------------------------------------
>
> "Sujith" <sujithss@nospam.hotmail.com> wrote in message
> news:OT4w9IHpEHA.516@TK2MSFTNGP09.phx.gbl...
> > Hi all,
> > is there any formalities in giving the EXEBASE to the Kernel in KERN,
> > KERNKITL, KERNKITLPROF?
> > because the default value here in the ARMINTEGRETOR BSP is something
like
> > 0x8CC00000 where the
> > NK 88070000 01700000 RAMIMAGE
> > RAM 89770000 00890000 RAM
> > here the address is even outside the RAM Range?
> > is there any way to find it out?
> > regards
> > Sujith
> >
> >
>
>



Re: EXEBASE of NK.EXE by Sujith

Sujith
Wed Sep 29 01:20:25 CDT 2004

moreover, the debug prints which I wrote in the assembly(statrup.s) in HAL
is the only output I get.... I traced the code... and I found that the code
is working up to
MMU initialization, after that I am not able to trace, as this JTAG is not
for Wince... also it won't work after MMU is initialized.
so I suspected that something is gone wrong in the EXEBASE.
Regards
Sujith

"Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in message
news:%23pCv0UepEHA.3900@TK2MSFTNGP10.phx.gbl...
> EXEBASE is only used for debugging not for build or execution.
>
> Consequently, an invalid value will have no influence on the way the image
> run, but only when the debugger would try to resolve a breakpoint to find
> the right line of source code
>
> --
> ----------------------------------------------------------------
> Yannick Chamming's (eMVP)
> ADESET
> Windows Embedded Manager
> ychammings AT adeset DOT com>
> http://www.adeset.com
> Tél : +33 (0)4.72.18.57.77
> Fax : +33 (0)4.72.18.57.78
> ----------------------------------------------------------------
>
> "Sujith" <sujithss@nospam.hotmail.com> wrote in message
> news:OT4w9IHpEHA.516@TK2MSFTNGP09.phx.gbl...
> > Hi all,
> > is there any formalities in giving the EXEBASE to the Kernel in KERN,
> > KERNKITL, KERNKITLPROF?
> > because the default value here in the ARMINTEGRETOR BSP is something
like
> > 0x8CC00000 where the
> > NK 88070000 01700000 RAMIMAGE
> > RAM 89770000 00890000 RAM
> > here the address is even outside the RAM Range?
> > is there any way to find it out?
> > regards
> > Sujith
> >
> >
>
>



Re: EXEBASE of NK.EXE by Steve

Steve
Wed Sep 29 07:57:20 CDT 2004

Nope, probably something wrong in CONFIG.BIB or OEMAddressTable

--
Steve Maillet
EmbeddedFusion
www.EmbeddedFusion.com

Do have an opinion on the effectiveness of Microsoft Windows Mobile and
Embedded newsgroups? Let us know!
https://www.windowsembeddedeval.com/community/newsgroups



Re: EXEBASE of NK.EXE by Sujith

Sujith
Wed Sep 29 22:53:02 CDT 2004

Thanks Steve and Yannick.
but i configured the config.bib and OEMAddressTable according to the points
which the community people gave me..
well, i am including the config.bib and OEMAddressTable here. please
advise..
I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash (external)
(programmable to 16MB, currently using only defaults)(100000 to 900000)
MEMORY
NK 88900000 009E0000 RAMIMAGE
RAM 892E0000 03400000 RAM
; ** Reserved section **
DRV_GLB 88008000 00001000 RESERVED ; Boot Args
BLDR 88010000 00040000 RESERVED ; Bldr + Bldr RAM
EDBG 88050000 00040000 RESERVED ; EthDbg Buffers
CONFIG
IF IMGFLASH !
AUTOSIZE=ON
ENDIF
COMPRESSION=OFF
KERNELFIXUPS=ON
ROMSTART=88900000
ROMWIDTH=32
ROMSIZE=300000
IF IMGFLASH !
; This causes the BIN file sections to be placed at the correct RAM
; address (starting at 0x0090.0000) before the MMU is turned on. After
; the MMU is enabled, the OEMAddressTable defines the mapping
; (0x8890.0000).
ROMOFFSET=78000000
ENDIF
IF IMGFLASH
; This causes the BIN file sections to be placed at the correct FLASH
; address (starting at 0x0010.0000) before the MMU is turned on. After
; the MMU is enabled, the OEMAddressTable defines the mapping
; (0x8000.0000).
ROMOFFSET=77800000
ENDIF

And here is my OEMAddressTable

; System Flash
VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb

; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
; can only declare RAM for the minimum amount of memory possible in
; a system, 'cause the kernel uses the very top of RAM for its own
; structures

VA_RAM_BASE EQU 0x88000000
VA_CF_BASE EQU 0x91000000
VA_USB_BASE EQU 0x92000000

VA_PERIPHERAL_COMMON EQU 0x96000000
VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ; Interrupt
Control, 1Mb
VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0 Base
VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1 Base
VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug base

EXPORT OEMAddressTable[DATA]
OEMAddressTable
;;;-------------------------------------------------------------
;;; Virt Addr Phys Addr MB
;;;-------------------------------------------------------------
DCD VA_RAM_BASE, 0x00900000, 64 ; 64 MB
SDRAM
DCD VA_FLASH_BASE, 0x00100000, 8 ; 8 MB
Flash
DCD VA_CF_BASE, 0x40000000, 16 ; 16
MB Compact Flash
DCD VA_USB_BASE, 0x80000000, 64 ; 64
MB USB
DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB common Space
for all peripherals maps to memory includes SRAM Also
DCD 0, 0, 0 ; end of table must be zero
END

Also in the board.h i am using only Uncached area only.
#define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
#define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only Uncached area to
talk to the Peripherals.
#define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
#define VA_IC_BASE (VA_PERIPHERAL_COMMON_U + 0x30500)
#define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
#define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
#define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580) //GIO BASE
#define VA_RAM_BASE 0x88000000 ; since this value i
gave 88900000 for NK in the config.bib
#define VA_FLASH_BASE 0x80000000

Regards
Sujith


"Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in message
news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
>
> --
> Steve Maillet
> EmbeddedFusion
> www.EmbeddedFusion.com
>
> Do have an opinion on the effectiveness of Microsoft Windows Mobile and
> Embedded newsgroups? Let us know!
> https://www.windowsembeddedeval.com/community/newsgroups
>
>



Re: EXEBASE of NK.EXE by Yannick

Yannick
Mon Oct 04 00:59:05 CDT 2004

NK base should be 88090000 and not 88900000
RAM should start at 88A70000 (88090000+009E0000) and have a size of
3590000, which make it go till 8C000000 (88000000 + 64MB)

with your config, you are not using RAM from 88090000 (end of EDBG) to
88900000 (start of NK)
And furthermore, RAM goes after the end of your SDRAM area (892E0000+3400000
= 8C6E0000 whic is over 8C000000 !)

BR
Yannick


--
----------------------------------------------------------------
Yannick Chamming's (eMVP)
ADESET
Windows Embedded Manager
ychammings AT adeset DOT com>
http://www.adeset.com
Tél : +33 (0)4.72.18.57.77
Fax : +33 (0)4.72.18.57.78
----------------------------------------------------------------

"Sujith" <sujithss@hotmail.com> wrote in message
news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> Thanks Steve and Yannick.
> but i configured the config.bib and OEMAddressTable according to the
points
> which the community people gave me..
> well, i am including the config.bib and OEMAddressTable here. please
> advise..
> I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash (external)
> (programmable to 16MB, currently using only defaults)(100000 to 900000)
> MEMORY
> NK 88900000 009E0000 RAMIMAGE
> RAM 892E0000 03400000 RAM
> ; ** Reserved section **
> DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> BLDR 88010000 00040000 RESERVED ; Bldr + Bldr RAM
> EDBG 88050000 00040000 RESERVED ; EthDbg Buffers
> CONFIG
> IF IMGFLASH !
> AUTOSIZE=ON
> ENDIF
> COMPRESSION=OFF
> KERNELFIXUPS=ON
> ROMSTART=88900000
> ROMWIDTH=32
> ROMSIZE=300000
> IF IMGFLASH !
> ; This causes the BIN file sections to be placed at the correct RAM
> ; address (starting at 0x0090.0000) before the MMU is turned on. After
> ; the MMU is enabled, the OEMAddressTable defines the mapping
> ; (0x8890.0000).
> ROMOFFSET=78000000
> ENDIF
> IF IMGFLASH
> ; This causes the BIN file sections to be placed at the correct FLASH
> ; address (starting at 0x0010.0000) before the MMU is turned on. After
> ; the MMU is enabled, the OEMAddressTable defines the mapping
> ; (0x8000.0000).
> ROMOFFSET=77800000
> ENDIF
>
> And here is my OEMAddressTable
>
> ; System Flash
> VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
>
> ; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
> ; can only declare RAM for the minimum amount of memory possible in
> ; a system, 'cause the kernel uses the very top of RAM for its own
> ; structures
>
> VA_RAM_BASE EQU 0x88000000
> VA_CF_BASE EQU 0x91000000
> VA_USB_BASE EQU 0x92000000
>
> VA_PERIPHERAL_COMMON EQU 0x96000000
> VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
> VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ; Interrupt
> Control, 1Mb
> VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0 Base
> VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1 Base
> VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug base
>
> EXPORT OEMAddressTable[DATA]
> OEMAddressTable
> ;;;-------------------------------------------------------------
> ;;; Virt Addr Phys Addr MB
> ;;;-------------------------------------------------------------
> DCD VA_RAM_BASE, 0x00900000, 64 ; 64
MB
> SDRAM
> DCD VA_FLASH_BASE, 0x00100000, 8 ; 8 MB
> Flash
> DCD VA_CF_BASE, 0x40000000, 16 ;
16
> MB Compact Flash
> DCD VA_USB_BASE, 0x80000000, 64 ; 64
> MB USB
> DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB common Space
> for all peripherals maps to memory includes SRAM Also
> DCD 0, 0, 0 ; end of table must be zero
> END
>
> Also in the board.h i am using only Uncached area only.
> #define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
> #define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only Uncached area
to
> talk to the Peripherals.
> #define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
> #define VA_IC_BASE (VA_PERIPHERAL_COMMON_U + 0x30500)
> #define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
> #define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
> #define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580) //GIO
BASE
> #define VA_RAM_BASE 0x88000000 ; since this value i
> gave 88900000 for NK in the config.bib
> #define VA_FLASH_BASE 0x80000000
>
> Regards
> Sujith
>
>
> "Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in message
> news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> > Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
> >
> > --
> > Steve Maillet
> > EmbeddedFusion
> > www.EmbeddedFusion.com
> >
> > Do have an opinion on the effectiveness of Microsoft Windows Mobile and
> > Embedded newsgroups? Let us know!
> > https://www.windowsembeddedeval.com/community/newsgroups
> >
> >
>
>



Re: EXEBASE of NK.EXE by Sujith

Sujith
Mon Oct 04 01:45:43 CDT 2004

Thanks Yannick,
still I am unable to get any debug prints.
I am using a custom .s file instead of the given fw_arm.s, which is
startup.s and I am using the same with bootloader also.
is that is the problem?
regards
Sujith

"Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in message
news:OWh$CddqEHA.896@TK2MSFTNGP12.phx.gbl...
> NK base should be 88090000 and not 88900000
> RAM should start at 88A70000 (88090000+009E0000) and have a size of
> 3590000, which make it go till 8C000000 (88000000 + 64MB)
>
> with your config, you are not using RAM from 88090000 (end of EDBG) to
> 88900000 (start of NK)
> And furthermore, RAM goes after the end of your SDRAM area
(892E0000+3400000
> = 8C6E0000 whic is over 8C000000 !)
>
> BR
> Yannick
>
>
> --
> ----------------------------------------------------------------
> Yannick Chamming's (eMVP)
> ADESET
> Windows Embedded Manager
> ychammings AT adeset DOT com>
> http://www.adeset.com
> Tél : +33 (0)4.72.18.57.77
> Fax : +33 (0)4.72.18.57.78
> ----------------------------------------------------------------
>
> "Sujith" <sujithss@hotmail.com> wrote in message
> news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> > Thanks Steve and Yannick.
> > but i configured the config.bib and OEMAddressTable according to the
> points
> > which the community people gave me..
> > well, i am including the config.bib and OEMAddressTable here. please
> > advise..
> > I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash (external)
> > (programmable to 16MB, currently using only defaults)(100000 to 900000)
> > MEMORY
> > NK 88900000 009E0000 RAMIMAGE
> > RAM 892E0000 03400000 RAM
> > ; ** Reserved section **
> > DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> > BLDR 88010000 00040000 RESERVED ; Bldr + Bldr RAM
> > EDBG 88050000 00040000 RESERVED ; EthDbg Buffers
> > CONFIG
> > IF IMGFLASH !
> > AUTOSIZE=ON
> > ENDIF
> > COMPRESSION=OFF
> > KERNELFIXUPS=ON
> > ROMSTART=88900000
> > ROMWIDTH=32
> > ROMSIZE=300000
> > IF IMGFLASH !
> > ; This causes the BIN file sections to be placed at the correct RAM
> > ; address (starting at 0x0090.0000) before the MMU is turned on. After
> > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > ; (0x8890.0000).
> > ROMOFFSET=78000000
> > ENDIF
> > IF IMGFLASH
> > ; This causes the BIN file sections to be placed at the correct FLASH
> > ; address (starting at 0x0010.0000) before the MMU is turned on. After
> > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > ; (0x8000.0000).
> > ROMOFFSET=77800000
> > ENDIF
> >
> > And here is my OEMAddressTable
> >
> > ; System Flash
> > VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
> >
> > ; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
> > ; can only declare RAM for the minimum amount of memory possible in
> > ; a system, 'cause the kernel uses the very top of RAM for its own
> > ; structures
> >
> > VA_RAM_BASE EQU 0x88000000
> > VA_CF_BASE EQU 0x91000000
> > VA_USB_BASE EQU 0x92000000
> >
> > VA_PERIPHERAL_COMMON EQU 0x96000000
> > VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
> > VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ; Interrupt
> > Control, 1Mb
> > VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0 Base
> > VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1 Base
> > VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug base
> >
> > EXPORT OEMAddressTable[DATA]
> > OEMAddressTable
> > ;;;-------------------------------------------------------------
> > ;;; Virt Addr Phys Addr MB
> > ;;;-------------------------------------------------------------
> > DCD VA_RAM_BASE, 0x00900000, 64 ; 64
> MB
> > SDRAM
> > DCD VA_FLASH_BASE, 0x00100000, 8 ; 8
MB
> > Flash
> > DCD VA_CF_BASE, 0x40000000, 16 ;
> 16
> > MB Compact Flash
> > DCD VA_USB_BASE, 0x80000000, 64 ;
64
> > MB USB
> > DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB common
Space
> > for all peripherals maps to memory includes SRAM Also
> > DCD 0, 0, 0 ; end of table must be zero
> > END
> >
> > Also in the board.h i am using only Uncached area only.
> > #define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
> > #define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only Uncached area
> to
> > talk to the Peripherals.
> > #define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
> > #define VA_IC_BASE (VA_PERIPHERAL_COMMON_U + 0x30500)
> > #define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
> > #define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
> > #define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580) //GIO
> BASE
> > #define VA_RAM_BASE 0x88000000 ; since this value i
> > gave 88900000 for NK in the config.bib
> > #define VA_FLASH_BASE 0x80000000
> >
> > Regards
> > Sujith
> >
> >
> > "Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in
message
> > news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> > > Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
> > >
> > > --
> > > Steve Maillet
> > > EmbeddedFusion
> > > www.EmbeddedFusion.com
> > >
> > > Do have an opinion on the effectiveness of Microsoft Windows Mobile
and
> > > Embedded newsgroups? Let us know!
> > > https://www.windowsembeddedeval.com/community/newsgroups
> > >
> > >
> >
> >
>
>



Re: EXEBASE of NK.EXE by Yannick

Yannick
Tue Oct 05 00:34:59 CDT 2004

If you are using the same startup code between bootloader & kernel, you
might have some memory access issues, as your bootloader might work with
physical mem (no MMU) which is not the case of the kernel.

You should check your memory accesses

--
----------------------------------------------------------------
Yannick Chamming's (eMVP)
ADESET
Windows Embedded Manager
ychammings AT adeset DOT com>
http://www.adeset.com
Tél : +33 (0)4.72.18.57.77
Fax : +33 (0)4.72.18.57.78
----------------------------------------------------------------

"Sujith" <sujithss@hotmail.com> wrote in message
news:#CuSG2dqEHA.3800@TK2MSFTNGP14.phx.gbl...
> Thanks Yannick,
> still I am unable to get any debug prints.
> I am using a custom .s file instead of the given fw_arm.s, which is
> startup.s and I am using the same with bootloader also.
> is that is the problem?
> regards
> Sujith
>
> "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
message
> news:OWh$CddqEHA.896@TK2MSFTNGP12.phx.gbl...
> > NK base should be 88090000 and not 88900000
> > RAM should start at 88A70000 (88090000+009E0000) and have a size of
> > 3590000, which make it go till 8C000000 (88000000 + 64MB)
> >
> > with your config, you are not using RAM from 88090000 (end of EDBG) to
> > 88900000 (start of NK)
> > And furthermore, RAM goes after the end of your SDRAM area
> (892E0000+3400000
> > = 8C6E0000 whic is over 8C000000 !)
> >
> > BR
> > Yannick
> >
> >
> > --
> > ----------------------------------------------------------------
> > Yannick Chamming's (eMVP)
> > ADESET
> > Windows Embedded Manager
> > ychammings AT adeset DOT com>
> > http://www.adeset.com
> > Tél : +33 (0)4.72.18.57.77
> > Fax : +33 (0)4.72.18.57.78
> > ----------------------------------------------------------------
> >
> > "Sujith" <sujithss@hotmail.com> wrote in message
> > news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> > > Thanks Steve and Yannick.
> > > but i configured the config.bib and OEMAddressTable according to the
> > points
> > > which the community people gave me..
> > > well, i am including the config.bib and OEMAddressTable here. please
> > > advise..
> > > I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash (external)
> > > (programmable to 16MB, currently using only defaults)(100000 to
900000)
> > > MEMORY
> > > NK 88900000 009E0000 RAMIMAGE
> > > RAM 892E0000 03400000 RAM
> > > ; ** Reserved section **
> > > DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> > > BLDR 88010000 00040000 RESERVED ; Bldr + Bldr RAM
> > > EDBG 88050000 00040000 RESERVED ; EthDbg Buffers
> > > CONFIG
> > > IF IMGFLASH !
> > > AUTOSIZE=ON
> > > ENDIF
> > > COMPRESSION=OFF
> > > KERNELFIXUPS=ON
> > > ROMSTART=88900000
> > > ROMWIDTH=32
> > > ROMSIZE=300000
> > > IF IMGFLASH !
> > > ; This causes the BIN file sections to be placed at the correct RAM
> > > ; address (starting at 0x0090.0000) before the MMU is turned on.
After
> > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > ; (0x8890.0000).
> > > ROMOFFSET=78000000
> > > ENDIF
> > > IF IMGFLASH
> > > ; This causes the BIN file sections to be placed at the correct FLASH
> > > ; address (starting at 0x0010.0000) before the MMU is turned on.
After
> > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > ; (0x8000.0000).
> > > ROMOFFSET=77800000
> > > ENDIF
> > >
> > > And here is my OEMAddressTable
> > >
> > > ; System Flash
> > > VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
> > >
> > > ; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
> > > ; can only declare RAM for the minimum amount of memory possible in
> > > ; a system, 'cause the kernel uses the very top of RAM for its own
> > > ; structures
> > >
> > > VA_RAM_BASE EQU 0x88000000
> > > VA_CF_BASE EQU 0x91000000
> > > VA_USB_BASE EQU 0x92000000
> > >
> > > VA_PERIPHERAL_COMMON EQU 0x96000000
> > > VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
> > > VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ;
Interrupt
> > > Control, 1Mb
> > > VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0 Base
> > > VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1 Base
> > > VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug base
> > >
> > > EXPORT OEMAddressTable[DATA]
> > > OEMAddressTable
> > > ;;;-------------------------------------------------------------
> > > ;;; Virt Addr Phys Addr MB
> > > ;;;-------------------------------------------------------------
> > > DCD VA_RAM_BASE, 0x00900000, 64 ;
64
> > MB
> > > SDRAM
> > > DCD VA_FLASH_BASE, 0x00100000, 8 ; 8
> MB
> > > Flash
> > > DCD VA_CF_BASE, 0x40000000, 16
;
> > 16
> > > MB Compact Flash
> > > DCD VA_USB_BASE, 0x80000000, 64
;
> 64
> > > MB USB
> > > DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB common
> Space
> > > for all peripherals maps to memory includes SRAM Also
> > > DCD 0, 0, 0 ; end of table must be zero
> > > END
> > >
> > > Also in the board.h i am using only Uncached area only.
> > > #define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
> > > #define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only Uncached
area
> > to
> > > talk to the Peripherals.
> > > #define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
> > > #define VA_IC_BASE (VA_PERIPHERAL_COMMON_U + 0x30500)
> > > #define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
> > > #define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
> > > #define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580) //GIO
> > BASE
> > > #define VA_RAM_BASE 0x88000000 ; since this value
i
> > > gave 88900000 for NK in the config.bib
> > > #define VA_FLASH_BASE 0x80000000
> > >
> > > Regards
> > > Sujith
> > >
> > >
> > > "Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in
> message
> > > news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> > > > Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
> > > >
> > > > --
> > > > Steve Maillet
> > > > EmbeddedFusion
> > > > www.EmbeddedFusion.com
> > > >
> > > > Do have an opinion on the effectiveness of Microsoft Windows Mobile
> and
> > > > Embedded newsgroups? Let us know!
> > > > https://www.windowsembeddedeval.com/community/newsgroups
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Re: EXEBASE of NK.EXE by Sujith

Sujith
Tue Oct 05 00:54:12 CDT 2004

Thanks Yannick,
but the MMU initialization is being done in the KernelStart only. I am not
doing the initialization of the MMU in the startupcode at all..
it is like this,
1. Put the processor in Supervisor mode,
2. disable MMU
3. flush TLB
4. Flush Instruction and Data Cache
5.Drain the write and fill buffers
6. Initialize PLL (Clock)
7. Initialize SDRAM
8.Initialize SP in IRAM
now some debug prints followed by jump to either KernelStart or SBootMain
according to the option..like
mov sp, #0x4000 ; setting the stack pointer
mov r5, #0x30000 ; UART Initialization have to be removed later
add r5, r5, #0x300
mov r0, #0x0D
strh r0, [r5, #2]
;flush Transmit FIFO
mov r0, #0x8000
strh r0, [r5, #8]
;write into DTR
mov r0, #0x65
strb r0, [r5, #0x00]
mov r0, #0x65
strb r0, [r5, #0x00] ; END of transmit data.

IF SBOOT
bl SBootMain
ELSE
; (r0) = physical address of OEMMemoryMap
adr r0, OEMAddressTable

bl KernelStart
ENDIF
I gave only a wrap up in the .s file for bootloader....
anything more do i need to do?
regards
Sujith

"Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in message
news:OHZ5P0pqEHA.3396@tk2msftngp13.phx.gbl...
> If you are using the same startup code between bootloader & kernel, you
> might have some memory access issues, as your bootloader might work with
> physical mem (no MMU) which is not the case of the kernel.
>
> You should check your memory accesses
>
> --
> ----------------------------------------------------------------
> Yannick Chamming's (eMVP)
> ADESET
> Windows Embedded Manager
> ychammings AT adeset DOT com>
> http://www.adeset.com
> Tél : +33 (0)4.72.18.57.77
> Fax : +33 (0)4.72.18.57.78
> ----------------------------------------------------------------
>
> "Sujith" <sujithss@hotmail.com> wrote in message
> news:#CuSG2dqEHA.3800@TK2MSFTNGP14.phx.gbl...
> > Thanks Yannick,
> > still I am unable to get any debug prints.
> > I am using a custom .s file instead of the given fw_arm.s, which is
> > startup.s and I am using the same with bootloader also.
> > is that is the problem?
> > regards
> > Sujith
> >
> > "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
> message
> > news:OWh$CddqEHA.896@TK2MSFTNGP12.phx.gbl...
> > > NK base should be 88090000 and not 88900000
> > > RAM should start at 88A70000 (88090000+009E0000) and have a size of
> > > 3590000, which make it go till 8C000000 (88000000 + 64MB)
> > >
> > > with your config, you are not using RAM from 88090000 (end of EDBG) to
> > > 88900000 (start of NK)
> > > And furthermore, RAM goes after the end of your SDRAM area
> > (892E0000+3400000
> > > = 8C6E0000 whic is over 8C000000 !)
> > >
> > > BR
> > > Yannick
> > >
> > >
> > > --
> > > ----------------------------------------------------------------
> > > Yannick Chamming's (eMVP)
> > > ADESET
> > > Windows Embedded Manager
> > > ychammings AT adeset DOT com>
> > > http://www.adeset.com
> > > Tél : +33 (0)4.72.18.57.77
> > > Fax : +33 (0)4.72.18.57.78
> > > ----------------------------------------------------------------
> > >
> > > "Sujith" <sujithss@hotmail.com> wrote in message
> > > news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> > > > Thanks Steve and Yannick.
> > > > but i configured the config.bib and OEMAddressTable according to the
> > > points
> > > > which the community people gave me..
> > > > well, i am including the config.bib and OEMAddressTable here. please
> > > > advise..
> > > > I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash
(external)
> > > > (programmable to 16MB, currently using only defaults)(100000 to
> 900000)
> > > > MEMORY
> > > > NK 88900000 009E0000 RAMIMAGE
> > > > RAM 892E0000 03400000 RAM
> > > > ; ** Reserved section **
> > > > DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> > > > BLDR 88010000 00040000 RESERVED ; Bldr + Bldr RAM
> > > > EDBG 88050000 00040000 RESERVED ; EthDbg Buffers
> > > > CONFIG
> > > > IF IMGFLASH !
> > > > AUTOSIZE=ON
> > > > ENDIF
> > > > COMPRESSION=OFF
> > > > KERNELFIXUPS=ON
> > > > ROMSTART=88900000
> > > > ROMWIDTH=32
> > > > ROMSIZE=300000
> > > > IF IMGFLASH !
> > > > ; This causes the BIN file sections to be placed at the correct RAM
> > > > ; address (starting at 0x0090.0000) before the MMU is turned on.
> After
> > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > ; (0x8890.0000).
> > > > ROMOFFSET=78000000
> > > > ENDIF
> > > > IF IMGFLASH
> > > > ; This causes the BIN file sections to be placed at the correct
FLASH
> > > > ; address (starting at 0x0010.0000) before the MMU is turned on.
> After
> > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > ; (0x8000.0000).
> > > > ROMOFFSET=77800000
> > > > ENDIF
> > > >
> > > > And here is my OEMAddressTable
> > > >
> > > > ; System Flash
> > > > VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
> > > >
> > > > ; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
> > > > ; can only declare RAM for the minimum amount of memory possible in
> > > > ; a system, 'cause the kernel uses the very top of RAM for its own
> > > > ; structures
> > > >
> > > > VA_RAM_BASE EQU 0x88000000
> > > > VA_CF_BASE EQU 0x91000000
> > > > VA_USB_BASE EQU 0x92000000
> > > >
> > > > VA_PERIPHERAL_COMMON EQU 0x96000000
> > > > VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
> > > > VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ;
> Interrupt
> > > > Control, 1Mb
> > > > VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0 Base
> > > > VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1 Base
> > > > VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug
base
> > > >
> > > > EXPORT OEMAddressTable[DATA]
> > > > OEMAddressTable
> > > > ;;;-------------------------------------------------------------
> > > > ;;; Virt Addr Phys Addr MB
> > > > ;;;-------------------------------------------------------------
> > > > DCD VA_RAM_BASE, 0x00900000, 64
;
> 64
> > > MB
> > > > SDRAM
> > > > DCD VA_FLASH_BASE, 0x00100000, 8 ;
8
> > MB
> > > > Flash
> > > > DCD VA_CF_BASE, 0x40000000,
16
> ;
> > > 16
> > > > MB Compact Flash
> > > > DCD VA_USB_BASE, 0x80000000,
64
> ;
> > 64
> > > > MB USB
> > > > DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB common
> > Space
> > > > for all peripherals maps to memory includes SRAM Also
> > > > DCD 0, 0, 0 ; end of table must be zero
> > > > END
> > > >
> > > > Also in the board.h i am using only Uncached area only.
> > > > #define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
> > > > #define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only Uncached
> area
> > > to
> > > > talk to the Peripherals.
> > > > #define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
> > > > #define VA_IC_BASE (VA_PERIPHERAL_COMMON_U + 0x30500)
> > > > #define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
> > > > #define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
> > > > #define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580)
//GIO
> > > BASE
> > > > #define VA_RAM_BASE 0x88000000 ; since this
value
> i
> > > > gave 88900000 for NK in the config.bib
> > > > #define VA_FLASH_BASE 0x80000000
> > > >
> > > > Regards
> > > > Sujith
> > > >
> > > >
> > > > "Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in
> > message
> > > > news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> > > > > Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
> > > > >
> > > > > --
> > > > > Steve Maillet
> > > > > EmbeddedFusion
> > > > > www.EmbeddedFusion.com
> > > > >
> > > > > Do have an opinion on the effectiveness of Microsoft Windows
Mobile
> > and
> > > > > Embedded newsgroups? Let us know!
> > > > > https://www.windowsembeddedeval.com/community/newsgroups
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Re: EXEBASE of NK.EXE by Yannick

Yannick
Thu Oct 07 01:16:51 CDT 2004

Do you see the debug msg in any of the configuration (eboot or kernel)? If
no, you should focus on having it working in eboot, before trying to debug
the kernel starting code.

--
----------------------------------------------------------------
Yannick Chamming's (eMVP)
ADESET
Windows Embedded Manager
ychammings AT adeset DOT com>
http://www.adeset.com
Tél : +33 (0)4.72.18.57.77
Fax : +33 (0)4.72.18.57.78
----------------------------------------------------------------

"Sujith" <sujithss@hotmail.com> wrote in message
news:ep6799pqEHA.3760@TK2MSFTNGP09.phx.gbl...
> Thanks Yannick,
> but the MMU initialization is being done in the KernelStart only. I am not
> doing the initialization of the MMU in the startupcode at all..
> it is like this,
> 1. Put the processor in Supervisor mode,
> 2. disable MMU
> 3. flush TLB
> 4. Flush Instruction and Data Cache
> 5.Drain the write and fill buffers
> 6. Initialize PLL (Clock)
> 7. Initialize SDRAM
> 8.Initialize SP in IRAM
> now some debug prints followed by jump to either KernelStart or SBootMain
> according to the option..like
> mov sp, #0x4000 ; setting the stack pointer
> mov r5, #0x30000 ; UART Initialization have to be removed later
> add r5, r5, #0x300
> mov r0, #0x0D
> strh r0, [r5, #2]
> ;flush Transmit FIFO
> mov r0, #0x8000
> strh r0, [r5, #8]
> ;write into DTR
> mov r0, #0x65
> strb r0, [r5, #0x00]
> mov r0, #0x65
> strb r0, [r5, #0x00] ; END of transmit data.
>
> IF SBOOT
> bl SBootMain
> ELSE
> ; (r0) = physical address of OEMMemoryMap
> adr r0, OEMAddressTable
>
> bl KernelStart
> ENDIF
> I gave only a wrap up in the .s file for bootloader....
> anything more do i need to do?
> regards
> Sujith
>
> "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
message
> news:OHZ5P0pqEHA.3396@tk2msftngp13.phx.gbl...
> > If you are using the same startup code between bootloader & kernel, you
> > might have some memory access issues, as your bootloader might work with
> > physical mem (no MMU) which is not the case of the kernel.
> >
> > You should check your memory accesses
> >
> > --
> > ----------------------------------------------------------------
> > Yannick Chamming's (eMVP)
> > ADESET
> > Windows Embedded Manager
> > ychammings AT adeset DOT com>
> > http://www.adeset.com
> > Tél : +33 (0)4.72.18.57.77
> > Fax : +33 (0)4.72.18.57.78
> > ----------------------------------------------------------------
> >
> > "Sujith" <sujithss@hotmail.com> wrote in message
> > news:#CuSG2dqEHA.3800@TK2MSFTNGP14.phx.gbl...
> > > Thanks Yannick,
> > > still I am unable to get any debug prints.
> > > I am using a custom .s file instead of the given fw_arm.s, which is
> > > startup.s and I am using the same with bootloader also.
> > > is that is the problem?
> > > regards
> > > Sujith
> > >
> > > "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
> > message
> > > news:OWh$CddqEHA.896@TK2MSFTNGP12.phx.gbl...
> > > > NK base should be 88090000 and not 88900000
> > > > RAM should start at 88A70000 (88090000+009E0000) and have a size of
> > > > 3590000, which make it go till 8C000000 (88000000 + 64MB)
> > > >
> > > > with your config, you are not using RAM from 88090000 (end of EDBG)
to
> > > > 88900000 (start of NK)
> > > > And furthermore, RAM goes after the end of your SDRAM area
> > > (892E0000+3400000
> > > > = 8C6E0000 whic is over 8C000000 !)
> > > >
> > > > BR
> > > > Yannick
> > > >
> > > >
> > > > --
> > > > ----------------------------------------------------------------
> > > > Yannick Chamming's (eMVP)
> > > > ADESET
> > > > Windows Embedded Manager
> > > > ychammings AT adeset DOT com>
> > > > http://www.adeset.com
> > > > Tél : +33 (0)4.72.18.57.77
> > > > Fax : +33 (0)4.72.18.57.78
> > > > ----------------------------------------------------------------
> > > >
> > > > "Sujith" <sujithss@hotmail.com> wrote in message
> > > > news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> > > > > Thanks Steve and Yannick.
> > > > > but i configured the config.bib and OEMAddressTable according to
the
> > > > points
> > > > > which the community people gave me..
> > > > > well, i am including the config.bib and OEMAddressTable here.
please
> > > > > advise..
> > > > > I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash
> (external)
> > > > > (programmable to 16MB, currently using only defaults)(100000 to
> > 900000)
> > > > > MEMORY
> > > > > NK 88900000 009E0000 RAMIMAGE
> > > > > RAM 892E0000 03400000 RAM
> > > > > ; ** Reserved section **
> > > > > DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> > > > > BLDR 88010000 00040000 RESERVED ; Bldr + Bldr
RAM
> > > > > EDBG 88050000 00040000 RESERVED ; EthDbg
Buffers
> > > > > CONFIG
> > > > > IF IMGFLASH !
> > > > > AUTOSIZE=ON
> > > > > ENDIF
> > > > > COMPRESSION=OFF
> > > > > KERNELFIXUPS=ON
> > > > > ROMSTART=88900000
> > > > > ROMWIDTH=32
> > > > > ROMSIZE=300000
> > > > > IF IMGFLASH !
> > > > > ; This causes the BIN file sections to be placed at the correct
RAM
> > > > > ; address (starting at 0x0090.0000) before the MMU is turned on.
> > After
> > > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > > ; (0x8890.0000).
> > > > > ROMOFFSET=78000000
> > > > > ENDIF
> > > > > IF IMGFLASH
> > > > > ; This causes the BIN file sections to be placed at the correct
> FLASH
> > > > > ; address (starting at 0x0010.0000) before the MMU is turned on.
> > After
> > > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > > ; (0x8000.0000).
> > > > > ROMOFFSET=77800000
> > > > > ENDIF
> > > > >
> > > > > And here is my OEMAddressTable
> > > > >
> > > > > ; System Flash
> > > > > VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
> > > > >
> > > > > ; Allow space for the RAM to grow up 128Mb. NOTE, however, that we
> > > > > ; can only declare RAM for the minimum amount of memory possible
in
> > > > > ; a system, 'cause the kernel uses the very top of RAM for its own
> > > > > ; structures
> > > > >
> > > > > VA_RAM_BASE EQU 0x88000000
> > > > > VA_CF_BASE EQU 0x91000000
> > > > > VA_USB_BASE EQU 0x92000000
> > > > >
> > > > > VA_PERIPHERAL_COMMON EQU 0x96000000
> > > > > VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000) ;Timer
> > > > > VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ;
> > Interrupt
> > > > > Control, 1Mb
> > > > > VA_UART0_BASE EQU (VA_PERIPHERAL_COMMON + 0x30300) ; UART0
Base
> > > > > VA_UART1_BASE EQU (VA_PERIPHERAL_COMMON + 0x30380) ; UART1
Base
> > > > > VA_DBG_BASE EQU (VA_PERIPHERAL_COMMON + 0x30580) ; debug
> base
> > > > >
> > > > > EXPORT OEMAddressTable[DATA]
> > > > > OEMAddressTable
> > > > >
;;;-------------------------------------------------------------
> > > > > ;;; Virt Addr Phys Addr MB
> > > > >
;;;-------------------------------------------------------------
> > > > > DCD VA_RAM_BASE, 0x00900000,
64
> ;
> > 64
> > > > MB
> > > > > SDRAM
> > > > > DCD VA_FLASH_BASE, 0x00100000, 8
;
> 8
> > > MB
> > > > > Flash
> > > > > DCD VA_CF_BASE, 0x40000000,
> 16
> > ;
> > > > 16
> > > > > MB Compact Flash
> > > > > DCD VA_USB_BASE, 0x80000000,
> 64
> > ;
> > > 64
> > > > > MB USB
> > > > > DCD VA_PERIPHERAL_COMMON, 0x00000000, 1 ; 1MB
common
> > > Space
> > > > > for all peripherals maps to memory includes SRAM Also
> > > > > DCD 0, 0, 0 ; end of table must be zero
> > > > > END
> > > > >
> > > > > Also in the board.h i am using only Uncached area only.
> > > > > #define VA_PERIPHERAL_COMMON_C 0x96000000 // Cached peripherals
> > > > > #define VA_PERIPHERAL_COMMON_U 0xB6000000 // But use only
Uncached
> > area
> > > > to
> > > > > talk to the Peripherals.
> > > > > #define VA_CT_BASE (VA_PERIPHERAL_COMMON_U + 0x30000)
> > > > > #define VA_IC_BASE (VA_PERIPHERAL_COMMON_U +
0x30500)
> > > > > #define VA_UART0_BASE (VA_PERIPHERAL_COMMON_U + 0x30300)
> > > > > #define VA_UART1_BASE (VA_PERIPHERAL_COMMON_U + 0x30380)
> > > > > #define VA_DBG_BASE (VA_PERIPHERAL_COMMON_U + 0x30580)
> //GIO
> > > > BASE
> > > > > #define VA_RAM_BASE 0x88000000 ; since this
> value
> > i
> > > > > gave 88900000 for NK in the config.bib
> > > > > #define VA_FLASH_BASE 0x80000000
> > > > >
> > > > > Regards
> > > > > Sujith
> > > > >
> > > > >
> > > > > "Steve Maillet (eMVP)" <nospam1@EntelechyConsulting.com> wrote in
> > > message
> > > > > news:OOs7nPipEHA.2988@TK2MSFTNGP15.phx.gbl...
> > > > > > Nope, probably something wrong in CONFIG.BIB or OEMAddressTable
> > > > > >
> > > > > > --
> > > > > > Steve Maillet
> > > > > > EmbeddedFusion
> > > > > > www.EmbeddedFusion.com
> > > > > >
> > > > > > Do have an opinion on the effectiveness of Microsoft Windows
> Mobile
> > > and
> > > > > > Embedded newsgroups? Let us know!
> > > > > > https://www.windowsembeddedeval.com/community/newsgroups
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Re: EXEBASE of NK.EXE by Sujith

Sujith
Thu Oct 07 03:17:13 CDT 2004

Yes, in SBOOT I am able to see the debug messages and all.
I have ported the SBOOT code to DM320 and I am getting debug Messages also.
but the problem is that, while start downloading, in the OEMReadData(), the
static variables are not getting initialized properly, they are having some
junk values and I tried putting them in global, didn't make any difference.
well, let it be there,
also, I have compiled the \kernel\arm directory with some debug code... like
this,
ldr r0, VirtualStart
cmp r0, #0 ; make sure no stall on "mov pc,r0"
below
mtc15 r1, c1 ; enable the MMU & Caches
mov pc, r0 ; & jump to new virtual address
nop

;uart initialisation
ldr r5, =0xB6030300
mov r0, #0x0e
strh r0, [r5, #2]

;flush Transmit FIFO
mov r0, #0x8000
strh r0, [r5, #8]


mov r0, #0x65
strb r0, [r5, #0x00]
mov r0, #0x65
strb r0, [r5, #0x00]
mov r0, #0x65
strb r0, [r5, #0x00]
mov r0, #0x65
strb r0, [r5, #0x00]
mov r0, #0x65
strb r0, [r5, #0x00]
;uart initialisation, end here

; MMU & caches now enabled.
;
; (r10) = physcial address of 1st level page table

VStart ldr sp, =KStack

where in the OEMAaddressTable, I am linking 0x96000000 to the 0x00000000,
which spans over all the peripherals, and the UART0 starts at 0x30300.
since the address 0x96000000 is caching enabled, I am using, 0xB6000000,
which is the corresponding ; caching and buffering disabled area.

and upto MMU Initialization it is working properly. only after that I am not
able to get these messages.
what else should I do.

I am attaching my OEMAddressTable along with this. have a look at it and
advise.

now i am downloading the NK.NB0 file using ourcustom bootloader for DM320
and jumping to that.

Thanks and Regards
Sujith


"Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in message
news:OH4X%23UDrEHA.3748@TK2MSFTNGP09.phx.gbl...
> Do you see the debug msg in any of the configuration (eboot or kernel)? If
> no, you should focus on having it working in eboot, before trying to debug
> the kernel starting code.
>
> --
> ----------------------------------------------------------------
> Yannick Chamming's (eMVP)
> ADESET
> Windows Embedded Manager
> ychammings AT adeset DOT com>
> http://www.adeset.com
> Tél : +33 (0)4.72.18.57.77
> Fax : +33 (0)4.72.18.57.78
> ----------------------------------------------------------------
>
> "Sujith" <sujithss@hotmail.com> wrote in message
> news:ep6799pqEHA.3760@TK2MSFTNGP09.phx.gbl...
> > Thanks Yannick,
> > but the MMU initialization is being done in the KernelStart only. I am
not
> > doing the initialization of the MMU in the startupcode at all..
> > it is like this,
> > 1. Put the processor in Supervisor mode,
> > 2. disable MMU
> > 3. flush TLB
> > 4. Flush Instruction and Data Cache
> > 5.Drain the write and fill buffers
> > 6. Initialize PLL (Clock)
> > 7. Initialize SDRAM
> > 8.Initialize SP in IRAM
> > now some debug prints followed by jump to either KernelStart or
SBootMain
> > according to the option..like
> > mov sp, #0x4000 ; setting the stack pointer
> > mov r5, #0x30000 ; UART Initialization have to be removed later
> > add r5, r5, #0x300
> > mov r0, #0x0D
> > strh r0, [r5, #2]
> > ;flush Transmit FIFO
> > mov r0, #0x8000
> > strh r0, [r5, #8]
> > ;write into DTR
> > mov r0, #0x65
> > strb r0, [r5, #0x00]
> > mov r0, #0x65
> > strb r0, [r5, #0x00] ; END of transmit data.
> >
> > IF SBOOT
> > bl SBootMain
> > ELSE
> > ; (r0) = physical address of OEMMemoryMap
> > adr r0, OEMAddressTable
> >
> > bl KernelStart
> > ENDIF
> > I gave only a wrap up in the .s file for bootloader....
> > anything more do i need to do?
> > regards
> > Sujith
> >
> > "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
> message
> > news:OHZ5P0pqEHA.3396@tk2msftngp13.phx.gbl...
> > > If you are using the same startup code between bootloader & kernel,
you
> > > might have some memory access issues, as your bootloader might work
with
> > > physical mem (no MMU) which is not the case of the kernel.
> > >
> > > You should check your memory accesses
> > >
> > > --
> > > ----------------------------------------------------------------
> > > Yannick Chamming's (eMVP)
> > > ADESET
> > > Windows Embedded Manager
> > > ychammings AT adeset DOT com>
> > > http://www.adeset.com
> > > Tél : +33 (0)4.72.18.57.77
> > > Fax : +33 (0)4.72.18.57.78
> > > ----------------------------------------------------------------
> > >
> > > "Sujith" <sujithss@hotmail.com> wrote in message
> > > news:#CuSG2dqEHA.3800@TK2MSFTNGP14.phx.gbl...
> > > > Thanks Yannick,
> > > > still I am unable to get any debug prints.
> > > > I am using a custom .s file instead of the given fw_arm.s, which is
> > > > startup.s and I am using the same with bootloader also.
> > > > is that is the problem?
> > > > regards
> > > > Sujith
> > > >
> > > > "Yannick Chamming's [eMVP]" <ychammings_nospam@adeset.com> wrote in
> > > message
> > > > news:OWh$CddqEHA.896@TK2MSFTNGP12.phx.gbl...
> > > > > NK base should be 88090000 and not 88900000
> > > > > RAM should start at 88A70000 (88090000+009E0000) and have a size
of
> > > > > 3590000, which make it go till 8C000000 (88000000 + 64MB)
> > > > >
> > > > > with your config, you are not using RAM from 88090000 (end of
EDBG)
> to
> > > > > 88900000 (start of NK)
> > > > > And furthermore, RAM goes after the end of your SDRAM area
> > > > (892E0000+3400000
> > > > > = 8C6E0000 whic is over 8C000000 !)
> > > > >
> > > > > BR
> > > > > Yannick
> > > > >
> > > > >
> > > > > --
> > > > > ----------------------------------------------------------------
> > > > > Yannick Chamming's (eMVP)
> > > > > ADESET
> > > > > Windows Embedded Manager
> > > > > ychammings AT adeset DOT com>
> > > > > http://www.adeset.com
> > > > > Tél : +33 (0)4.72.18.57.77
> > > > > Fax : +33 (0)4.72.18.57.78
> > > > > ----------------------------------------------------------------
> > > > >
> > > > > "Sujith" <sujithss@hotmail.com> wrote in message
> > > > > news:##s7hCqpEHA.324@TK2MSFTNGP11.phx.gbl...
> > > > > > Thanks Steve and Yannick.
> > > > > > but i configured the config.bib and OEMAddressTable according to
> the
> > > > > points
> > > > > > which the community people gave me..
> > > > > > well, i am including the config.bib and OEMAddressTable here.
> please
> > > > > > advise..
> > > > > > I have 64MB SDRAM (external) (900000 - 94MB). and 8MB Flash
> > (external)
> > > > > > (programmable to 16MB, currently using only defaults)(100000 to
> > > 900000)
> > > > > > MEMORY
> > > > > > NK 88900000 009E0000 RAMIMAGE
> > > > > > RAM 892E0000 03400000 RAM
> > > > > > ; ** Reserved section **
> > > > > > DRV_GLB 88008000 00001000 RESERVED ; Boot Args
> > > > > > BLDR 88010000 00040000 RESERVED ; Bldr + Bldr
> RAM
> > > > > > EDBG 88050000 00040000 RESERVED ; EthDbg
> Buffers
> > > > > > CONFIG
> > > > > > IF IMGFLASH !
> > > > > > AUTOSIZE=ON
> > > > > > ENDIF
> > > > > > COMPRESSION=OFF
> > > > > > KERNELFIXUPS=ON
> > > > > > ROMSTART=88900000
> > > > > > ROMWIDTH=32
> > > > > > ROMSIZE=300000
> > > > > > IF IMGFLASH !
> > > > > > ; This causes the BIN file sections to be placed at the correct
> RAM
> > > > > > ; address (starting at 0x0090.0000) before the MMU is turned
on.
> > > After
> > > > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > > > ; (0x8890.0000).
> > > > > > ROMOFFSET=78000000
> > > > > > ENDIF
> > > > > > IF IMGFLASH
> > > > > > ; This causes the BIN file sections to be placed at the correct
> > FLASH
> > > > > > ; address (starting at 0x0010.0000) before the MMU is turned
on.
> > > After
> > > > > > ; the MMU is enabled, the OEMAddressTable defines the mapping
> > > > > > ; (0x8000.0000).
> > > > > > ROMOFFSET=77800000
> > > > > > ENDIF
> > > > > >
> > > > > > And here is my OEMAddressTable
> > > > > >
> > > > > > ; System Flash
> > > > > > VA_FLASH_BASE EQU 0x80000000 ; Flash, 8Mb
> > > > > >
> > > > > > ; Allow space for the RAM to grow up 128Mb. NOTE, however, that
we
> > > > > > ; can only declare RAM for the minimum amount of memory possible
> in
> > > > > > ; a system, 'cause the kernel uses the very top of RAM for its
own
> > > > > > ; structures
> > > > > >
> > > > > > VA_RAM_BASE EQU 0x88000000
> > > > > > VA_CF_BASE EQU 0x91000000
> > > > > > VA_USB_BASE EQU 0x92000000
> > > > > >
> > > > > > VA_PERIPHERAL_COMMON EQU 0x96000000
> > > > > > VA_CT_BASE EQU (VA_PERIPHERAL_COMMON + 0x30000)
;Timer
> > > > > > VA_IC_BASE EQU (VA_PERIPHERAL_COMMON + 0x30500) ;
> > > Interrupt
>