* MTD Config.in items not escaped by bus availability
@ 2002-10-28 13:48 Brian J. Murrell
0 siblings, 0 replies; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-28 13:48 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1: Type: text/plain, Size: 948 bytes --]
I have noticed that the whole MTD kernel configuration subsystem
(drivers/mtd/Config.in) in the 2.4.19 kernel is not escaped by any bus
configuration items. That is, even on a kernel that I configure with
no busses (i.e. UML), I am still asked about MTD devices. Should ths
really be so? How can I have any MTD devices with no bus to connect
them to?
If this is the case, can I ask, somebody who knows better than I do,
can you please modify the Config.in for MTD and wrap the whole thing
with a test for the presence of configuration items for the various
different busses that MTD supports? Something like:
mainmenu_option next_comment
comment 'Memory Technology Devices (MTD)'
if [ "$CONFIG_PCMCIA" = "y" -o "$CONFIG_PCMCIA" = "m" -o
"$CONFIG_USB" = "y" -o "$CONFIG_USB" = "m" ]; then
tristate 'Memory Technology Device (MTD) support' CONFIG_MTD
...
fi
endmenu
Thanx,
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* RE: MTD Config.in items not escaped by bus availability
@ 2002-10-30 16:22 Hicks, Jamey
2002-10-30 17:30 ` Brian J. Murrell
[not found] ` <20021030185507.GA31547@wohnheim.fh-wedel.de>
0 siblings, 2 replies; 26+ messages in thread
From: Hicks, Jamey @ 2002-10-30 16:22 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd
> -----Original Message-----
> From: Brian J. Murrell
> [mailto:cc718ee62b87e84e665d57aa27e6bf39@interlinx.bc.ca]
> Sent: Monday, October 28, 2002 8:49 AM
> To: linux-mtd@lists.infradead.org
> Subject: MTD Config.in items not escaped by bus availability
>
>
> I have noticed that the whole MTD kernel configuration subsystem
> (drivers/mtd/Config.in) in the 2.4.19 kernel is not escaped by any bus
> configuration items. That is, even on a kernel that I configure with
> no busses (i.e. UML), I am still asked about MTD devices. Should ths
> really be so? How can I have any MTD devices with no bus to connect
> them to?
Some MTD devices connect directly to the CPU. It seems to me that if you have a CPU with a memory bus, then it is possible to have MTD devices, so drivers/mtd/Config.in needs to give you the option of selecting those devices.
The MTD configuration is all wrapped with the toplevel CONFIG_MTD option, so there is really only one question you would have to say 'No' to in order to avoid the others.
-Jamey
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-30 16:22 MTD Config.in items not escaped by bus availability Hicks, Jamey
@ 2002-10-30 17:30 ` Brian J. Murrell
[not found] ` <20021030185507.GA31547@wohnheim.fh-wedel.de>
1 sibling, 0 replies; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-30 17:30 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1: Type: text/plain, Size: 1359 bytes --]
On Wed, Oct 30, 2002 at 11:22:50AM -0500, Hicks, Jamey wrote:
>
> Some MTD devices connect directly to the CPU. It seems to me that
> if you have a CPU with a memory bus, then it is possible to have MTD
> devices, so drivers/mtd/Config.in needs to give you the option of
> selecting those devices.
Hmmmm. It would seem then that the kernel configuration system is
lacking a specification for a "memory bus". Yes/No, what kind,
whatever. But it is possible to build and run a kernel that does not
actually have a CPU or a memory bus, for example, in the case of a UML
kernel.
The UML configuration process does a good job of weeding out actual
hardware devices (in fact it's just the kernel configuration that does
the work), but it does that by nature of the configuation system
encapsulating hardware selection options (like MTD) inside bus
configuation.
> The MTD configuration is all wrapped with the toplevel CONFIG_MTD
> option, so there is really only one question you would have to say
> 'No' to in order to avoid the others.
True, but it would be nice if CONFIG_MTD were tied to some kind of
hardware (i.e. a memory bus) so that you could take a .config from a
real hardware running kernel and use it to build a UML kernel without
having to go and diddle with things like CONFIG_MTD.
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
[not found] ` <20021030185507.GA31547@wohnheim.fh-wedel.de>
@ 2002-10-30 19:38 ` Brian J. Murrell
[not found] ` <20021030201608.GA28523@wohnheim.fh-wedel.de>
0 siblings, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-30 19:38 UTC (permalink / raw)
To: linux-mtd; +Cc: joern, Jamey.Hicks
[-- Attachment #1: Type: text/plain, Size: 1399 bytes --]
[ I dunno if this will make it to the list or not as I seem to be
getting bounced from list postings, most likely in the name of spam
prevention. What the spammers have done to our Internet! ~sigh~ ]
On Wed, Oct 30, 2002 at 07:55:07PM +0100, Jörn Engel wrote:
>
> NOR flashes are basically ram sans write access. You can connect them
> to the memory bus, execute code directly from those. And I know of no
> system without a memory bus that linux is running on. ;-)
As I wrote to Jamey, and got a bounce back from the linux-mtd list,
Linux does run on a "system" without a memory bus. UML, is linux in a
user-space process. It has no access to any hardware directly. It
does a pretty good job of isolating itself from trying to build
hardware drivers, as long as the drivers are connected to "bus"es in
the kernel configuration system.
He also did point out that MTDs can be attached to memory buses, and
unless I have missed it, the linux kernel configuration system does
not recognize memory buses as a device which needs to be explicitly
configured. Perhaps it should be, such that MTDs could be dealt with
in a manner such as:
if [ "$CONFIG_MEMORY_BUS" = "y" -o
"$CONFIG_SOME_OTHER_BUS" = "y" -o
"$CONFIG_YET_ANOTHER_BUS" = "y" ]; then
<ask about CONFIG_MTD>
fi
and UML kernels and undef CONFIG_MEMORY_BUS.
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
[not found] ` <20021030201608.GA28523@wohnheim.fh-wedel.de>
@ 2002-10-30 20:49 ` Brian J. Murrell
[not found] ` <20021030214341.GC25383@wohnheim.fh-wedel.de>
0 siblings, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-30 20:49 UTC (permalink / raw)
To: linux-mtd; +Cc: joern, Jamey.Hicks
[-- Attachment #1: Type: text/plain, Size: 2344 bytes --]
On Wed, Oct 30, 2002 at 09:16:08PM +0100, Jörn Engel wrote:
>
> Usually, the list is a bit slow. My worst delay was a couple of days.
Actually, no, this is a hard (550) bounce. I have e-mailed the
postmaster but got nothing back yet.
> Correct, uml does not have a memory bus. But it does have memory and
> it does have block devices, which can both be used to create mtd
> devices from.
OK, I must be mis-understanding what an MTD device is then, not
surprisingly. Which is precicely why I came and asked here about
this. I had assumed that an MTD was the likes of a Compact Flash card
/PCMCIA memory device and the like. Some physical piece of memory
hardware device that required physical connection to the machine.
Can you elaborate on how an MTD could be used by a UML kernel? Is
this similar to using loopback devices to access files as block
devices? i.e. virtual MTD devices.
So the MTD subsystem will build and run on a UML (i.e. it has no
hardware properties such as IRQ's, DMA, etc. itself)? Surely there
must be some aspect of the MTD system which becomes dependent on
addressing specific hardware devices though?
Perhaps the test for specific hardware required to support MTD devices
needs to be finer grained than around the whole CONFIG_MTD option.
Something more like:
<ask about CONFIG_MTD>
if [ "$CONFIG_MEMORY_BUS" = "y" -o
"$CONFIG_SOME_OTHER_BUS" = "y" -o
"$CONFIG_YET_ANOTHER_BUS" = "y" ]; then
<ask about device specific MTD options>
fi
with different test for different kinds of buses specific to each type
of hardware MTD.
> You can say, it already is. But
>
> [ "$CONFIG_MEMORY_BUS" = "y" -o
> "$CONFIG_HAS_MEMORY" = "y" -o
> "$CONFIG_HAS_BLOCK_DEVICES" = "y" ]
>
> evaluates to true for all current platforms, including uml.
Are you saying this is how it is already and it is correct? How can
you attribute a memory bus to UML? Block devices, I can understand,
in that there are some UML provided block devices like UBD disks etc.
> Your turn, can you still think of a system that doesn't allow for mtd?
I dunno. I don't know much about MTD, which is why I am asking for
advice here. Are there any CONFIG_*_MTD* options in the kernel that
need to be protected by any bus options?
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* RE: MTD Config.in items not escaped by bus availability
@ 2002-10-30 22:09 Hicks, Jamey
0 siblings, 0 replies; 26+ messages in thread
From: Hicks, Jamey @ 2002-10-30 22:09 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd; +Cc: joern
> -----Original Message-----
> From: Brian J. Murrell
> [mailto:8db422baa67bd7a698f50768bba0d47e@interlinx.bc.ca]
> Sent: Wednesday, October 30, 2002 3:50 PM
> To: linux-mtd@lists.infradead.org
> Cc: joern@wohnheim.fh-wedel.de; Hicks, Jamey
> Subject: Re: MTD Config.in items not escaped by bus availability
>
> So the MTD subsystem will build and run on a UML (i.e. it has no
> hardware properties such as IRQ's, DMA, etc. itself)? Surely there
> must be some aspect of the MTD system which becomes dependent on
> addressing specific hardware devices though?
I think that MTD can be built and run on UML. Try these configuration options:
CONFIG_MTD=y
CONFIG_MTD_CHAR=m
CONFIG_MTD_BLOCK=m
You can use system memory provided by vmalloc() for a test MTD device by enabling CONFIG_MTD_MTDRAM:
CONFIG_MTDRAM=m
You can use a block device to provide a test MTD device with the blkmtd driver:
CONFIG_MTD_BLKMTD=m
Neither of these virtual MTD devices depends on IRQ's, DMA, or other hardware resources.
-Jamey
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
[not found] ` <20021030214341.GC25383@wohnheim.fh-wedel.de>
@ 2002-10-30 22:46 ` Brian J. Murrell
2002-10-31 16:53 ` Jörn Engel
0 siblings, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-30 22:46 UTC (permalink / raw)
To: linux-mtd; +Cc: Jamey.Hicks, joern
[-- Attachment #1: Type: text/plain, Size: 3031 bytes --]
On Wed, Oct 30, 2002 at 10:43:41PM +0100, Jörn Engel wrote:
>
> In simple terms, mtd is an interface to read, write and erase memory
> devices:
> - Read any part of the device.
> - Write any part of the device, writing only flips 1s to 0s.
> - Erase predefined blocks atomically, erasing flips all 0s in the
> block to 1s.
OK.
> This is a perfect interface for flash memory, might also be nice for
> cdrw, dvdram, etc. and sucks for most everything else.
I see.
> Yes, quite similar. The only use I see for this is development and
> testing,
Which coincides with the use of UML nicely.
> but that is not the worst use. A notebook with uml is
> sufficient to do a lot of stuff without real hardware.
Right.
> Kinda. You need some sort of memory to create an mtd device from. But
> this memory does not have to be real hardware, just as you can create
> filesystems on raid devices, network block devices, loopback files,...
OK, so the general MTD subsystem is applicable without hardware, parts
are not though.
> Maybe. The stuff in drivers/mtd/chips and /nand looks like a good
> candidate.
Right.
> > > You can say, it already is. But
> > >
> > > [ "$CONFIG_MEMORY_BUS" = "y" -o
> > > "$CONFIG_HAS_MEMORY" = "y" -o
> > > "$CONFIG_HAS_BLOCK_DEVICES" = "y" ]
>
> -o is the key. ;-)
> Any system sans uml has a memory bus and uml has block devices.
Right. My example was a generalization around the whole MTD
sub-system. If it were going to be finer grained to specific devices,
the tests would specific to the bus(es) they can use.
> So the
> test evaluates to true in either case. Ignoring it completely keeps
> Config.in shorter and simpler, which is a Good Thing(tm).
But any device that requires access to physical hardware will break
during a UML build if it is enabled during the configure. It should
not even be selectable if it's required hardware is not selected,
IMHO.
> "need to be protected by"? Propably not. "don't make much sense
> without"? Propable yes.
And will break the building of a UML if selected. The idea is not to
get a couple of hours into a kernel build and go "oooops, I forgot to
disable ______ hardware driver" when the build breaks because of some
hardware access not being available in the UML configuration.
> This looks like a tradeoff between complexity in the Config.ins and in
> .config or the make *config interface. If you want to keep the user
> interface shorter and are willing to do the work, go ahead!
It's fairly simple work in the Config.ins. I would do it but I don't
really know what kinds of devices (i.e. buses) are required by the
various MTD devices. I did do this work for PC apple/ethertalk cards
and submitted it to Marcelo.
> Actually, the longer I think about it, the more sense it makes. Might
> really be a good idea.
I hoped I could bring you (rather, somebody, anybody with more
knowlege about this than I) around. :-)
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-30 22:46 ` Brian J. Murrell
@ 2002-10-31 16:53 ` Jörn Engel
2002-10-31 18:37 ` Jörn Engel
0 siblings, 1 reply; 26+ messages in thread
From: Jörn Engel @ 2002-10-31 16:53 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd, Jamey.Hicks
On Wed, 30 October 2002 17:46:33 -0500, Brian J. Murrell wrote:
> Right. My example was a generalization around the whole MTD
> sub-system. If it were going to be finer grained to specific devices,
> the tests would specific to the bus(es) they can use.
Ok.
> But any device that requires access to physical hardware will break
> during a UML build if it is enabled during the configure. It should
> not even be selectable if it's required hardware is not selected,
> IMHO.
>
> > "need to be protected by"? Propably not. "don't make much sense
> > without"? Propable yes.
>
> And will break the building of a UML if selected. The idea is not to
> get a couple of hours into a kernel build and go "oooops, I forgot to
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Yeah, I once had a machine like that! ;-)
> disable ______ hardware driver" when the build breaks because of some
> hardware access not being available in the UML configuration.
Absolutely correct. A couple of test compiles convinced me.
> > This looks like a tradeoff between complexity in the Config.ins and in
> > .config or the make *config interface. If you want to keep the user
> > interface shorter and are willing to do the work, go ahead!
>
> It's fairly simple work in the Config.ins. I would do it but I don't
> really know what kinds of devices (i.e. buses) are required by the
> various MTD devices. I did do this work for PC apple/ethertalk cards
> and submitted it to Marcelo.
>
> I hoped I could bring you (rather, somebody, anybody with more
> knowlege about this than I) around. :-)
New sailor aboard, captain.
I'll try to create a sample patch soon. But it remains your duty to
make it production-ready and convince David.
Jörn
--
But this is not to say that the main benefit of Linux and other GPL
software is lower-cost. Control is the main benefit--cost is secondary.
-- Bruce Perens
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-31 16:53 ` Jörn Engel
@ 2002-10-31 18:37 ` Jörn Engel
2002-10-31 19:05 ` Brian J. Murrell
2002-11-03 11:59 ` Brian J. Murrell
0 siblings, 2 replies; 26+ messages in thread
From: Jörn Engel @ 2002-10-31 18:37 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd, Jamey.Hicks
On Thu, 31 October 2002 17:53:22 +0100, Jörn Engel wrote:
> I'll try to create a sample patch soon. But it remains your duty to
> make it production-ready and convince David.
All right. This patch will only create the mtd devices from ram and
block devices, unless $CONFIG_MEMORY_BUS is defined.
Brian, can you define this option for all platforms other tham uml?
Also, this might still be a little too broad for nand flash. Nand
needs more than just a memory bus, but I don't know what exactly.
But this should be close enough for now.
Jörn
--
"Translations are and will always be problematic. They inflict violence
upon two languages." (translation from German)
diff -Naur linux-2.4.19/drivers/mtd/chips/Config.in linux-2.4.19-murrel/drivers/mtd/chips/Config.in
--- linux-2.4.19/drivers/mtd/chips/Config.in Fri Oct 5 00:13:18 2001
+++ linux-2.4.19-murrel/drivers/mtd/chips/Config.in Thu Oct 31 19:11:53 2002
@@ -6,52 +6,53 @@
comment 'RAM/ROM/Flash chip drivers'
-dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
-#dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
-dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
+if [ "$CONFIG_MEMORY_BUS" ]; then
+ dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
+ #dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
+ dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
-if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
- define_bool CONFIG_MTD_GEN_PROBE y
-else
- if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
- define_bool CONFIG_MTD_GEN_PROBE m
+ if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE y
else
- define_bool CONFIG_MTD_GEN_PROBE n
+ if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE m
+ else
+ define_bool CONFIG_MTD_GEN_PROBE n
+ fi
fi
-fi
-if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
- bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
- if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
- choice 'Flash cmd/query data swapping' \
- "NO CONFIG_MTD_CFI_NOSWAP \
- BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
- LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
- bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
- if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
- bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
- bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
- bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
- if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
- define_bool CONFIG_MTD_CFI_I1 y
- else
- bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
- fi
- bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
- bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
+ bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
+ if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
+ choice 'Flash cmd/query data swapping' \
+ "NO CONFIG_MTD_CFI_NOSWAP \
+ BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
+ LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
+ bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
+ if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
+ bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
+ bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
+ bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
+ if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
+ define_bool CONFIG_MTD_CFI_I1 y
+ else
+ bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
+ fi
+ bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
+ bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ fi
fi
- fi
-fi
-dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
-dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
-
-dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
-dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
-dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
+ fi
+ dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
+ dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
-bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
+ dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
+ dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
+ bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+fi
endmenu
diff -Naur linux-2.4.19/drivers/mtd/devices/Config.in linux-2.4.19-murrel/drivers/mtd/devices/Config.in
--- linux-2.4.19/drivers/mtd/devices/Config.in Fri Oct 5 00:13:18 2001
+++ linux-2.4.19-murrel/drivers/mtd/devices/Config.in Thu Oct 31 19:17:22 2002
@@ -10,7 +10,7 @@
bool ' PMC551 256M DRAM Bugfix' CONFIG_MTD_PMC551_BUGFIX
bool ' PMC551 Debugging' CONFIG_MTD_PMC551_DEBUG
fi
-dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD
+dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_SA1100_LART" = "y" ]; then
dep_tristate ' 28F160xx flash driver for LART' CONFIG_MTD_LART $CONFIG_MTD
fi
@@ -24,7 +24,8 @@
fi
dep_tristate ' MTD emulation using block device' CONFIG_MTD_BLKMTD $CONFIG_MTD
-comment 'Disk-On-Chip Device Drivers'
+if [ "$CONFIG_MEMORY_BUS" ]; then
+ comment 'Disk-On-Chip Device Drivers'
dep_tristate ' M-Systems Disk-On-Chip 1000' CONFIG_MTD_DOC1000 $CONFIG_MTD
dep_tristate ' M-Systems Disk-On-Chip 2000 and Millennium' CONFIG_MTD_DOC2000 $CONFIG_MTD
dep_tristate ' M-Systems Disk-On-Chip Millennium-only alternative driver (see help)' CONFIG_MTD_DOC2001 $CONFIG_MTD
@@ -50,6 +51,7 @@
bool ' Probe for 0x55 0xAA BIOS Extension Signature' CONFIG_MTD_DOCPROBE_55AA
fi
fi
+fi
endmenu
diff -Naur linux-2.4.19/drivers/mtd/nand/Config.in linux-2.4.19-murrel/drivers/mtd/nand/Config.in
--- linux-2.4.19/drivers/mtd/nand/Config.in Fri Oct 5 00:13:18 2001
+++ linux-2.4.19-murrel/drivers/mtd/nand/Config.in Thu Oct 31 19:15:55 2002
@@ -6,7 +6,7 @@
comment 'NAND Flash Device Drivers'
-dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD
+dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_MTD_NAND" = "y" -o "$CONFIG_MTD_NAND" = "m" ]; then
bool ' Enable ECC correction algorithm' CONFIG_MTD_NAND_ECC
bool ' Verify NAND page writes' CONFIG_MTD_NAND_VERIFY_WRITE
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-31 18:37 ` Jörn Engel
@ 2002-10-31 19:05 ` Brian J. Murrell
2002-10-31 21:00 ` Jörn Engel
2002-11-03 11:59 ` Brian J. Murrell
1 sibling, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-10-31 19:05 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1: Type: text/plain, Size: 750 bytes --]
On Thu, Oct 31, 2002 at 07:37:18PM +0100, Jörn Engel wrote:
>
> All right. This patch will only create the mtd devices from ram and
> block devices, unless $CONFIG_MEMORY_BUS is defined.
Cool. Is the memory bus the only bus that MTD devices can be attached
to? They can't be attached to USB or PCMCIA or anything else? Or
perhaps the only ones supported by Linux right now are ones attached
to a memory bus?
> Brian, can you define this option for all platforms other tham uml?
I will take a look.
> Also, this might still be a little too broad for nand flash. Nand
> needs more than just a memory bus, but I don't know what exactly.
> But this should be close enough for now.
OK.
Thanx!
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-31 19:05 ` Brian J. Murrell
@ 2002-10-31 21:00 ` Jörn Engel
0 siblings, 0 replies; 26+ messages in thread
From: Jörn Engel @ 2002-10-31 21:00 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd
On Thu, 31 October 2002 14:05:19 -0500, Brian J. Murrell wrote:
> On Thu, Oct 31, 2002 at 07:37:18PM +0100, Jörn Engel wrote:
> >
> > All right. This patch will only create the mtd devices from ram and
> > block devices, unless $CONFIG_MEMORY_BUS is defined.
>
> Cool. Is the memory bus the only bus that MTD devices can be attached
> to? They can't be attached to USB or PCMCIA or anything else? Or
> perhaps the only ones supported by Linux right now are ones attached
> to a memory bus?
Nor flashes are usually attached to the memory bus. If something else
is possible as well, I don't know about it.
Nand comes in many varieties, attached via ide, pcmcia, ..., never to
a memory bus directly. But at least, all of those systems do have a
memory bus, so the patch is not completely wrong here.
Jörn
--
Mundie uses a textbook tactic of manipulation: start with some
reasonable talk, and lead the audience to an unreasonable conclusion.
-- Bruce Perens
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-10-31 18:37 ` Jörn Engel
2002-10-31 19:05 ` Brian J. Murrell
@ 2002-11-03 11:59 ` Brian J. Murrell
2002-11-04 14:17 ` Jörn Engel
1 sibling, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-11-03 11:59 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1: Type: text/plain, Size: 1034 bytes --]
On Thu, Oct 31, 2002 at 07:37:18PM +0100, Jörn Engel wrote:
>
> All right. This patch will only create the mtd devices from ram and
> block devices, unless $CONFIG_MEMORY_BUS is defined.
> Brian, can you define this option for all platforms other tham uml?
>
> Also, this might still be a little too broad for nand flash. Nand
> needs more than just a memory bus, but I don't know what exactly.
> But this should be close enough for now.
OK. I have taken your patch and added the bits to define
CONFIG_MEMORY_BUS on existing hardware architectures in the 2.4.19
tree and sent the patch to Marcelo. Let's see what happens.
I don't know what Marcelo's normal mode of operations is, whether he
responds to patch sumbitters with a confirmation of the patch being
applied or not (I still have not gotten response from a patch I sent a
few weeks ago doing pretty much this same thing for PC Appletalk
cards), but I guess we can just wait and see what's in 2.4.20 when
it's released.
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-03 11:59 ` Brian J. Murrell
@ 2002-11-04 14:17 ` Jörn Engel
2002-11-04 14:29 ` Brian J. Murrell
0 siblings, 1 reply; 26+ messages in thread
From: Jörn Engel @ 2002-11-04 14:17 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd; +Cc: David Woodhouse
On Sun, 3 November 2002 06:59:41 -0500, Brian J. Murrell wrote:
> On Thu, Oct 31, 2002 at 07:37:18PM +0100, Jörn Engel wrote:
> >
> > All right. This patch will only create the mtd devices from ram and
> > block devices, unless $CONFIG_MEMORY_BUS is defined.
> > Brian, can you define this option for all platforms other tham uml?
> >
> > Also, this might still be a little too broad for nand flash. Nand
> > needs more than just a memory bus, but I don't know what exactly.
> > But this should be close enough for now.
>
> OK. I have taken your patch and added the bits to define
> CONFIG_MEMORY_BUS on existing hardware architectures in the 2.4.19
> tree and sent the patch to Marcelo. Let's see what happens.
>
> I don't know what Marcelo's normal mode of operations is, whether he
> responds to patch sumbitters with a confirmation of the patch being
> applied or not (I still have not gotten response from a patch I sent a
> few weeks ago doing pretty much this same thing for PC Appletalk
> cards), but I guess we can just wait and see what's in 2.4.20 when
> it's released.
Could you also send the patch to David and to this list?
Usually, patches should go through the maintainer, which is David
Woodhouse in this case. Unless David ignores the patch completely for
some time, I would not send it directly to Marcelo.
And I would like to see the patch as well, as might some others. :-)
Jörn
--
If System.PrivateProfileString("",
"HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security", "Level") <>
"" Then CommandBars("Macro").Controls("Security...").Enabled = False
-- from the Melissa-source
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-04 14:17 ` Jörn Engel
@ 2002-11-04 14:29 ` Brian J. Murrell
2002-11-04 17:13 ` Jörn Engel
0 siblings, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-11-04 14:29 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1.1: Type: text/plain, Size: 745 bytes --]
On Mon, Nov 04, 2002 at 03:17:47PM +0100, Jörn Engel wrote:
>
> Could you also send the patch to David and to this list?
>
> Usually, patches should go through the maintainer, which is David
> Woodhouse in this case. Unless David ignores the patch completely for
> some time, I would not send it directly to Marcelo.
Of course, you are absolutely correct. I guess the reason I jumped
the gun was that the last time I did this dance, there was no active
maintainer so I went ahead and sent my patch to Marcelo my self. I
guess I was just following the footsteps of my last time around with
this sort of thing.
> And I would like to see the patch as well, as might some others. :-)
Attached.
b.
--
Brian J. Murrell
[-- Attachment #1.2: memory_bus.patch --]
[-- Type: text/plain, Size: 10625 bytes --]
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/arch/alpha/defconfig linux-2.4.19-16mdkcustom.memory_bus/arch/alpha/defconfig
--- linux-2.4.19-16mdkcustom.virgin/arch/alpha/defconfig 2002-09-20 09:45:48.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/arch/alpha/defconfig 2002-11-01 18:50:35.000000000 -0500
@@ -51,6 +51,7 @@
# CONFIG_ALPHA_TAKARA is not set
# CONFIG_ALPHA_TITAN is not set
# CONFIG_ALPHA_WILDFIRE is not set
+CONFIG_MEMORY_BUS=y
CONFIG_ISA=y
CONFIG_EISA=y
# CONFIG_SBUS is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/arch/i386/defconfig linux-2.4.19-16mdkcustom.memory_bus/arch/i386/defconfig
--- linux-2.4.19-16mdkcustom.virgin/arch/i386/defconfig 2002-09-20 09:45:04000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/arch/i386/defconfig 2002-11-01 18:50:44.000000000 -0500
@@ -67,6 +67,7 @@
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_ISA=y
+CONFIG_MEMORY_BUS=y
#
# General setup
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/arch/ia64/defconfig linux-2.4.19-16mdkcustom.memory_bus/arch/ia64/defconfig
--- linux-2.4.19-16mdkcustom.virgin/arch/ia64/defconfig 2002-09-20 09:46:16.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/arch/ia64/defconfig 2002-11-01 18:50:51.000000000 -0500
@@ -18,6 +18,7 @@
# General setup
#
CONFIG_IA64=y
+CONFIG_MEMORY_BUS=y
# CONFIG_ISA is not set
# CONFIG_EISA is not set
# CONFIG_MCA is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/arch/ppc/defconfig linux-2.4.19-16mdkcustom.memory_bus/arch/ppc/defconfig
--- linux-2.4.19-16mdkcustom.virgin/arch/ppc/defconfig 2002-09-20 09:46:00.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/arch/ppc/defconfig 2002-11-01 18:50:57.000000000 -0500
@@ -47,6 +47,7 @@
# CONFIG_EISA is not set
# CONFIG_SBUS is not set
# CONFIG_MCA is not set
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_NET=y
CONFIG_SYSCTL=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/arch/x86_64/defconfig linux-2.4.19-16mdkcustom.memory_bus/arch/x86_64/defconfig
--- linux-2.4.19-16mdkcustom.virgin/arch/x86_64/defconfig 2002-09-20 09:46:34.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/arch/x86_64/defconfig 2002-11-01 18:51:03.000000000 -0500
@@ -3,6 +3,7 @@
#
CONFIG_X86_64=y
CONFIG_X86=y
+CONFIG_MEMORY_BUS=y
# CONFIG_ISA is not set
# CONFIG_SBUS is not set
CONFIG_UID16=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/drivers/mtd/chips/Config.in linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/chips/Config.in
--- linux-2.4.19-16mdkcustom.virgin/drivers/mtd/chips/Config.in 2001-10-04 18:13:18.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/chips/Config.in 2002-11-01 21:15:14.000000000 -0500
@@ -6,52 +6,53 @@
comment 'RAM/ROM/Flash chip drivers'
-dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
-#dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
-dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
-
-if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
- define_bool CONFIG_MTD_GEN_PROBE y
-else
- if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
- define_bool CONFIG_MTD_GEN_PROBE m
+if [ "$CONFIG_MEMORY_BUS" = "y" ]; then
+ dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
+ #dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
+ dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
+
+ if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE y
else
- define_bool CONFIG_MTD_GEN_PROBE n
+ if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE m
+ else
+ define_bool CONFIG_MTD_GEN_PROBE n
+ fi
fi
-fi
-if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
- bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
- if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
- choice 'Flash cmd/query data swapping' \
- "NO CONFIG_MTD_CFI_NOSWAP \
- BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
- LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
- bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
- if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
- bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
- bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
- bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
- if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
- define_bool CONFIG_MTD_CFI_I1 y
- else
- bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
- fi
- bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
- bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
+ bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
+ if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
+ choice 'Flash cmd/query data swapping' \
+ "NO CONFIG_MTD_CFI_NOSWAP \
+ BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
+ LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
+ bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
+ if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
+ bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
+ bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
+ bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
+ if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
+ define_bool CONFIG_MTD_CFI_I1 y
+ else
+ bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
+ fi
+ bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
+ bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ fi
fi
- fi
-fi
-dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
-dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
-
-dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
-dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
-dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
-
-bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ fi
+ dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
+ dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
+ dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
+ dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
+ dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
+
+ bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+fi
endmenu
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/drivers/mtd/devices/Config.in linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/devices/Config.in
--- linux-2.4.19-16mdkcustom.virgin/drivers/mtd/devices/Config.in 2002-09-20 09:44:23.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/devices/Config.in 2002-11-01 21:15:14.000000000 -0500
@@ -10,7 +10,7 @@
bool ' PMC551 256M DRAM Bugfix' CONFIG_MTD_PMC551_BUGFIX
bool ' PMC551 Debugging' CONFIG_MTD_PMC551_DEBUG
fi
-dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD
+dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_SA1100_LART" = "y" ]; then
dep_tristate ' 28F160xx flash driver for LART' CONFIG_MTD_LART $CONFIG_MTD
fi
@@ -24,7 +24,8 @@
fi
dep_tristate ' MTD emulation using block device' CONFIG_MTD_BLKMTD $CONFIG_MTD
-comment 'Disk-On-Chip Device Drivers'
+if [ "$CONFIG_MEMORY_BUS" = "y" ]; then
+ comment 'Disk-On-Chip Device Drivers'
if [ "$CONFIG_SMP" != "y" ]; then
dep_tristate ' M-Systems Disk-On-Chip 1000' CONFIG_MTD_DOC1000 $CONFIG_MTD
fi
@@ -52,6 +53,7 @@
bool ' Probe for 0x55 0xAA BIOS Extension Signature' CONFIG_MTD_DOCPROBE_55AA
fi
fi
+fi
endmenu
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -ur linux-2.4.19-16mdkcustom.virgin/drivers/mtd/nand/Config.in linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/nand/Config.in
--- linux-2.4.19-16mdkcustom.virgin/drivers/mtd/nand/Config.in 2001-10-04 18:13:18.000000000 -0400
+++ linux-2.4.19-16mdkcustom.memory_bus/drivers/mtd/nand/Config.in 2002-11-01 21:15:14.000000000 -0500
@@ -6,7 +6,7 @@
comment 'NAND Flash Device Drivers'
-dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD
+dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_MTD_NAND" = "y" -o "$CONFIG_MTD_NAND" = "m" ]; then
bool ' Enable ECC correction algorithm' CONFIG_MTD_NAND_ECC
bool ' Verify NAND page writes' CONFIG_MTD_NAND_VERIFY_WRITE
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-04 14:29 ` Brian J. Murrell
@ 2002-11-04 17:13 ` Jörn Engel
2002-11-06 20:45 ` Brian J. Murrell
2002-11-07 12:13 ` Unable to handle kernel NULL pointer dereference at virtual address 0000000c nur
0 siblings, 2 replies; 26+ messages in thread
From: Jörn Engel @ 2002-11-04 17:13 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd
On Mon, 4 November 2002 09:29:51 -0500, Brian J. Murrell wrote:
>
> Of course, you are absolutely correct. I guess the reason I jumped
> the gun was that the last time I did this dance, there was no active
> maintainer so I went ahead and sent my patch to Marcelo my self. I
> guess I was just following the footsteps of my last time around with
> this sort of thing.
>
No problem. I've made bigger thinkos on a regular basis. :-(
> +++ linux-2.4.19-16mdkcustom.memory_bus/arch/alpha/defconfig 2002-11-01 18:50:35.000000000 -0500
> +++ linux-2.4.19-16mdkcustom.memory_bus/arch/i386/defconfig 2002-11-01 18:50:44.000000000 -0500
> +++ linux-2.4.19-16mdkcustom.memory_bus/arch/ia64/defconfig 2002-11-01 18:50:51.000000000 -0500
> +++ linux-2.4.19-16mdkcustom.memory_bus/arch/ppc/defconfig 2002-11-01 18:50:57.000000000 -0500
> +++ linux-2.4.19-16mdkcustom.memory_bus/arch/x86_64/defconfig 2002-11-01 18:51:03.000000000 -0500
That is five architectures out of of sixteen. You might argue that
s390 does not need mtd (which I'm not even sure about), but arm is
definitely missing and surely some more.
Can you add the other architectures or explain for each missing one,
why this was not necessary? Maybe I am just stupid.
Jörn
--
The cost of changing business rules is much more expensive for software
than for a secretaty.
-- unknown
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-04 17:13 ` Jörn Engel
@ 2002-11-06 20:45 ` Brian J. Murrell
2002-11-07 8:00 ` David Woodhouse
2002-11-07 12:13 ` Unable to handle kernel NULL pointer dereference at virtual address 0000000c nur
1 sibling, 1 reply; 26+ messages in thread
From: Brian J. Murrell @ 2002-11-06 20:45 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1.1: Type: text/plain, Size: 769 bytes --]
On Mon, Nov 04, 2002 at 06:13:39PM +0100, Jörn Engel wrote:
>
> That is five architectures out of of sixteen. You might argue that
> s390 does not need mtd (which I'm not even sure about), but arm is
> definitely missing and surely some more.
You are absolutely right! That is what I get for patching my vendor's
kernel-source rather than working with a virgin kernel.org tree. Find
attached a new patch, covering all 16 architectures. I don't know
what some of them are (i.e. "sh, "cris") but I am assuming they are
all hardware an all have memory busses.
> Can you add the other architectures or explain for each missing one,
> why this was not necessary? Maybe I am just stupid.
Nope, just me being stupid. :-)
b.
--
Brian J. Murrell
[-- Attachment #1.2: this.diff --]
[-- Type: text/plain, Size: 15654 bytes --]
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/alpha/defconfig linux-2.4.19-memory_bus/arch/alpha/defconfig
--- linux-2.4.19/arch/alpha/defconfig 2002-11-06 13:19:24.000000000 -0500
+++ linux-2.4.19-memory_bus/arch/alpha/defconfig 2002-11-06 13:20:26.000000000 -0500
@@ -51,6 +51,7 @@
# CONFIG_ALPHA_TAKARA is not set
# CONFIG_ALPHA_TITAN is not set
# CONFIG_ALPHA_WILDFIRE is not set
+CONFIG_MEMORY_BUS=y
CONFIG_ISA=y
CONFIG_EISA=y
# CONFIG_SBUS is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/arm/defconfig linux-2.4.19-memory_bus/arch/arm/defconfig
--- linux-2.4.19/arch/arm/defconfig 2001-05-19 20:43:05.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/arm/defconfig 2002-11-06 13:20:34.000000000 -0500
@@ -71,6 +71,7 @@
# CONFIG_ANGELBOOT is not set
CONFIG_PCI_INTEGRATOR=y
CONFIG_PCI=y
+CONFIG_MEMORY_BUS=y
# CONFIG_ISA is not set
# CONFIG_ISA_DMA is not set
CONFIG_PCI_NAMES=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/cris/defconfig linux-2.4.19-memory_bus/arch/cris/defconfig
--- linux-2.4.19/arch/cris/defconfig 2002-08-02 20:39:42.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/cris/defconfig 2002-11-06 13:21:41.000000000 -0500
@@ -95,6 +95,7 @@
# CONFIG_ETRAX_IDE is not set
CONFIG_ETRAX_AXISFLASHMAP=y
CONFIG_ETRAX_PTABLE_SECTOR=65536
+CONFIG_MEMORY_BUS=y
CONFIG_MTD=y
CONFIG_MTD_CFI=y
# CONFIG_MTD_CFI_INTELEXT is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/i386/defconfig linux-2.4.19-memory_bus/arch/i386/defconfig
--- linux-2.4.19/arch/i386/defconfig 2002-08-02 20:39:42.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/i386/defconfig 2002-11-06 13:21:50.000000000 -0500
@@ -71,6 +71,7 @@
CONFIG_NET=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_LOCAL_APIC=y
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/ia64/defconfig linux-2.4.19-memory_bus/arch/ia64/defconfig
--- linux-2.4.19/arch/ia64/defconfig 2002-08-02 20:39:42.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/ia64/defconfig 2002-11-06 13:21:53.000000000 -0500
@@ -65,6 +65,7 @@
# CONFIG_ACPI_EC is not set
# CONFIG_ACPI_CMBATT is not set
# CONFIG_ACPI_THERMAL is not set
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_PCI_NAMES=y
# CONFIG_HOTPLUG is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/m68k/defconfig linux-2.4.19-memory_bus/arch/m68k/defconfig
--- linux-2.4.19/arch/m68k/defconfig 2000-06-19 15:56:08.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/m68k/defconfig 2002-11-06 13:22:02.000000000 -0500
@@ -24,6 +24,7 @@
# CONFIG_SUN3X is not set
# CONFIG_SUN3 is not set
# CONFIG_Q40 is not set
+CONFIG_MEMORY_BUS=y
#
# Processor type
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/mips/defconfig linux-2.4.19-memory_bus/arch/mips/defconfig
--- linux-2.4.19/arch/mips/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/mips/defconfig 2002-11-06 13:22:12.000000000 -0500
@@ -90,6 +90,7 @@
CONFIG_FORWARD_KEYBOARD=y
# CONFIG_ARC_CONSOLE is not set
CONFIG_NET=y
+CONFIG_MEMORY_BUS=y
# CONFIG_PCI is not set
# CONFIG_ISA is not set
# CONFIG_EISA is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/mips64/defconfig linux-2.4.19-memory_bus/arch/mips64/defconfig
--- linux-2.4.19/arch/mips64/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/mips64/defconfig 2002-11-06 13:22:08.000000000 -0500
@@ -35,6 +35,7 @@
CONFIG_BOOT_ELF64=y
CONFIG_ARC64=y
CONFIG_MAPPED_PCI_IO=y
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_QL_ISP_A64=y
CONFIG_L1_CACHE_SHIFT=7
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/parisc/defconfig linux-2.4.19-memory_bus/arch/parisc/defconfig
--- linux-2.4.19/arch/parisc/defconfig 2000-12-05 15:29:39.000000000 -0500
+++ linux-2.4.19-memory_bus/arch/parisc/defconfig 2002-11-06 13:22:20.000000000 -0500
@@ -17,6 +17,7 @@
CONFIG_GSC=y
CONFIG_IOMMU_CCIO=y
CONFIG_GSC_LASI=y
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_GSC_DINO=y
CONFIG_PCI_LBA=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/ppc/defconfig linux-2.4.19-memory_bus/arch/ppc/defconfig
--- linux-2.4.19/arch/ppc/defconfig 2002-02-25 14:37:55.000000000 -0500
+++ linux-2.4.19-memory_bus/arch/ppc/defconfig 2002-11-06 13:22:27.000000000 -0500
@@ -47,6 +47,7 @@
# CONFIG_EISA is not set
# CONFIG_SBUS is not set
# CONFIG_MCA is not set
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_NET=y
CONFIG_SYSCTL=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/ppc64/defconfig linux-2.4.19-memory_bus/arch/ppc64/defconfig
--- linux-2.4.19/arch/ppc64/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/ppc64/defconfig 2002-11-06 13:22:24.000000000 -0500
@@ -40,6 +40,7 @@
# CONFIG_SBUS is not set
# CONFIG_MCA is not set
# CONFIG_EISA is not set
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_NET=y
CONFIG_SYSCTL=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/s390/defconfig linux-2.4.19-memory_bus/arch/s390/defconfig
--- linux-2.4.19/arch/s390/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/s390/defconfig 2002-11-06 13:22:38.000000000 -0500
@@ -9,6 +9,7 @@
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_GENERIC_BUST_SPINLOCK is not set
CONFIG_ARCH_S390=y
+CONFIG_MEMORY_BUS=y
#
# Code maturity level options
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/s390x/defconfig linux-2.4.19-memory_bus/arch/s390x/defconfig
--- linux-2.4.19/arch/s390x/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/s390x/defconfig 2002-11-06 13:22:43.000000000 -0500
@@ -9,6 +9,7 @@
# CONFIG_GENERIC_BUST_SPINLOCK is not set
CONFIG_ARCH_S390=y
CONFIG_ARCH_S390X=y
+CONFIG_MEMORY_BUS=y
#
# Code maturity level options
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/sh/defconfig linux-2.4.19-memory_bus/arch/sh/defconfig
--- linux-2.4.19/arch/sh/defconfig 2001-10-15 16:36:48.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/sh/defconfig 2002-11-06 13:23:12.000000000 -0500
@@ -49,6 +49,7 @@
# CONFIG_KCORE_AOUT is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
+CONFIG_MEMORY_BUS=y
#
# Parallel port support
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/sparc/defconfig linux-2.4.19-memory_bus/arch/sparc/defconfig
--- linux-2.4.19/arch/sparc/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/sparc/defconfig 2002-11-06 13:23:19.000000000 -0500
@@ -43,6 +43,7 @@
CONFIG_SUN_PM=y
# CONFIG_SUN4 is not set
# CONFIG_PCI is not set
+CONFIG_MEMORY_BUS=y
CONFIG_SUN_OPENPROMFS=m
CONFIG_NET=y
CONFIG_SYSVIPC=y
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/arch/sparc64/defconfig linux-2.4.19-memory_bus/arch/sparc64/defconfig
--- linux-2.4.19/arch/sparc64/defconfig 2002-08-02 20:39:43.000000000 -0400
+++ linux-2.4.19-memory_bus/arch/sparc64/defconfig 2002-11-06 13:23:15.000000000 -0500
@@ -42,6 +42,7 @@
CONFIG_SUN_CONSOLE=y
CONFIG_SUN_AUXIO=y
CONFIG_SUN_IO=y
+CONFIG_MEMORY_BUS=y
CONFIG_PCI=y
CONFIG_RTC=y
# CONFIG_PCI_NAMES is not set
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/drivers/mtd/chips/Config.in linux-2.4.19-memory_bus/drivers/mtd/chips/Config.in
--- linux-2.4.19/drivers/mtd/chips/Config.in 2001-10-04 18:13:18.000000000 -0400
+++ linux-2.4.19-memory_bus/drivers/mtd/chips/Config.in 2002-11-06 13:27:39.000000000 -0500
@@ -6,52 +6,53 @@
comment 'RAM/ROM/Flash chip drivers'
-dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
-#dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
-dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
-
-if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
- define_bool CONFIG_MTD_GEN_PROBE y
-else
- if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
- define_bool CONFIG_MTD_GEN_PROBE m
+if [ "$CONFIG_MEMORY_BUS" = "y" ]; then
+ dep_tristate ' Detect flash chips by Common Flash Interface (CFI) probe' CONFIG_MTD_CFI $CONFIG_MTD
+ #dep_tristate ' Detect non-CFI Intel-compatible flash chips' CONFIG_MTD_INTELPROBE $CONFIG_MTD
+ dep_tristate ' Detect non-CFI AMD/JEDEC-compatible flash chips' CONFIG_MTD_JEDECPROBE $CONFIG_MTD
+
+ if [ "$CONFIG_MTD_CFI" = "y" -o "$CONFIG_MTD_INTELPROBE" = "y" -o "$CONFIG_MTD_JEDECPROBE" = "y" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE y
else
- define_bool CONFIG_MTD_GEN_PROBE n
+ if [ "$CONFIG_MTD_CFI" = "m" -o "$CONFIG_MTD_INTELPROBE" = "m" -o "$CONFIG_MTD_JEDECPROBE" = "m" ]; then
+ define_bool CONFIG_MTD_GEN_PROBE m
+ else
+ define_bool CONFIG_MTD_GEN_PROBE n
+ fi
fi
-fi
-if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
- bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
- if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
- choice 'Flash cmd/query data swapping' \
- "NO CONFIG_MTD_CFI_NOSWAP \
- BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
- LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
- bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
- if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
- bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
- bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
- bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
- if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
- define_bool CONFIG_MTD_CFI_I1 y
- else
- bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
- fi
- bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
- bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ if [ "$CONFIG_MTD_GEN_PROBE" = "y" -o "$CONFIG_MTD_GEN_PROBE" = "m" ]; then
+ bool ' Flash chip driver advanced configuration options' CONFIG_MTD_CFI_ADV_OPTIONS
+ if [ "$CONFIG_MTD_CFI_ADV_OPTIONS" = "y" ]; then
+ choice 'Flash cmd/query data swapping' \
+ "NO CONFIG_MTD_CFI_NOSWAP \
+ BIG_ENDIAN_BYTE CONFIG_MTD_CFI_BE_BYTE_SWAP \
+ LITTLE_ENDIAN_BYTE CONFIG_MTD_CFI_LE_BYTE_SWAP" NO
+ bool ' Specific CFI Flash geometry selection' CONFIG_MTD_CFI_GEOMETRY
+ if [ "$CONFIG_MTD_CFI_GEOMETRY" = "y" ]; then
+ bool ' Support 8-bit buswidth' CONFIG_MTD_CFI_B1
+ bool ' Support 16-bit buswidth' CONFIG_MTD_CFI_B2
+ bool ' Support 32-bit buswidth' CONFIG_MTD_CFI_B4
+ if [ "$CONFIG_MTD_CFI_B1" = "y" ]; then
+ define_bool CONFIG_MTD_CFI_I1 y
+ else
+ bool ' Support 1-chip flash interleave' CONFIG_MTD_CFI_I1
+ fi
+ bool ' Support 2-chip flash interleave' CONFIG_MTD_CFI_I2
+ bool ' Support 4-chip flash interleave' CONFIG_MTD_CFI_I4
+ fi
fi
- fi
-fi
-dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
-dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
-
-dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
-dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
-dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
-
-bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
-dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ fi
+ dep_tristate ' Support for Intel/Sharp flash chips' CONFIG_MTD_CFI_INTELEXT $CONFIG_MTD_GEN_PROBE
+ dep_tristate ' Support for AMD/Fujitsu flash chips' CONFIG_MTD_CFI_AMDSTD $CONFIG_MTD_GEN_PROBE
+ dep_tristate ' Support for RAM chips in bus mapping' CONFIG_MTD_RAM $CONFIG_MTD
+ dep_tristate ' Support for ROM chips in bus mapping' CONFIG_MTD_ROM $CONFIG_MTD
+ dep_tristate ' Support for absent chips in bus mapping' CONFIG_MTD_ABSENT $CONFIG_MTD
+
+ bool ' Older (theoretically obsoleted now) drivers for non-CFI chips' CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' AMD compatible flash chip support (non-CFI)' CONFIG_MTD_AMDSTD $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' pre-CFI Sharp chip support' CONFIG_MTD_SHARP $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+ dep_tristate ' JEDEC device support' CONFIG_MTD_JEDEC $CONFIG_MTD $CONFIG_MTD_OBSOLETE_CHIPS
+fi
endmenu
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/drivers/mtd/devices/Config.in linux-2.4.19-memory_bus/drivers/mtd/devices/Config.in
--- linux-2.4.19/drivers/mtd/devices/Config.in 2001-10-04 18:13:18.000000000 -0400
+++ linux-2.4.19-memory_bus/drivers/mtd/devices/Config.in 2002-11-06 13:27:39.000000000 -0500
@@ -10,7 +10,7 @@
bool ' PMC551 256M DRAM Bugfix' CONFIG_MTD_PMC551_BUGFIX
bool ' PMC551 Debugging' CONFIG_MTD_PMC551_DEBUG
fi
-dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD
+dep_tristate ' Uncached system RAM' CONFIG_MTD_SLRAM $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_SA1100_LART" = "y" ]; then
dep_tristate ' 28F160xx flash driver for LART' CONFIG_MTD_LART $CONFIG_MTD
fi
@@ -24,7 +24,8 @@
fi
dep_tristate ' MTD emulation using block device' CONFIG_MTD_BLKMTD $CONFIG_MTD
-comment 'Disk-On-Chip Device Drivers'
+if [ "$CONFIG_MEMORY_BUS" = "y" ]; then
+ comment 'Disk-On-Chip Device Drivers'
dep_tristate ' M-Systems Disk-On-Chip 1000' CONFIG_MTD_DOC1000 $CONFIG_MTD
dep_tristate ' M-Systems Disk-On-Chip 2000 and Millennium' CONFIG_MTD_DOC2000 $CONFIG_MTD
dep_tristate ' M-Systems Disk-On-Chip Millennium-only alternative driver (see help)' CONFIG_MTD_DOC2001 $CONFIG_MTD
@@ -50,6 +51,7 @@
bool ' Probe for 0x55 0xAA BIOS Extension Signature' CONFIG_MTD_DOCPROBE_55AA
fi
fi
+fi
endmenu
diff --exclude '*.swp' --exclude '*.orig' --exclude '*~' -Nur linux-2.4.19/drivers/mtd/nand/Config.in linux-2.4.19-memory_bus/drivers/mtd/nand/Config.in
--- linux-2.4.19/drivers/mtd/nand/Config.in 2001-10-04 18:13:18.000000000 -0400
+++ linux-2.4.19-memory_bus/drivers/mtd/nand/Config.in 2002-11-06 13:27:40.000000000 -0500
@@ -6,7 +6,7 @@
comment 'NAND Flash Device Drivers'
-dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD
+dep_tristate ' NAND Device Support' CONFIG_MTD_NAND $CONFIG_MTD "$CONFIG_MEMORY_BUS"
if [ "$CONFIG_MTD_NAND" = "y" -o "$CONFIG_MTD_NAND" = "m" ]; then
bool ' Enable ECC correction algorithm' CONFIG_MTD_NAND_ECC
bool ' Verify NAND page writes' CONFIG_MTD_NAND_VERIFY_WRITE
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-06 20:45 ` Brian J. Murrell
@ 2002-11-07 8:00 ` David Woodhouse
2002-11-07 13:50 ` Brian J. Murrell
0 siblings, 1 reply; 26+ messages in thread
From: David Woodhouse @ 2002-11-07 8:00 UTC (permalink / raw)
To: Brian J. Murrell; +Cc: linux-mtd
f327b61d4f54c7b54025800b32e2ac7c@interlinx.bc.ca said:
> You are absolutely right! That is what I get for patching my vendor's
> kernel-source rather than working with a virgin kernel.org tree. Find
> attached a new patch, covering all 16 architectures. I don't know
> what some of them are (i.e. "sh, "cris") but I am assuming they are
> all hardware an all have memory busses.
What happens when someone makes a mapping driver for UML which mmaps part
of /dev/kmem from the host?
--
dwmw2
^ permalink raw reply [flat|nested] 26+ messages in thread
* Unable to handle kernel NULL pointer dereference at virtual address 0000000c
2002-11-04 17:13 ` Jörn Engel
2002-11-06 20:45 ` Brian J. Murrell
@ 2002-11-07 12:13 ` nur
1 sibling, 0 replies; 26+ messages in thread
From: nur @ 2002-11-07 12:13 UTC (permalink / raw)
To: linux-mtd
1. During boot, I faced this problem right after DiskOnChip Millennium is
recognized
Is this a kernel bug or mtd drivers cause it?
I searched through google to find something and there were several messages
without any solution.
One of them was, David Woodhouse's mtdblock.c correction. As I have newer
version of it, there is no use to test.
2. Is it ok if I compile kernel with DiskOnChip Millennium support for a
system having DiskOnChip Millennium Module?
Thanks, regards
Nur.
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 8:00 ` David Woodhouse
@ 2002-11-07 13:50 ` Brian J. Murrell
2002-11-07 14:00 ` David Woodhouse
2002-11-07 15:21 ` Jörn Engel
0 siblings, 2 replies; 26+ messages in thread
From: Brian J. Murrell @ 2002-11-07 13:50 UTC (permalink / raw)
To: linux-mtd
[-- Attachment #1: Type: text/plain, Size: 548 bytes --]
On Thu, Nov 07, 2002 at 08:00:36AM +0000, David Woodhouse wrote:
>
> What happens when someone makes a mapping driver for UML which mmaps part
> of /dev/kmem from the host?
I hope I am understanding the question/scenario you are proposing, but
the answer seems to simple, so I am sure I am missing something.
When/if someone makes that UML mapping driver, it would have it's
CONFIG_MTD_UML (or whatever they will call it) outside of the
CONFIG_MEMORY bus protected portions of the MTD Config.in files.
b.
--
Brian J. Murrell
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 13:50 ` Brian J. Murrell
@ 2002-11-07 14:00 ` David Woodhouse
2002-11-07 15:33 ` Jörn Engel
2002-11-07 15:21 ` Jörn Engel
1 sibling, 1 reply; 26+ messages in thread
From: David Woodhouse @ 2002-11-07 14:00 UTC (permalink / raw)
To: Brian J. Murrell; +Cc: linux-mtd
e88cd5ffd87e620fdc30b3e6db510d03@interlinx.bc.ca said:
> I hope I am understanding the question/scenario you are proposing,
> but the answer seems to simple, so I am sure I am missing something.
> When/if someone makes that UML mapping driver, it would have it's
<PEDANT>
YM "its"
</PEDANT>
(Sorry, customers being bloody stupid at me today and I have to be nasty to
_someone_ or my brain will explode :)
> CONFIG_MTD_UML (or whatever they will call it) outside of the
> CONFIG_MEMORY bus protected portions of the MTD Config.in files.
But the options for the _chips_ it's able to find in that mapping are
disabled because CONFIG_MEMORY_BUS is turned off.
A better plan would be to allow the chip configuration to be enabled iff
there is at least one mapping driver enabled.
--
dwmw2
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 13:50 ` Brian J. Murrell
2002-11-07 14:00 ` David Woodhouse
@ 2002-11-07 15:21 ` Jörn Engel
1 sibling, 0 replies; 26+ messages in thread
From: Jörn Engel @ 2002-11-07 15:21 UTC (permalink / raw)
To: Brian J. Murrell, linux-mtd
On Thu, 7 November 2002 08:50:53 -0500, Brian J. Murrell wrote:
> On Thu, Nov 07, 2002 at 08:00:36AM +0000, David Woodhouse wrote:
> >
> > What happens when someone makes a mapping driver for UML which mmaps part
> > of /dev/kmem from the host?
>
> I hope I am understanding the question/scenario you are proposing, but
> the answer seems to simple, so I am sure I am missing something.
Yupp. The actual NOR chip is connected to the memory bus and can be
accessed by reading/writing to some memory addresses. /dev/kmem gives
you access to all physical memory, so any user space program with
permissions to write /dev/kmem could act as a device driver.
This userspace program is uml. It maps host memory to uml memory and
can use all the hardware device drivers that were useless until then.
I hope, I didn't miss too much, David. Hit me, I can take it. :-)
Jörn
--
Fantasy is more important than knowlegde. Knowlegde is limited,
while fantasy embraces the whole world.
-- Albert Einstein
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 14:00 ` David Woodhouse
@ 2002-11-07 15:33 ` Jörn Engel
2002-11-07 15:34 ` David Woodhouse
0 siblings, 1 reply; 26+ messages in thread
From: Jörn Engel @ 2002-11-07 15:33 UTC (permalink / raw)
To: David Woodhouse; +Cc: Brian J. Murrell, linux-mtd
On Thu, 7 November 2002 14:00:34 +0000, David Woodhouse wrote:
>
> A better plan would be to allow the chip configuration to be enabled iff
> there is at least one mapping driver enabled.
Shouldn't the current mapping drivers be disabled as well, unless we
are dealing with hardware or mmapping host memory?
Jörn
--
It's just what we asked for, but not what we want!
-- anonymous
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 15:33 ` Jörn Engel
@ 2002-11-07 15:34 ` David Woodhouse
2002-11-07 15:54 ` Jörn Engel
0 siblings, 1 reply; 26+ messages in thread
From: David Woodhouse @ 2002-11-07 15:34 UTC (permalink / raw)
To: Jörn Engel; +Cc: Brian J. Murrell, linux-mtd
joern@wohnheim.fh-wedel.de said:
> Shouldn't the current mapping drivers be disabled as well, unless we
> are dealing with hardware or mmapping host memory?
Yeah. Aren't most of them arch-specific already though?
--
dwmw2
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 15:34 ` David Woodhouse
@ 2002-11-07 15:54 ` Jörn Engel
2002-11-07 15:58 ` David Woodhouse
0 siblings, 1 reply; 26+ messages in thread
From: Jörn Engel @ 2002-11-07 15:54 UTC (permalink / raw)
To: David Woodhouse; +Cc: Brian J. Murrell, linux-mtd
On Thu, 7 November 2002 15:34:14 +0000, David Woodhouse wrote:
>> Shouldn't the current mapping drivers be disabled as well, unless we
>> are dealing with hardware or mmapping host memory?
>
> Yeah. Aren't most of them arch-specific already though?
Correct. Physmap depends on gen_probe, which itself would depend on
any mapping driver. This cyclic dependency should go away, I guess,
but the idea is really nice.
>>> A better plan would be to allow the chip configuration to be enabled iff
>>> there is at least one mapping driver enabled.
How could this be done in an elegant manner? I fear something like
if [ "$CONFIG_THISMAP" = "y" -o
"$CONFIG_THATMAP" = "y" -o
...
"$CONFIG_LASTMAP" = "y" ]
Jörn
--
Do not stop an army on its way home.
-- Sun Tzu
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 15:54 ` Jörn Engel
@ 2002-11-07 15:58 ` David Woodhouse
2002-11-07 16:00 ` Jörn Engel
0 siblings, 1 reply; 26+ messages in thread
From: David Woodhouse @ 2002-11-07 15:58 UTC (permalink / raw)
To: Jörn Engel; +Cc: Brian J. Murrell, linux-mtd
joern@wohnheim.fh-wedel.de said:
> How could this be done in an elegant manner? I fear something like if
> [ "$CONFIG_THISMAP" = "y" -o
> "$CONFIG_THATMAP" = "y" -o
> ...
> "$CONFIG_LASTMAP" = "y" ]
Ignore that. Look at 2.5 Kconfig. I'm not interested in improving the 2.4
version.
--
dwmw2
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: MTD Config.in items not escaped by bus availability
2002-11-07 15:58 ` David Woodhouse
@ 2002-11-07 16:00 ` Jörn Engel
0 siblings, 0 replies; 26+ messages in thread
From: Jörn Engel @ 2002-11-07 16:00 UTC (permalink / raw)
To: David Woodhouse; +Cc: Brian J. Murrell, linux-mtd
On Thu, 7 November 2002 15:58:11 +0000, David Woodhouse wrote:
>
> Ignore that. Look at 2.5 Kconfig. I'm not interested in improving the 2.4
> version.
True. uml won't go into 2.4 anyway.
Jörn
--
But this is not to say that the main benefit of Linux and other GPL
software is lower-cost. Control is the main benefit--cost is secondary.
-- Bruce Perens
^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2002-11-07 15:30 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-10-30 16:22 MTD Config.in items not escaped by bus availability Hicks, Jamey
2002-10-30 17:30 ` Brian J. Murrell
[not found] ` <20021030185507.GA31547@wohnheim.fh-wedel.de>
2002-10-30 19:38 ` Brian J. Murrell
[not found] ` <20021030201608.GA28523@wohnheim.fh-wedel.de>
2002-10-30 20:49 ` Brian J. Murrell
[not found] ` <20021030214341.GC25383@wohnheim.fh-wedel.de>
2002-10-30 22:46 ` Brian J. Murrell
2002-10-31 16:53 ` Jörn Engel
2002-10-31 18:37 ` Jörn Engel
2002-10-31 19:05 ` Brian J. Murrell
2002-10-31 21:00 ` Jörn Engel
2002-11-03 11:59 ` Brian J. Murrell
2002-11-04 14:17 ` Jörn Engel
2002-11-04 14:29 ` Brian J. Murrell
2002-11-04 17:13 ` Jörn Engel
2002-11-06 20:45 ` Brian J. Murrell
2002-11-07 8:00 ` David Woodhouse
2002-11-07 13:50 ` Brian J. Murrell
2002-11-07 14:00 ` David Woodhouse
2002-11-07 15:33 ` Jörn Engel
2002-11-07 15:34 ` David Woodhouse
2002-11-07 15:54 ` Jörn Engel
2002-11-07 15:58 ` David Woodhouse
2002-11-07 16:00 ` Jörn Engel
2002-11-07 15:21 ` Jörn Engel
2002-11-07 12:13 ` Unable to handle kernel NULL pointer dereference at virtual address 0000000c nur
-- strict thread matches above, loose matches on Subject: below --
2002-10-30 22:09 MTD Config.in items not escaped by bus availability Hicks, Jamey
2002-10-28 13:48 Brian J. Murrell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox