non volatile ram disk
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using __pa(ptr) on the top 32m causes a kernel oops.
any idea ?
regards
erez.
Quoted 6 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
Quoted 9 lines
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
a MTD is the way to go, which uses the "reserved" mem area. I assume that the RAM is battery backed
hi
thanks for replying,
I already tried to map an MTD to physical memory, but got an error and an mtd with size 0
dou you know why ?
regards
erez
Quoted 24 lines · Peter Wächtler
Quoted 6 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
Quoted 9 lines
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
a MTD is the way to go, which uses the "reserved" mem area.
I assume that the RAM is battery backed
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
the exact log i get:
Creating 3 MTD partitions on "SA1100 flash":
0x00000000-0x00040000 : "bootldr"
mtd: Giving out device 0 to bootldr
0x00040000-0x02000000 : "root"
mtd: Giving out device 1 to root
0xc2000000-0xc4000000 : "rd"
mtd: partition "rd" is out of reach -- disabled
notes:
1. the flash is at physical adress 0-0x1ffffff (32mb)
2. the ram is at physical adress 0xc0000000-0xc3ffffff
i tried to map an mtd device to the second part of the ram, but got "partition is out of reach"
any idea ?
Quoted 43 lines · Erez Doron
hi
thanks for replying,
I already tried to map an MTD to physical memory, but got an error and an mtd with size 0
dou you know why ?
regards
erezQuoted 17 lines · Peter Wächtler
Quoted 6 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
Quoted 9 lines
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
Quoted 7 lines
a MTD is the way to go, which uses the "reserved" mem area.
I assume that the RAM is battery backed
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Quoted 2 lines · [email protected] said:
i tried to map an mtd device to the second part of the ram, but got "partition is out of reach"
The numbers you modified are the ones which say how to divide up the flash chip. Don't do that - you need to use the 'slram' driver and configure that to tell it which memory to use.
See http://lists.infradead.org/pipermail/linux-mtd/2002-January/003872.html
--
dwmw2
Quoted 11 lines · Erez Doron
the exact log i get:
Creating 3 MTD partitions on "SA1100 flash":
0x00000000-0x00040000 : "bootldr"
mtd: Giving out device 0 to bootldr
0x00040000-0x02000000 : "root"
mtd: Giving out device 1 to root
0xc2000000-0xc4000000 : "rd"
mtd: partition "rd" is out of reach -- disabled
Quoted 7 lines
notes:
1. the flash is at physical adress 0-0x1ffffff (32mb)
2. the ram is at physical adress 0xc0000000-0xc3ffffff
i tried to map an mtd device to the second part of the ram, but got "partition is out of reach"any idea ?
you are confusing the address space of the kernel (starting with 3GB [0xc0000000]) with the addresses of the RAM (the upper 32MB starts at 0x2000000)
Then there will be some CS (chip selects) to distinguish what "bus address space" to use. Like CS1 for Flash and CS0 for RAM (don't know details of SA1100/iPAQ)
You have to use the special MTD device that talks to system RAM. Again, I don't know the details, but menuconfig gives you:
RAM/ROM/Flash chip drivers
Support for RAM chips in bus mapping
Self-contained MTD device drivers
Uncached system RAM (NEW)
The former sounds like RAM on expansion bus, the latter seems to be what you are looking for.
Now: is the RAM battery backed, or not? If not, you want to use the flash as nonvolatile disk - otherwise there would be no need to restart the system and hence a normal RAM disk would be nonvolatile.
Quoted 35 lines · Erez Doron
Quoted 33 lines
hi
thanks for replying,
I already tried to map an MTD to physical memory, but got an error and an mtd with size 0
dou you know why ?
regards
erezQuoted 20 lines · Peter Wächtler
Quoted 6 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
Quoted 9 lines
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
a MTD is the way to go, which uses the "reserved" mem area. I assume that the RAM is battery backed
-
Quoted 18 lines · Peter Wächtler
Quoted 17 lines · Erez Doron
the exact log i get:
Creating 3 MTD partitions on "SA1100 flash":
0x00000000-0x00040000 : "bootldr"
mtd: Giving out device 0 to bootldr
0x00040000-0x02000000 : "root"
mtd: Giving out device 1 to root
0xc2000000-0xc4000000 : "rd"
mtd: partition "rd" is out of reach -- disablednotes:
1. the flash is at physical adress 0-0x1ffffff (32mb)
2. the ram is at physical adress 0xc0000000-0xc3ffffff
i tried to map an mtd device to the second part of the ram, but got "partition is out of reach"
Quoted 5 lines
Quoted 1 line
any idea ?
you are confusing the address space of the kernel (starting with 3GB [
0xc0000000]) with the addresses of the RAM (the upper 32MB starts at0x2000000)
no, i do not ( compaq document says the ram starts at 0xc0000000, i also verified it by doing peek and poke via the bootloader)
Quoted 12 lines
Then there will be some CS (chip selects) to distinguish what "bus address space" to use. Like CS1 for Flash and CS0 for RAM (don't know details of SA1100/iPAQ)
You have to use the special MTD device that talks to system RAM. Again, I don't know the details, but menuconfig gives you:
RAM/ROM/Flash chip drivers
Support for RAM chips in bus mappingSelf-contained MTD device drivers
Uncached system RAM (NEW)
Quoted 7 lines
The former sounds like RAM on expansion bus, the latter seems to be what you are looking for.
Now: is the RAM battery backed, or not? If not, you want to use the flash as nonvolatile disk - otherwise there would be no need to restart the system and hence a normal RAM disk would be nonvolatile.
yes it is
thanks anyway
erez.
Quoted 36 lines
Quoted 36 lines · Erez Doron
Quoted 33 lines
hi
thanks for replying,
I already tried to map an MTD to physical memory, but got an error and an mtd with size 0
dou you know why ?
regards
erezQuoted 20 lines · Peter Wächtler
Quoted 6 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
Quoted 9 lines
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
a MTD is the way to go, which uses the "reserved" mem area. I assume that the RAM is battery backed
-
solved: ( was Re: non volatile ram disk)
In reply to Erez Doronwell, i finanly managed to make a ramdisk which will not earsed by reboot.
the solution is to give mem=32m, and use ioremap to map the rest of the 32m to virtual adresses
now it works !!!
thanks anyway
erez.
Quoted 23 lines · Erez Doron
hi
I'm looking for a way to make a ramdisk which is not erased on reboot this is for use with ipaq/linux.
i tought of booting with mem=32m and map a block device to the rest of the 32M ram i have.
the probelm is that giving mem=32m to the kernel will cause the kernel to map only the first 32m of physical memory to virtual one, so using
__pa(ptr)on the top 32m causes a kernel oops.any idea ?
regards
erez.-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/