This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RE: IXP2400 Redboot / Ram Monitor / PCI Init... ?


Hi,

On Wed, 9 Feb 2005 11:09:16 -0500, Daly, Jeffrey <jeffrey.daly@intel.com> wrote:
> 
> The HAL_PCI_IGNORE_DEVICE macro is so that devices don't get configured.
> The code to do the PCI bus probes in config space hooks the data abort
> exception vector so probing non-existent devices is caught.  See
> ixp2000_pci.c (or similar) for pci_config_setup() code example.
> Somebody really should bring the IXP2400 stuff up to the latest version
> of eCos if it's still stuck at pre-2.0.

In pci_config_setup,  hooks "__pci_abort_handler" at location
(0x20)[4].

Q1:   What is this array base location 0x20 ?
Q2:   Is it related to Section_fixed_vectors / Virtual Vector Table ?
Q3:   Does same holds good for RAM Monitor ?
Q4:   For RAM monitor, Do I need to select one of
CYGSEM_HAL_ROM_MONITOR and CYGSEM_HAL_USE_ROM_MONITOR option ?

>From Anthony J. Massa Ecos book chapter 4, I read for RAM Debugging
Applications "CYGSEM_HAL_USE_ROM_MONITOR "  is enabled, whereas for 
RAM  Released application   "CYGSEM_HAL_ROM_MONITOR" is enabled.


May be I am wrongly altering 
mlt_arm_ixdp2400_ram.ldi and redboot_RAM.ecm
----------------------------------------------------------------------------------------------------
#include <cyg/infra/cyg_type.inc>

MEMORY
{
    ram  : ORIGIN = 0x00000000, LENGTH = 0x20000000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_rom_vectors (ram, 0x00200000, LMA_EQ_VMA)
    SECTION_fixed_vectors (ram, 0x20, LMA_EQ_VMA)
    SECTION_text (ram, 0x00202000 , LMA_EQ_VMA)
    SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_data (ram, 0x00240000, LMA_EQ_VMA )
    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
	CYG_LABEL_DEFN(__pci_window) = 0x100000; . = 
CYG_LABEL_DEFN(__pci_window) + 0x100000;
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
  SECTIONS_END
}

----------------------------------------------------------------------------------------------------
cdl_savefile_version 1;
cdl_savefile_command cdl_savefile_version {};
cdl_savefile_command cdl_savefile_command {};
cdl_savefile_command cdl_configuration { description hardware template
package };
cdl_savefile_command cdl_package { value_source user_value
wizard_value inferred_value };
cdl_savefile_command cdl_component { value_source user_value
wizard_value inferred_value };
cdl_savefile_command cdl_option { value_source user_value wizard_value
inferred_value };
cdl_savefile_command cdl_interface { value_source user_value
wizard_value inferred_value };

cdl_configuration eCos {
    description "" ;
    hardware    ixdp2400 ;
    template    redboot ;
    package -hardware CYGPKG_HAL_ARM v1_24  ;
    package -hardware CYGPKG_HAL_ARM_IXDP2400 v1_24  ;
    package -hardware CYGPKG_IO_PCI v1_24  ;
    package -hardware CYGPKG_IO_I2C v1_24  ;
    package -hardware CYGPKG_DEVS_ETH_ARM_IXDP2400 v1_24  ;
    package -template CYGPKG_HAL v1_24  ;
    package -template CYGPKG_INFRA v1_24  ;
    package -template CYGPKG_REDBOOT v1_24  ;
    package CYGPKG_IO_FLASH v1_24  ;
    package CYGPKG_IO_ETH_DRIVERS v1_24  ;
    package CYGPKG_DEVS_FLASH_IXDP2400 v1_24  ;
};

cdl_option CYGBLD_BUILD_GDB_STUBS {
    user_value 0
};

cdl_option CYGDBG_DEVS_ETH_ARM_IXDP2400_CHATTER {
    user_value 0
};

cdl_option CYGPKG_IO_PCI_DEBUG {
    user_value 0
};

cdl_option CYGNUM_DEVS_ETH_ARM_IXDP2400_DEV_COUNT {
    user_value 1
};

cdl_option CYGDBG_DEVS_ETH_ARM_IXDP2400_KEEP_STATISTICS {
    user_value 0
};

cdl_option CYGDBG_DEVS_ETH_ARM_IXDP2400_KEEP_82559_STATISTICS {
    user_value 0
};

cdl_option CYGNUM_IO_ETH_DRIVERS_NUM_PKT {
  user_value 32
};

cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
    user_value 0
};

cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
    inferred_value 0
};

cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
    inferred_value 0
};

cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {
    inferred_value 0
};

cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {
    inferred_value 0
};

cdl_option CYGSEM_HAL_ROM_MONITOR {
    user_value 0
};

cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
    inferred_value 0 0
};

cdl_component CYG_HAL_STARTUP {
    user_value RAM
};

cdl_option CYGBLD_BUILD_REDBOOT {
    user_value 1
};

cdl_option CYGSEM_REDBOOT_FLASH_CONFIG {
    user_value 1
};

cdl_option CYGSEM_REDBOOT_BSP_SYSCALLS {
  inferred_value 1
};

cdl_option CYGBLD_REDBOOT_MIN_IMAGE_SIZE {
  inferred_value 0x40000
};

cdl_option CYGSEM_IO_FLASH_VERIFY_PROGRAM {
  user_value 0
};

cdl_option CYGOPT_DEVS_FLASH_IXDP2400_NOT_IN_RAM {
  user_value 0
};

cdl_option CYGOPT_REDBOOT_FIS_REDBOOT_BACKUP {
  user_value 0
};

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]