From: "Trenton D. Adams" <tadams@theone.dnsalias.com>
To: <bartv@redhat.com>
Cc: <ecos-discuss@sourceware.cygnus.com>
Subject: RE: [ECOS] ethernet driver package idea
Date: Fri, 24 Aug 2001 08:47:00 -0000 [thread overview]
Message-ID: <002101c12cb4$0568e360$090110ac@TRENT> (raw)
In-Reply-To: <200108241541.f7OFfuI06348@sheesh.cambridge.redhat.com>
[-- Attachment #1: Type: text/plain, Size: 3256 bytes --]
We are going to have two interfaces on our board. The cs8900 and the
Wavelan PC card. So, this option is helpful because I can change them
to any device I want without going and editing the CDL and source.
The new CDL is attached if you want to incorporate it.
ETH_DRV_SC(edb7xxx_sc,
&_cs8900_priv_data, // Driver specific data
CYGDAT_ETHDRV_NAME, // Name for this interface
cs8900_start,
cs8900_stop,
cs8900_control,
cs8900_can_send,
cs8900_send,
cs8900_recv,
cs8900_deliver, // "pseudoDSR" called from fast net
thread
cs8900_int, // poll function, encapsulates ISR and
DSR
cs8900_int_vector);
-----Original Message-----
From: ecos-discuss-owner@sources.redhat.com
[ mailto:ecos-discuss-owner@sources.redhat.com ] On Behalf Of Bart Veer
Sent: Friday, August 24, 2001 9:42 AM
To: tadams@theone.dnsalias.com
Cc: ecos-discuss@sourceware.cygnus.com
Subject: Re: [ECOS] ethernet driver package idea
>>>>> "Trenton" == Trenton D Adams <tadams@theone.dnsalias.com> writes:
Trenton> But this is only done on the USB interface then?
When an ethernet driver is likely to be the only one present on a
given target then it can just default to eth0 - in most circumstances
that will work just fine. For example, if the processor has a single
on-chip ethernet device then usually that will be the only ethernet
device in the target system.
The USB ethernet device is different, in that it has no way of
guessing whether or not another ethernet device is present. Hence it
has more complicated CDL which makes sure that the right thing
happens: if it provides the only ethernet interface in the system then
it will use eth0; if there is a real ethernet device then that can
stay as eth0 and the USB-ethernet will become eth1.
For something like a driver for a PCMCIA plugin card, much the same
applies. That driver has no way of knowing whether or not another
ethernet device is present on the target hardware, so it should adapt.
Trenton> Doing it the way I did it wouldn't require an update of
Trenton> the config tool though! Also, do you have the new tool
Trenton> ready for download? I personally don't have the time at
Trenton> the moment to install wxWindows, and then recompile the
Trenton> tool. If anything goes wrong, it's wasted my employer's
Trenton> money, and I don't want to do that.
Trenton> Besides, yours seems to work with the Windows GUI config
Trenton> tool 2.04. I can't be sure because I don't have two
Trenton> ethernet interfaces to check it with. Is the conflict
Trenton> resolution thing the only problem with it?
I do not know offhand whether 2.04 includes the required libcdl
changes, that is why I included the libcdl ChangeLog entry. If 2.04
was built before 2001-07-10 then it cannot have the required changes.
If it was built after 2001-07-10 then it almost certainly does have
the required changes. Take a look at Help->About to find out when the
configtool was built. The libcdl changes were specifically to cope
with targets that already have an ethernet interface and you are now
adding a second one such as USB-ethernet.
Bart
[-- Attachment #2: edb7xxx_eth_drivers.cdl --]
[-- Type: text/plain, Size: 4965 bytes --]
# ====================================================================
#
# edb7xxx_eth_drivers.cdl
#
# Ethernet drivers - platform dependent support for Cirrus Logic
# EDB7xxx family of development boards
#
# ====================================================================
#####COPYRIGHTBEGIN####
#
# -------------------------------------------
# The contents of this file are subject to the Red Hat eCos Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://www.redhat.com/
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
# License for the specific language governing rights and limitations under
# the License.
#
# The Original Code is eCos - Embedded Configurable Operating System,
# released September 30, 1998.
#
# The Initial Developer of the Original Code is Red Hat.
# Portions created by Red Hat are
# Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
# All Rights Reserved.
# -------------------------------------------
#
#####COPYRIGHTEND####
# ====================================================================
######DESCRIPTIONBEGIN####
#
# Author(s): gthomas
# Original data: gthomas
# Contributors:
# Date: 2000-01-25
#
#####DESCRIPTIONEND####
#
# ====================================================================
cdl_package CYGPKG_DEVS_ETH_ARM_EDB7XXX {
display "Cirrus Logic ethernet driver"
parent CYGPKG_IO_ETH_DRIVERS
active_if CYGPKG_IO_ETH_DRIVERS
active_if CYGPKG_HAL_ARM_EDB7XXX
implements CYGHWR_NET_DRIVERS
include_dir .
include_files ; # none _exported_ whatsoever
description "Ethernet driver for Cirrus Logic EDB7xxx boards."
compile -library=libextras.a if_edb7xxx.c
cdl_component CYGSEM_ARM_EDB7XXX_SET_ESA {
display "Set the ethernet station address"
flavor bool
default_value 0
description "Enabling this option will allow the ethernet
station address to be forced to the value set by the
configuration. This may be required if the hardware does
not include a serial EEPROM for the ESA."
cdl_option CYGDAT_ARM_EDB7XXX_ESA {
display "The ethernet station address"
flavor data
default_value {"{0x08, 0x88, 0x12, 0x34, 0x56, 0x78}"}
description "The ethernet station address"
}
}
cdl_option CYGDAT_ETHDRV_NAME {
display "Name to use for this network device"
flavor data
default_value { (1 == CYGHWR_NET_DRIVERS) ? "\"eth0\"" : "\"eth1\"" }
description "
The name of this network device for control purposes.
"
}
cdl_option CYGPKG_DEVS_ETH_ARM_EDB7XXX_NET_DRIVER_ETH0 {
display "Use 'eth0'"
flavor bool
implements CYGHWR_NET_DRIVER_ETH0
calculated { "\"eth0\"" == CYGDAT_ETHDRV_NAME }
no_define
description "Select this option to use the ethernet driver as eth0"
}
cdl_option CYGPKG_DEVS_ETH_ARM_EDB7XXX_NET_DRIVER_ETH1 {
display "Use 'eth1'"
flavor bool
implements CYGHWR_NET_DRIVER_ETH1
calculated { "\"eth1\"" == CYGDAT_ETHDRV_NAME }
no_define
description "Select this option to use the ethernet driver as eth1"
}
cdl_component CYGPKG_DEVS_ETH_ARM_EDB7XXX_OPTIONS {
display "Cirrus Logic ethernet driver build options"
flavor none
no_define
cdl_option CYGPKG_DEVS_ETH_ARM_EDB7XXX_CFLAGS_ADD {
display "Additional compiler flags"
flavor data
no_define
default_value { "-D_KERNEL -D__ECOS" }
description "
This option modifies the set of compiler flags for
building the Cirrus Logic ethernet driver package.
These flags are used in addition
to the set of global flags."
}
}
}
next prev parent reply other threads:[~2001-08-24 8:47 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-08-23 11:41 Trenton D. Adams
2001-08-23 12:24 ` Trenton D. Adams
2001-08-23 13:30 ` [ECOS] CS8900 ethernet driver PATCH Trenton D. Adams
2001-08-24 4:22 ` [ECOS] ethernet driver package idea Bart Veer
2001-08-24 7:59 ` Trenton D. Adams
2001-08-24 8:42 ` Bart Veer
2001-08-24 8:47 ` Trenton D. Adams [this message]
2001-08-29 10:18 ` Trenton D. Adams
2001-09-03 11:01 ` Bart Veer
2001-09-06 12:20 ` Jonathan Larmour
2001-09-11 10:58 ` Hugo Tyson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='002101c12cb4$0568e360$090110ac@TRENT' \
--to=tadams@theone.dnsalias.com \
--cc=bartv@redhat.com \
--cc=ecos-discuss@sourceware.cygnus.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).