URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [hal/] [i386/] [pcmb/] [v2_0/] [cdl/] [hal_i386_pcmb.cdl] - Rev 174
Compare with Previous | Blame | View Log
# ====================================================================## hal_i386_pcmb.cdl## PC Motherboard HAL package configuration data## ====================================================================#####ECOSGPLCOPYRIGHTBEGIN###### -------------------------------------------## This file is part of eCos, the Embedded Configurable Operating System.## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.## Copyright (C) 2002 Gary Thomas#### eCos is free software; you can redistribute it and/or modify it under## the terms of the GNU General Public License as published by the Free## Software Foundation; either version 2 or (at your option) any later version.#### eCos is distributed in the hope that it will be useful, but WITHOUT ANY## WARRANTY; without even the implied warranty of MERCHANTABILITY or## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License## for more details.#### You should have received a copy of the GNU General Public License along## with eCos; if not, write to the Free Software Foundation, Inc.,## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.#### As a special exception, if other files instantiate templates or use macros## or inline functions from this file, or you compile this file and link it## with other works to produce a work based on this file, this file does not## by itself cause the resulting work to be covered by the GNU General Public## License. However the source code for this file must still be made available## in accordance with section (3) of the GNU General Public License.#### This exception does not invalidate any other reasons why a work based on## this file might be covered by the GNU General Public License.#### Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.## at http://sources.redhat.com/ecos/ecos-license/## -------------------------------------------#####ECOSGPLCOPYRIGHTEND##### ====================================================================######DESCRIPTIONBEGIN###### Author(s): jskov# Original data: jskov# Contributors: nickg, gthomas# Date: 1999-11-01######DESCRIPTIONEND###### ====================================================================cdl_package CYGPKG_HAL_I386_PCMB {display "i386 PC Motherboard Support"parent CYGPKG_HAL_I386define_header hal_i386_pcmb.hinclude_dir cyg/haldescription "The i386 PC Motherboard HAL package provides thesupport needed to run eCos binaries on an i386 PCusing a standard motherboard. This package providessupport for the standard PC devices: timers, interruptcontroller, serial ports, ASCII display, keyboard, PCIbus etc. that are found on all PC compatible platforms.It does not provide support for devices that may also befound on modern motherboards, such as ethernet, sound andvideo devices. These are supported by drivers elsewhere."compile pcmb_misc.c pcmb_serial.cimplements CYGINT_HAL_I386_MEM_REAL_REGION_TOPimplements CYGINT_HAL_PLF_IF_IDE# Real-time clock/counter specificscdl_component CYGNUM_HAL_RTC_CONSTANTS {display "Real-time clock constants."description "The RTC period is based on the clock inputto the 8254, which is 1193180 Hz.CYGNUM_HAL_RTC_PERIOD is set for 100 ticksper second."flavor nonecdl_option CYGNUM_HAL_RTC_NUMERATOR {display "Real-time clock numerator"flavor datacalculated 1000000000}cdl_option CYGNUM_HAL_RTC_DENOMINATOR {display "Real-time clock denominator"flavor datacalculated 100}cdl_option CYGNUM_HAL_RTC_PERIOD {display "Real-time clock period"flavor datacalculated 11932}}cdl_component CYGPKG_HAL_I386_PCMB_MEMSIZE {display "How to discover the size of available RAM."flavor datalegal_values {"BIOS" "HARDCODE"}default_value {"BIOS"}description "It is possible for the HAL to discover thesize of RAM In several ways. Currently thiscan be done by querying the BIOS or byhardcoding the values into the executable."cdl_option CYGNUM_HAL_I386_PCMB_MEMSIZE_BASE {display "Amount of Base RAM available."flavor datadefault_value 0x000F0000active_if { CYGPKG_HAL_I386_PCMB_MEMSIZE == "HARDCODE" }}cdl_option CYGNUM_HAL_I386_PCMB_MEMSIZE_EXTENDED {display "Amount of Extended RAM available."flavor datadefault_value 0x00100000active_if { CYGPKG_HAL_I386_PCMB_MEMSIZE == "HARDCODE" }}}cdl_option CYGSEM_HAL_I386_PC_LARGE_PCI_SPACE {display "Search entire PCI space"flavor booldefault_value 0description "This option enables searching the entire PCI address space, includingup to 256 busses, etc. Probably only useful when there are bridges orother PCI expanding devices (such as a board with it's own PCI bus)in the system. If disabled, the system will revert to the defaultPCI space size (typically 8 busses)."}cdl_option CYGNUM_HAL_I386_PC_STARTUP_VIDEO_MODE {display "Switch the display to an alternative video mode"flavor booldatadefault_value 0requires { !CYGSEM_HAL_I386_PC_DIAG_SCREEN }active_if CYGPKG_REDBOOTdescription "This option can be used when building RedBoot to switchthe display to a suitable mode, typically before runningan eCos graphical application. The mode switch involvescalling the PC Video BIOS, so needs to happen while theprocessor is still running in real mode. Some informationabout the video BIOS, the current mode, and the availablemodes will be written to video memory so that the eCosapplication knows what happened.Different graphics cards use different numbers for thevarious modes, so there is no simple way of knowing whichmode should be specified to achieve the desired resolution.Instead RedBoot can be built with a suitable default, forexample 0x0100, and then a simple eCos application can bebuilt using an appropriate eCos configuration andrun to find out about all the available mode. RedBoot canthen be reconfigured and rebuilt to use a suitable mode.The PC motherboard support package comes with a simpleeCos program gfxmode.c which can be used for this."}cdl_component CYGPKG_HAL_I386_PCMB_SMP_SUPPORT {active_if { CYGPKG_HAL_SMP_SUPPORT }calculated { CYGPKG_HAL_SMP_SUPPORT }compile pcmb_smp.cdefine_proc {puts $::cdl_header "#undef HAL_PLATFORM_EXTRA"puts $::cdl_header "#define HAL_PLATFORM_EXTRA \"\[SMP\]\""puts $::cdl_header ""}}cdl_interface CYGINT_HAL_I386_PCMB_SCREEN_SUPPORT {display "Enable PC screen support"compile pcmb_screen.cdescription "This option enables support for the PC screen andkeyboard. These are combined into a virtual serialdevice that may be used for diagnostic output.Note that there is little point in trying to use itas a debug channel."}}
