[prev in list] [next in list] [prev in thread] [next in thread] 

List:       suse-linux-e
Subject:    I need the SPM for k_deflt-2.4.10-12, other SuSE 7.3 details ...
From:       Bryan-TheBS-Smith <b.j.smith () ieee ! org>
Date:       2001-11-30 17:41:04
[Download RAW message or body]

[ NOTE:  If you don't have the time to read all this, please jump to #4
below. ]

1.  INTRO ...

If you didn't read some of my responses to a few recent posts, I'm new
to this list and fairly new to SuSE in general (have followed it for
years, installed it a few times, but never used it heavily).  I have
been a heavy Linux desktop user for over 3 years, prefering RedHat at
home.  Here at work, I largely work with Debian as that is what the
company uses -- which is commonplace when your company's focus is Linux
software development.

With that said, I'm a software engineer here with AbsoluteValue Systems,
Inc. in Melbourne, FL USA.  I actually live in Orlando myself (a good
1-1.25 hour commute each day).  AVS produces Linux drivers for the
Intersil and compatible Wireless LAN PCMCIA/CardBus, PCI/PLX and, most
recently, USB network adapters.  We are also looking to expand the
number of MACs (media access controller -- probably the "defining"
component of any 802 device) we support from different vendors in the
future, to further Linux's support for such devices.


2.  WHY I'M HERE, AND THE INFO I NEED

In an effort to make Linux-WLAN more friendly for the non-guru, I'm
currently producing binary RPMs of our drivers for different distros. 
You'll currently find RPMs for RedHat 7.1, 7.2 (incl. SGI XFS 1.0.2)
Mandrake 8.1 on our site.  My next goal is, of course, SuSE, and I would
at least like to get 7.3 RPMs out ASAP.

When building Linux-WLAN-NG (nextgen, Intersil Prism 2.x support), I
need the source trees for both the kernel and PCMCIA card services. 
Under RedHat and Mandrake, this is as simple as building the kernel (or
just configuring it and running make dep) with the respective .config
file that they used to build their .i386 kernel.  And then building
pcmcia-cs from source against that kernel.

So just installing the kernel-source RPM, using the correct .config file
under ./configs in the kernel path (/usr/src/linux), and then rebuilding
the pcmcia-cs RPM from Source RPM (SRPM/.src.rpm) using rpm --rebuild
leaves a nice pcmcia-cs source tree under ./BUILD in the RPM build path
(e.g., /usr/src/redhat in RedHat, /usr/src/RPM in Mandrake).  In
addition also need to identify if the kernel uses kernel PCMCIA or not
in the case of kernel 2.4 (i.e. if PCMCIA is build as a module or
included -- otherwise, pcmcia-cs is used) -- which is easily
identifyable in the .config file.


3.  SUSE DIFFICULTIES

Unfortunately, my familarity, or lackthereof, with SuSE has me
confused.  First off, in the case of 7.3, even though the kernel source
is installed, and there is a default .config file, I am not certain it
is the same is the default running 2.4.10-12.  The kernel source RPM
(SPM) is kernel-source-2.4.10.SuSE-8, yet the running kernel is
k_deflt-2.4.10-12.  A quick query of the latter shows that the SPM for
the latter is not the same as the former.  And I could not find a
k_deflt*.SPM anywhere in the 7.3 CDs nor in the tree on SuSE's site.

Secondly, when trying to building against the default kernel source and
.config file installed anyway, I tried building against PCMCIA from SPM,
pcmcia.spm.  Version 3.1.28 was reported by both the running version and
in the source code in the SPM -- I thought it was going to be cake. 
Unfortunately, building resulted in an error I have never seen, "card
services versions do not match" (or something similar) when trying to
load the drivers I just compiled.  That must mean I either compiled
against kernel PCMCIA when I should have (the default kernel source's
.config has PCMCIA as a module -- and I believe its version 3.1.22**),
and/or the pcmcia.spm is not the same as used/installed for PCMCIA in
7.3.

[ **SIDE NOTE:  In the case of RedHat 7.1/7.2 with kernel 2.4.x, they
use kernel PCMCIA, which is reported as 3.1.22, with usermode pcmcia-cs
3.1.24 (RedHat 7.1) and 3.1.27 (RedHat 7.2) with no problems.  I do
believe they patch the heck out of it though -- which is something I
both hate and love RedHat for, long story. ]

Again, I'm sure my unfamilarity with SuSE's approach to the kernel is
getting to me, and hopefully I'll discover what it is.

Although I *DID* have two other "troubling" issues with SuSE's kernel
approach that has been even more confused.  They are:

A.  The kernel Makefile has sections that append -4GB, -64GB, -SMP to
the kernel label based on memory and CPU configurations.

Compared to the stock kernel, this is non-standard.  It also requires us
to modify our ./Configure script and Makefiles to accomodate it, as
probably do other drivers.  Why?  Because many just look at the top of
the Makefile for the version.patchlevel.sublevel.extraversions
labelling.  Now SuSE adds additonal tags that aren't in extraversions. 
This means that the Makefile and the generated .kversion file differ in
the label.  This means that if I try to add "-4GB" to extraversions, the
resulting .kversion file will hve "-4GB-4GB" appended.  Finding the
right "setting" to keep module version issues from happening is a pain
in the @$$ -- although I would be understanding if I could understand
why SuSE has done this (unlike anyone else).

B.  Another reason why I think SuSE uses kernel PCMCIA, at least in 7.3,
is because the kernel puts all non-kernel pcmcia-cs drivers in
./pcmcia-external under /lib/modules/`uname -r`, instead of just
./pcmcia.

While I kinda understand why SuSE would do this, to separate kernel
PCMCIA modules from pcmcia-cs modules.  But it requires me to accomodate
it with my scripts, Makefile and/or SPECS.  Is there a reason for this,
or it is SuSE-specific?

Understand I'm not saying "SuSE is doing it wrong," just wondering why
and how I can best accomodate SuSE.  Not only in creating SPEC files,
but the Linux-WLAN's ./Configure scripts, Makefiles, etc...

4.  MORE SPECIFIC QUESTIONS

C.  Where _exactly_ is the k_deflt.SPM (source) for SuSE 7.3?

Again, I fear the kernel-source.RPM does not give me the same source
tree and/or .config file used.

D.  Does the default 2.4.10-12 use kernel PCMCIA (I'm assuming yes)?

I assume this because ./pcmcia-external exists in /lib/modules/`uname
-r`, and the default .config in kernel-source.RPM defines it as a
module.

E.  Is the pcmcia.rpm and pcmcia.spm versions both 3.1.28 and the same
(I'm assuming yes)?

I think my problem may be more related to kernel PCMCIA and my improper
reference/use when compiling, although I've never see our driver flat
out say "card services versions" do not match.


-- Bryan "TheBS" Smith
   AbsoluteValue Systems, Inc.

P.S.  Thanx for your time in advance.  I actually like SuSE 7.3, and
will be installing it for several people at our local "InstallFest"
tomorrow.  I might be a RedHat bigot for my own systems -- but that is
just because I'm familar with all its idiosyncrasies (did I even
spell/use that word correctly?  You know us Americans ... English is a
2nd language to us, with _nothing_ as the first! ;-).

-- 
Bryan "TheBS" Smith    mailto:b.j.smith@ieee.org   chat:thebs413
Engineer  AbsoluteValue Systems, Inc.  http://www.linux-wlan.org
President     SmithConcepts, Inc.   http://www.SmithConcepts.com
----------------------------------------------------------------
"The [US] Constitution guarantees you Free, not Fair.  'Fair' is
a socialist concept." -- Shawn McMahon

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic