ALT Linux kernel packages development
 help / color / mirror / Atom feed
* [d-kernel] Re: ipw2x00
  @ 2005-07-14 10:25   ` Alexey Shabalin
  2005-07-14 13:06     ` Sergey Vlasov
  0 siblings, 1 reply; 7+ messages in thread
From: Alexey Shabalin @ 2005-07-14 10:25 UTC (permalink / raw)
  To: devel-kernel, ALT Devel discussion list; +Cc: Sergey Vlasov, Anton Farygin

Я отправил новые модули ipw2100, ipw2200, ieee80211 в cvs. 
kernel-source-* залиты в инкоминг. Прошу посмотреть не замыленым
глазом - не напутал ли я чего в зависимостях.
При сборке идет некоторвая ругань, но собирается и работает. Проверял
работу ipw2100.

Просьба к Alexei Takaseev  - оторвать патч у wpa_supplicant, относящийся к ipw.



-- 
Alexey Shabalin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [d-kernel] Re: ipw2x00
  2005-07-14 10:25   ` [d-kernel] Re: ipw2x00 Alexey Shabalin
@ 2005-07-14 13:06     ` Sergey Vlasov
  2005-07-14 13:36       ` Konstantin A. Lepikhov
                         ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Sergey Vlasov @ 2005-07-14 13:06 UTC (permalink / raw)
  To: shaba; +Cc: ALT Devel discussion list, 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] 7+ messages in thread

* [d-kernel] Re: ipw2x00
  2005-07-14 13:06     ` Sergey Vlasov
@ 2005-07-14 13:36       ` Konstantin A. Lepikhov
  2005-07-14 13:48         ` Alexey Shabalin
  2005-07-14 13:45       ` Alexey Shabalin
  2005-07-14 15:33       ` Sergey Vlasov
  2 siblings, 1 reply; 7+ messages in thread
From: Konstantin A. Lepikhov @ 2005-07-14 13:36 UTC (permalink / raw)
  To: ALT Linux kernel packages development

[-- Attachment #1: Type: text/plain, Size: 361 bytes --]

Hi Sergey!

Thursday 14, at 05:06:11 PM you wrote:

...

т.е. пока лучше повременить со сборкой этих модулей?

-- 
WBR, Konstantin	      chat with ==>ICQ: 109916175
     Lepikhov,	      speak  to ==>JID: lakostis@jabber.org
aka L.A. Kostis       write  to ==>mailto:lakostis@pisem.net.nospam

...The information is like the bank... 			  (c) EC8OR

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [d-kernel] Re: ipw2x00
  2005-07-14 13:06     ` Sergey Vlasov
  2005-07-14 13:36       ` Konstantin A. Lepikhov
@ 2005-07-14 13:45       ` Alexey Shabalin
  2005-07-14 13:55         ` Sergey Vlasov
  2005-07-14 15:33       ` Sergey Vlasov
  2 siblings, 1 reply; 7+ 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] 7+ messages in thread

* Re: [d-kernel] Re: ipw2x00
  2005-07-14 13:36       ` Konstantin A. Lepikhov
@ 2005-07-14 13:48         ` Alexey Shabalin
  0 siblings, 0 replies; 7+ messages in thread
From: Alexey Shabalin @ 2005-07-14 13:48 UTC (permalink / raw)
  To: ALT Linux kernel packages development

> т.е. пока лучше повременить со сборкой этих модулей?

несколько дней лучше повременить.

-- 
Alexey Shabalin

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [d-kernel] Re: ipw2x00
  2005-07-14 13:45       ` Alexey Shabalin
@ 2005-07-14 13:55         ` Sergey Vlasov
  0 siblings, 0 replies; 7+ messages in thread
From: Sergey Vlasov @ 2005-07-14 13:55 UTC (permalink / raw)
  To: devel-kernel

[-- Attachment #1: Type: text/plain, Size: 893 bytes --]

On Thu, Jul 14, 2005 at 05:45:33PM +0400, Alexey Shabalin wrote:
> > Как-то нужно передать информацию для modpost; возможно, придётся положить
> > собранные файлы модулей ещё и в kernel-headers-ieee80211-%flavour, а потом
> > как-то их подсовывать при сборке зависимых модулей.  По этому поводу я ещё
> > пока ничего не сделал; остальные изменения ниже (пока не коммитил).
> 
> закоммитишь?

Ага (правда, я уже дальше всё разломал ;).

> Может тогда вообще  не создавать пакет kernel-headers-ieee80211, если
> все равно  нужны собранные модули. Хотя все равно криво получается.

Создавать его всё равно придётся, если пакет с модулями отдельный.

> Я сначала думал сделать   чтоб kernel-headers-ieee80211 получался из
> kernel-source-ieee80211 и был общий для всех ядер (так вроде в alsa
> сделано).

В alsa этот kernel-headers-alsa вообще непонятно для чего собирается...

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [d-kernel] Re: ipw2x00
  2005-07-14 13:06     ` Sergey Vlasov
  2005-07-14 13:36       ` Konstantin A. Lepikhov
  2005-07-14 13:45       ` Alexey Shabalin
@ 2005-07-14 15:33       ` Sergey Vlasov
  2 siblings, 0 replies; 7+ 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] 7+ messages in thread

end of thread, other threads:[~2005-07-14 15:33 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-14 10:25   ` [d-kernel] Re: ipw2x00 Alexey Shabalin
2005-07-14 13:06     ` Sergey Vlasov
2005-07-14 13:36       ` Konstantin A. Lepikhov
2005-07-14 13:48         ` Alexey Shabalin
2005-07-14 13:45       ` Alexey Shabalin
2005-07-14 13:55         ` Sergey Vlasov
2005-07-14 15:33       ` Sergey Vlasov

ALT Linux kernel packages development

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/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-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \
		devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com
	public-inbox-index devel-kernel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git