* [devel] ipw2x00
@ 2005-07-13 11:50 Alexey Shabalin
2005-07-13 12:25 ` [devel] ipw2x00 Sergey Vlasov
0 siblings, 1 reply; 9+ messages in thread
From: Alexey Shabalin @ 2005-07-13 11:50 UTC (permalink / raw)
To: ALT Devel discussion list, Sergey Vlasov
Смотрю новые драйверы для ipw2x00.
есть следующий вопрос.
модули ieee80211 вынесены в отдельный пакет, есть хедеры ieee80211.h
и ieee80211_crypt.h, которые нужны для сборки ipw2x00.
_НО_ ieee80211.h есть в kernel-headers-modules (/lib/modules/`uname
-r`/build/drivers/net/wireless). конечно они разные.
куда мне положить новые хедеры - куда-нибудь просто в net/, в ipw-net/
или можно их в
kernel-headers-modules принять.
Как будет правильно?
--
Alexey Shabalin
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: ipw2x00
2005-07-13 11:50 [devel] ipw2x00 Alexey Shabalin
@ 2005-07-13 12:25 ` Sergey Vlasov
2005-07-14 10:25 ` Alexey Shabalin
0 siblings, 1 reply; 9+ messages in thread
From: Sergey Vlasov @ 2005-07-13 12:25 UTC (permalink / raw)
To: shaba; +Cc: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1453 bytes --]
On Wed, Jul 13, 2005 at 03:50:26PM +0400, Alexey Shabalin wrote:
> Смотрю новые драйверы для ipw2x00.
> есть следующий вопрос.
> модули ieee80211 вынесены в отдельный пакет, есть хедеры ieee80211.h
> и ieee80211_crypt.h, которые нужны для сборки ipw2x00.
> _НО_ ieee80211.h есть в kernel-headers-modules (/lib/modules/`uname
> -r`/build/drivers/net/wireless). конечно они разные.
Так это совсем разные файлы - ieee802_11.h и ieee80211.h. Начало там,
правда, похожее (опять-таки с разницей в подчёркивании).
ieee80211.h предполагалось держать в include/net/ (и в 2.6.13-rc он там
уже есть - вот с ним-то как раз и конфликтуют заголовки из этого
ieee80211; в 2.6.12 его там ещё нет). drivers/net/wireless/ieee802_11.h
был нужен каким-то другим драйверам.
> куда мне положить новые хедеры - куда-нибудь просто в net/, в ipw-net/
> или можно их в
> kernel-headers-modules принять.
> Как будет правильно?
В принципе у нас есть пример зависимостей между kernel-modules-* -
kernel-modules-lirc-%flavour использует при компиляции заголовки из
kernel-modules-v4l-%flavour (точнее, там собирается пакет
kernel-headers-v4l-%flavour). Там, кстати, ещё используется фокус с
вытаскиванием зависимостей из файла (чтобы lirc тянул за собой именно ту
сборку v4l, с заголовками от которой он собирался). Но всё это под 2.4 -
с 2.6 будут дополнительные трудности с .tmp_versions/, с которыми пока не
совсем понятно, что делать.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: ipw2x00
2005-07-13 12:25 ` [devel] ipw2x00 Sergey Vlasov
@ 2005-07-14 10:25 ` Alexey Shabalin
2005-07-14 12:23 ` Alexander Bokovoy
2005-07-14 13:06 ` Sergey Vlasov
0 siblings, 2 replies; 9+ messages in thread
From: Alexey Shabalin @ 2005-07-14 10:25 UTC (permalink / raw)
To: devel-kernel, ALT Devel discussion list; +Cc: Sergey Vlasov, taf, Anton Farygin
Я отправил новые модули ipw2100, ipw2200, ieee80211 в cvs.
kernel-source-* залиты в инкоминг. Прошу посмотреть не замыленым
глазом - не напутал ли я чего в зависимостях.
При сборке идет некоторвая ругань, но собирается и работает. Проверял
работу ipw2100.
Просьба к Alexei Takaseev - оторвать патч у wpa_supplicant, относящийся к ipw.
--
Alexey Shabalin
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Re: ipw2x00
2005-07-14 10:25 ` Alexey Shabalin
@ 2005-07-14 12:23 ` Alexander Bokovoy
2005-07-14 13:37 ` Alexey Shabalin
2005-07-14 13:06 ` Sergey Vlasov
1 sibling, 1 reply; 9+ messages in thread
From: Alexander Bokovoy @ 2005-07-14 12:23 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 652 bytes --]
On Thu, Jul 14, 2005 at 02:25:43PM +0400, Alexey Shabalin wrote:
> Я отправил новые модули ipw2100, ipw2200, ieee80211 в cvs.
> kernel-source-* залиты в инкоминг. Прошу посмотреть не замыленым
> глазом - не напутал ли я чего в зависимостях.
> При сборке идет некоторвая ругань, но собирается и работает. Проверял
> работу ipw2100.
>
> Просьба к Alexei Takaseev - оторвать патч у wpa_supplicant, относящийся к ipw.
Он теперь не нужен?
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: ipw2x00
2005-07-14 10:25 ` Alexey Shabalin
2005-07-14 12:23 ` Alexander Bokovoy
@ 2005-07-14 13:06 ` Sergey Vlasov
2005-07-14 13:45 ` Alexey Shabalin
2005-07-14 15:33 ` [devel] Re: [d-kernel] " Sergey Vlasov
1 sibling, 2 replies; 9+ messages in thread
From: Sergey Vlasov @ 2005-07-14 13:06 UTC (permalink / raw)
To: shaba; +Cc: ALT Devel discussion list, taf, Anton Farygin, devel-kernel
[-- Attachment #1: Type: text/plain, Size: 6490 bytes --]
On Thu, Jul 14, 2005 at 02:25:43PM +0400, Alexey Shabalin wrote:
> Я отправил новые модули ipw2100, ipw2200, ieee80211 в cvs.
> kernel-source-* залиты в инкоминг. Прошу посмотреть не замыленым
> глазом - не напутал ли я чего в зависимостях.
Да, зависимости не совсем правильные:
1) Модули ipw2?00 должны требовать для сборки не просто
kernel-headers-ieee80211-%flavour, а именно версию для соответствующего
ядра - kernel-headers-ieee80211-%kversion-%flavour-%krelease, иначе
получится путаница с заголовками.
2) Для установки пакетов с модулями также нужен не просто пакет
kernel-modules-ieee80211-%flavour (собранный неизвестно для какого ядра),
а именно та версия, заголовки от которой использовались при сборке.
Аналогичную проблему с модулями v4l и lirc я решал добавлением в пакет с
заголовками файла, содержащего информацию о версии и сборке пакета с
модулями, и использованием этого файла при сборке зависимых модулей.
После любой пересборки модулей ieee80211 потребуется пересборка ipw2100 и
ipw2200.
Кроме того, в некоторых местах нужно поправить каталоги, чтобы сборка
проходила не только через hasher, а и при использовании сборочных скриптов
из kernel CVS (там макрос %_usrsrc переопределяется, чтобы файлы брались
из временного каталога, поэтому при помещении файлов в собираемый пакет
надо использовать вместо него %_prefix/src).
> При сборке идет некоторвая ругань, но собирается и работает. Проверял
> работу ipw2100.
Вполне возможно, что модули действительно работают, только при загрузке
имеем вот такую неприятность:
ipw2200: no version for "ieee80211_get_crypto_ops" found: kernel tainted.
Соответственно получается Tainted: GF, хотя все модули "нормальные" :(
Как-то нужно передать информацию для modpost; возможно, придётся положить
собранные файлы модулей ещё и в kernel-headers-ieee80211-%flavour, а потом
как-то их подсовывать при сборке зависимых модулей. По этому поводу я ещё
пока ничего не сделал; остальные изменения ниже (пока не коммитил).
Index: modules/ieee80211/kernel-modules-ieee80211.spec
===================================================================
RCS file: /cvs/kernel/kernel/modules/ieee80211/kernel-modules-ieee80211.spec,v
retrieving revision 1.1
diff -u -p -r1.1 kernel-modules-ieee80211.spec
--- modules/ieee80211/kernel-modules-ieee80211.spec 14 Jul 2005 10:11:05 -0000 1.1
+++ modules/ieee80211/kernel-modules-ieee80211.spec 14 Jul 2005 12:44:50 -0000
@@ -63,8 +63,10 @@ modules which interface with these drive
%install
%__mkdir_p %buildroot/%module_dir
%__cp -a *.ko %buildroot/%module_dir
-%__mkdir_p %buildroot/%_usrsrc/linux-%kversion-%flavour/include/net
-%__cp -a net/* %buildroot/%_usrsrc/linux-%kversion-%flavour/include/net/
+%__mkdir_p %buildroot/%_prefix/src/linux-%kversion-%flavour/include/net
+%__cp -a net/* %buildroot/%_prefix/src/linux-%kversion-%flavour/include/net/
+echo "%name = %version-%release" \
+ > %buildroot%_prefix/src/linux-%kversion-%flavour/kernel-modules-%module_name.release
%post
%post_kernel_modules %kversion-%flavour-%krelease
@@ -78,8 +80,9 @@ modules which interface with these drive
%files -n kernel-headers-%module_name-%flavour
%defattr(644,root,root,755)
-%_usrsrc/linux-%kversion-%flavour/include/net/*
+%_prefix/src/linux-%kversion-%flavour/include/net/*
+%_prefix/src/linux-%kversion-%flavour/kernel-modules-%module_name.release
%changelog
-* * Thu Jul 14 2005 Alexey Shabalin <shaba@altlinux.ru> 1.0.2-alt1.@kreleasebuild@
+* Thu Jul 14 2005 Alexey Shabalin <shaba@altlinux.ru> 1.0.2-alt1.@kreleasebuild@
- initial release
Index: modules/ipw2100/kernel-modules-ipw2100.spec
===================================================================
RCS file: /cvs/kernel/kernel/modules/ipw2100/kernel-modules-ipw2100.spec,v
retrieving revision 1.5
diff -u -p -r1.5 kernel-modules-ipw2100.spec
--- modules/ipw2100/kernel-modules-ipw2100.spec 14 Jul 2005 10:08:08 -0000 1.5
+++ modules/ipw2100/kernel-modules-ipw2100.spec 14 Jul 2005 12:44:50 -0000
@@ -25,7 +25,7 @@ BuildPreReq: kernel-build-tools
BuildRequires: kernel-headers-%flavour = %kversion-%krelease
BuildRequires: kernel-source-%module_name-%module_version
BuildRequires: kernel-headers-modules-%flavour = %kversion-%krelease
-BuildRequires: kernel-headers-ieee80211-%flavour
+BuildRequires: kernel-headers-ieee80211-%kversion-%flavour-%krelease
Provides: kernel-modules-%module_name-%kversion-%flavour-%krelease = %version-%release
Conflicts: kernel-modules-%module_name-%kversion-%flavour-%krelease < %version-%release
@@ -37,7 +37,8 @@ PreReq: kernel-image-%flavour = %kversio
ExclusiveArch: %ix86
Requires: firmware-%module_name
-Requires: kernel-modules-ieee80211-%flavour
+%define ieee80211_release_file %_usrsrc/linux-%kversion-%flavour/kernel-modules-ieee80211.release
+%([ -s "%ieee80211_release_file" ] && echo "PreReq: $(cat "%ieee80211_release_file")")
%description
This project was created by Intel to enable support for the Intel
Index: modules/ipw2200/kernel-modules-ipw2200.spec
===================================================================
RCS file: /cvs/kernel/kernel/modules/ipw2200/kernel-modules-ipw2200.spec,v
retrieving revision 1.7
diff -u -p -r1.7 kernel-modules-ipw2200.spec
--- modules/ipw2200/kernel-modules-ipw2200.spec 14 Jul 2005 10:09:01 -0000 1.7
+++ modules/ipw2200/kernel-modules-ipw2200.spec 14 Jul 2005 12:44:50 -0000
@@ -24,7 +24,7 @@ BuildPreReq: kernel-build-tools
BuildRequires: kernel-headers-%flavour = %kversion-%krelease
BuildRequires: kernel-source-%module_name-%module_version
BuildRequires: kernel-headers-modules-%flavour = %kversion-%krelease
-BuildRequires: kernel-headers-ieee80211-%flavour
+BuildRequires: kernel-headers-ieee80211-%kversion-%flavour-%krelease
Provides: kernel-modules-%module_name-%kversion-%flavour-%krelease = %version-%release
Conflicts: kernel-modules-%module_name-%kversion-%flavour-%krelease < %version-%release
@@ -36,7 +36,9 @@ PreReq: kernel-image-%flavour = %kversio
ExclusiveArch: %ix86
Requires: firmware-%module_name-2.3
-Requires: kernel-modules-ieee80211-%flavour
+
+%define ieee80211_release_file %_usrsrc/linux-%kversion-%flavour/kernel-modules-ieee80211.release
+%([ -s "%ieee80211_release_file" ] && echo "PreReq: $(cat "%ieee80211_release_file")")
%description
This project was created by Intel to enable support for the Intel
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [devel] Re: ipw2x00
2005-07-14 12:23 ` Alexander Bokovoy
@ 2005-07-14 13:37 ` Alexey Shabalin
0 siblings, 0 replies; 9+ messages in thread
From: Alexey Shabalin @ 2005-07-14 13:37 UTC (permalink / raw)
To: ALT Devel discussion list
> > Просьба к Alexei Takaseev - оторвать патч у wpa_supplicant, относящийся к ipw.
> Он теперь не нужен?
>
для новых ipw2x00 противопоказан - wpa работать не будет.
--
Alexey Shabalin
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: ipw2x00
2005-07-14 13:06 ` Sergey Vlasov
@ 2005-07-14 13:45 ` Alexey Shabalin
2005-07-14 15:33 ` [devel] Re: [d-kernel] " Sergey Vlasov
1 sibling, 0 replies; 9+ messages in thread
From: Alexey Shabalin @ 2005-07-14 13:45 UTC (permalink / raw)
To: shaba, devel-kernel, ALT Devel discussion list, Anton Farygin, taf
> Как-то нужно передать информацию для modpost; возможно, придётся положить
> собранные файлы модулей ещё и в kernel-headers-ieee80211-%flavour, а потом
> как-то их подсовывать при сборке зависимых модулей. По этому поводу я ещё
> пока ничего не сделал; остальные изменения ниже (пока не коммитил).
закоммитишь?
Может тогда вообще не создавать пакет kernel-headers-ieee80211, если
все равно нужны собранные модули. Хотя все равно криво получается.
Я сначала думал сделать чтоб kernel-headers-ieee80211 получался из
kernel-source-ieee80211 и был общий для всех ядер (так вроде в alsa
сделано).
--
Alexey Shabalin
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: [d-kernel] Re: ipw2x00
2005-07-14 13:06 ` Sergey Vlasov
2005-07-14 13:45 ` Alexey Shabalin
@ 2005-07-14 15:33 ` Sergey Vlasov
2005-07-18 10:28 ` Alexey Shabalin
1 sibling, 1 reply; 9+ messages in thread
From: Sergey Vlasov @ 2005-07-14 15:33 UTC (permalink / raw)
To: shaba, devel-kernel, ALT Devel discussion list, Anton Farygin, taf
[-- Attachment #1: Type: text/plain, Size: 3344 bytes --]
On Thu, Jul 14, 2005 at 05:06:11PM +0400, Sergey Vlasov wrote:
> Как-то нужно передать информацию для modpost; возможно, придётся положить
> собранные файлы модулей ещё и в kernel-headers-ieee80211-%flavour, а потом
> как-то их подсовывать при сборке зависимых модулей.
Именно так и пришлось сделать (причём в kernel-headers-ieee80211-%flavour
кладутся даже не *.ko, а *.o, потом при сборке модулей эти файлы
копируются в сборочный каталог, в .tmp_versions/ создаются файлы *.mod, а
потом сборочная система ядра ещё и собирает из них *.ko).
Некрасиво, но другого способа быстро решить эту проблему я пока не вижу.
Если делать совсем правильно, нужно патчить scripts/mod/modpost.c в ядре,
чтобы добавить туда поддержку генерации и использования нескольких файлов
типа имеющегося сейчас Module.symvers.
--- modules/ieee80211/kernel-modules-ieee80211.spec.modpost 2005-07-14 15:20:40 +0400
+++ modules/ieee80211/kernel-modules-ieee80211.spec 2005-07-14 18:33:02 +0400
@@ -63,6 +63,11 @@ modules which interface with these drive
%install
%__mkdir_p %buildroot/%module_dir
%__cp -a *.ko %buildroot/%module_dir
+%__mkdir_p %buildroot/%_prefix/src/linux-%kversion-%flavour/drivers/net/ieee80211
+for f in *.ko; do
+ mod="${f%.ko}"
+ %__cp -a "$mod.o" %buildroot/%_prefix/src/linux-%kversion-%flavour/drivers/net/ieee80211/
+done
%__mkdir_p %buildroot/%_prefix/src/linux-%kversion-%flavour/include/net
%__cp -a net/* %buildroot/%_prefix/src/linux-%kversion-%flavour/include/net/
echo "%name = %version-%release" \
@@ -81,6 +86,7 @@ echo "%name = %version-%release" \
%files -n kernel-headers-%module_name-%flavour
%defattr(644,root,root,755)
%_prefix/src/linux-%kversion-%flavour/include/net/*
+%_prefix/src/linux-%kversion-%flavour/drivers/net/ieee80211
%_prefix/src/linux-%kversion-%flavour/kernel-modules-%module_name.release
%changelog
--- modules/ipw2100/kernel-modules-ipw2100.spec.modpost 2005-07-14 15:26:32 +0400
+++ modules/ipw2100/kernel-modules-ipw2100.spec 2005-07-14 18:33:47 +0400
@@ -53,6 +53,16 @@ PRO/Wireless 2100 Network Connection min
%build
. %_usrsrc/linux-%kversion-%flavour/gcc_version.inc
+
+%__mkdir .tmp_versions
+%__mkdir ieee80211
+for f in %_usrsrc/linux-%kversion-%flavour/drivers/net/ieee80211/*.o; do
+ mod="${f##*/}"
+ mod="${mod%.o}"
+ echo "$(pwd)/ieee80211/$mod.ko" > .tmp_versions/"$mod".mod
+ %__cp -a "$f" ieee80211/
+done
+
%make_build -C %_usrsrc/linux-%kversion-%flavour SUBDIRS=$PWD \
LINUXSRC=%_usrsrc/linux-%kversion-%flavour/ \
IEEE80211_INC=%_usrsrc/linux-%kversion-%flavour/include
--- modules/ipw2200/kernel-modules-ipw2200.spec.modpost 2005-07-14 15:25:09 +0400
+++ modules/ipw2200/kernel-modules-ipw2200.spec 2005-07-14 18:40:23 +0400
@@ -53,6 +53,16 @@ PRO/Wireless 2200 Network Connection min
%build
. %_usrsrc/linux-%kversion-%flavour/gcc_version.inc
+
+%__mkdir .tmp_versions
+%__mkdir ieee80211
+for f in %_usrsrc/linux-%kversion-%flavour/drivers/net/ieee80211/*.o; do
+ mod="${f##*/}"
+ mod="${mod%.o}"
+ echo "$(pwd)/ieee80211/$mod.ko" > .tmp_versions/"$mod".mod
+ %__cp -a "$f" ieee80211/
+done
+
%make_build -C %_usrsrc/linux-%kversion-%flavour SUBDIRS=$PWD \
LINUXSRC=%_usrsrc/linux-%kversion-%flavour/ \
IEEE80211_INC=%_usrsrc/linux-%kversion-%flavour/include
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [devel] Re: [d-kernel] Re: ipw2x00
2005-07-14 15:33 ` [devel] Re: [d-kernel] " Sergey Vlasov
@ 2005-07-18 10:28 ` Alexey Shabalin
0 siblings, 0 replies; 9+ messages in thread
From: Alexey Shabalin @ 2005-07-18 10:28 UTC (permalink / raw)
To: ALT Devel discussion list, Sergey Vlasov
Сергей а ты закомитишь изменения, или мне по мотивам рассылки сделать?
Кстати в инкоминг сырци новой версии ieee80211 за номером 1.0.3 отправлены.
--
Alexey Shabalin
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2005-07-18 10:28 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-13 11:50 [devel] ipw2x00 Alexey Shabalin
2005-07-13 12:25 ` [devel] ipw2x00 Sergey Vlasov
2005-07-14 10:25 ` Alexey Shabalin
2005-07-14 12:23 ` Alexander Bokovoy
2005-07-14 13:37 ` Alexey Shabalin
2005-07-14 13:06 ` Sergey Vlasov
2005-07-14 13:45 ` Alexey Shabalin
2005-07-14 15:33 ` [devel] Re: [d-kernel] " Sergey Vlasov
2005-07-18 10:28 ` Alexey Shabalin
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git