diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2007-03-26 19:36:50 -0400 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2007-04-29 18:00:30 -0400 |
commit | 70093cfde8af52b0b9030d90f9004cbde38f2ff8 (patch) | |
tree | f9230ca354e78b129898298095a6ee887c40a16d /drivers/ieee1394/Kconfig | |
parent | e00f04a70fa387b3accc81b5c346200f836e2a52 (diff) |
ieee1394: eth1394: don't autoload by hotplug when ohci1394 starts
Until now, ieee1394 put an IP-over-1394 capability entry into each new
host's config ROM. As soon as the controller was initialized --- i.e.
right after modprobe ohci1394 --- this entry triggered a hotplug event
which typically caused auto-loading of eth1394.
This irritated or annoyed many users and distributors. Of course they
could blacklist eth1394, but then ieee1394 wrongly advertized IP-over-
1394 capability to the FireWire bus.
Therefore
- remove the offending kernel config option
IEEE1394_CONFIG_ROM_IP1394,
- let eth1394 add the ROM entry by itself, i.e. only after eth1394 was
loaded.
This fixes http://bugzilla.kernel.org/show_bug.cgi?id=7793 .
To emulate the behaviour of older kernels, simply add the following to
to /etc/modprobe.conf:
install ohci1394 /sbin/modprobe eth1394; \
/sbin/modprobe --ignore-install ohci1394
Note, autoloading of eth1394 when an _external_ IP-over-1394 capable
device is discovered is _not_ affected by this patch.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/ieee1394/Kconfig')
-rw-r--r-- | drivers/ieee1394/Kconfig | 29 |
1 files changed, 9 insertions, 20 deletions
diff --git a/drivers/ieee1394/Kconfig b/drivers/ieee1394/Kconfig index f8ff6b866e6e..5c0b522ae077 100644 --- a/drivers/ieee1394/Kconfig +++ b/drivers/ieee1394/Kconfig | |||
@@ -34,23 +34,6 @@ config IEEE1394_VERBOSEDEBUG | |||
34 | Say Y if you really want or need the debugging output, everyone | 34 | Say Y if you really want or need the debugging output, everyone |
35 | else says N. | 35 | else says N. |
36 | 36 | ||
37 | config IEEE1394_EXTRA_CONFIG_ROMS | ||
38 | bool "Build in extra config rom entries for certain functionality" | ||
39 | depends on IEEE1394 | ||
40 | help | ||
41 | Some IEEE1394 functionality depends on extra config rom entries | ||
42 | being available in the host adapters CSR. These options will | ||
43 | allow you to choose which ones. | ||
44 | |||
45 | config IEEE1394_CONFIG_ROM_IP1394 | ||
46 | bool "IP-1394 Entry" | ||
47 | depends on IEEE1394_EXTRA_CONFIG_ROMS && IEEE1394 | ||
48 | help | ||
49 | Adds an entry for using IP-over-1394. If you want to use your | ||
50 | IEEE1394 bus as a network for IP systems (including interacting | ||
51 | with MacOSX and WinXP IP-over-1394), enable this option and the | ||
52 | eth1394 option below. | ||
53 | |||
54 | comment "Device Drivers" | 37 | comment "Device Drivers" |
55 | depends on IEEE1394 | 38 | depends on IEEE1394 |
56 | 39 | ||
@@ -120,11 +103,15 @@ config IEEE1394_SBP2_PHYS_DMA | |||
120 | This option is buggy and currently broken on some architectures. | 103 | This option is buggy and currently broken on some architectures. |
121 | If unsure, say N. | 104 | If unsure, say N. |
122 | 105 | ||
106 | config IEEE1394_ETH1394_ROM_ENTRY | ||
107 | depends on IEEE1394 | ||
108 | bool | ||
109 | default n | ||
110 | |||
123 | config IEEE1394_ETH1394 | 111 | config IEEE1394_ETH1394 |
124 | tristate "Ethernet over 1394" | 112 | tristate "IP over 1394" |
125 | depends on IEEE1394 && EXPERIMENTAL && INET | 113 | depends on IEEE1394 && EXPERIMENTAL && INET |
126 | select IEEE1394_CONFIG_ROM_IP1394 | 114 | select IEEE1394_ETH1394_ROM_ENTRY |
127 | select IEEE1394_EXTRA_CONFIG_ROMS | ||
128 | help | 115 | help |
129 | This driver implements a functional majority of RFC 2734: IPv4 over | 116 | This driver implements a functional majority of RFC 2734: IPv4 over |
130 | 1394. It will provide IP connectivity with implementations of RFC | 117 | 1394. It will provide IP connectivity with implementations of RFC |
@@ -133,6 +120,8 @@ config IEEE1394_ETH1394 | |||
133 | This driver is still considered experimental. It does not yet support | 120 | This driver is still considered experimental. It does not yet support |
134 | MCAP, therefore multicast support is significantly limited. | 121 | MCAP, therefore multicast support is significantly limited. |
135 | 122 | ||
123 | The module is called eth1394 although it does not emulate Ethernet. | ||
124 | |||
136 | config IEEE1394_DV1394 | 125 | config IEEE1394_DV1394 |
137 | tristate "OHCI-DV I/O support (deprecated)" | 126 | tristate "OHCI-DV I/O support (deprecated)" |
138 | depends on IEEE1394 && IEEE1394_OHCI1394 | 127 | depends on IEEE1394 && IEEE1394_OHCI1394 |