Skip to contentSkip to conversation

DISCONTIGMEM suuport on 32 bits MIPS

DISCUSSION Franck 2 participants 7 messages Sep 26, 2005 – Sep 30, 2005 MIPS

lore
Share & tools
lore

Franck

author
#0 lore raw

Hi,

I'm working on a port of 32bit MIPS to a custom board with several large holes in the memory map. I would like to know the status of discontiguous memory on MIPS. I have noticed that ip27 Kconfig enables this feature but I don't see any MIPS generic code that handles it...

Has anybody already done this ? If not then I'll try to work out what needed from the corresponding i386 code, but I'd appreciate any pointers.

Thanks
--
Franck

#1 lore raw
Quoted 4 lines · Franck

I'm working on a port of 32bit MIPS to a custom board with several large holes in the memory map. I would like to know the status of discontiguous memory on MIPS. I have noticed that ip27 Kconfig enables this feature but I don't see any MIPS generic code that handles it...

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Quoted 3 lines

Has anybody already done this ? If not then I'll try to work out what needed from the corresponding i386 code, but I'd appreciate any pointers.

See IP27. IP27 has one added extra complexity, it's a NUMA system but you can ignore that.

Ralf

author
#2 lore raw

Hi Ralf,

2005/9/26, Ralf Baechle <[email protected]>:

Quoted 7 lines · Franck
Quoted 5 lines

I'm working on a port of 32bit MIPS to a custom board with several large holes in the memory map. I would like to know the status of discontiguous memory on MIPS. I have noticed that ip27 Kconfig enables this feature but I don't see any MIPS generic code that handles it...

Quoted 5 lines

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Isn't discontiguous memory common for embedded system as well ? I thought so...Anyways can we make discontiguous memory thing move into generic MIPS code so every future needs for that will profit ? I looked at other arch, and they seem to implement it that way (in arch/xxx/mm/discontig.c).

Thanks
--
Franck

#3 lore raw
Quoted 10 lines · Franck
Quoted 4 lines

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Isn't discontiguous memory common for embedded system as well ? I thought so...Anyways can we make discontiguous memory thing move into generic MIPS code so every future needs for that will profit ? I looked at other arch, and they seem to implement it that way (in arch/xxx/mm/discontig.c).

Yes, that would be a good thing. There are several platforms that could make good use of discontiguous memory support such as Broadcom's Sibyte SoCs with their insanely large hole in the memory map but also others.

Ralf

author
#4 lore raw

2005/9/30, Ralf Baechle <[email protected]>:

Quoted 13 lines · Franck
Quoted 11 lines
Quoted 5 lines

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Isn't discontiguous memory common for embedded system as well ? I thought so...Anyways can we make discontiguous memory thing move into generic MIPS code so every future needs for that will profit ? I looked at other arch, and they seem to implement it that way (in arch/xxx/mm/discontig.c).

Quoted 4 lines

Yes, that would be a good thing. There are several platforms that could make good use of discontiguous memory support such as Broadcom's Sibyte SoCs with their insanely large hole in the memory map but also others.

Ok I'll try to do that soon (maybe in 1 or 2 weeks). I looked at the ARM's code and I should be able to do the same on MIPS. Should I keep IP27 data structure and code although ARM's ones seem to be easier to understand ?

Thanks
--
Franck

#5 lore raw
Quoted 16 lines · Franck
Quoted 11 lines
Quoted 10 lines
Quoted 4 lines

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Isn't discontiguous memory common for embedded system as well ? I thought so...Anyways can we make discontiguous memory thing move into generic MIPS code so every future needs for that will profit ? I looked at other arch, and they seem to implement it that way (in arch/xxx/mm/discontig.c).

Quoted 4 lines

Yes, that would be a good thing. There are several platforms that could make good use of discontiguous memory support such as Broadcom's Sibyte SoCs with their insanely large hole in the memory map but also others.

Quoted 4 lines

Ok I'll try to do that soon (maybe in 1 or 2 weeks). I looked at the ARM's code and I should be able to do the same on MIPS. Should I keep IP27 data structure and code although ARM's ones seem to be easier to understand ?

The IP27 code is a little obscure which partly is explained by it's age; it's been the first NUMA system to be supported in Linux. After a quick look the ARM code seems a little to simple to deal with such a system, so I suggest you take a look at arch/ia64/mm/discontig.c instead.

Ralf

author
#6 lore raw

2005/9/30, Ralf Baechle <[email protected]>:

Quoted 23 lines · Franck
Quoted 17 lines
Quoted 12 lines
Quoted 11 lines
Quoted 5 lines

IP27 currently the only system that absolutely needs discontiguous memory in order to work at all. A few other systems could make use of discontiguous memory to reduce the waste of memory - the family of Broadcom SB1 based systems comes to mind.

Isn't discontiguous memory common for embedded system as well ? I thought so...Anyways can we make discontiguous memory thing move into generic MIPS code so every future needs for that will profit ? I looked at other arch, and they seem to implement it that way (in arch/xxx/mm/discontig.c).

Quoted 4 lines

Yes, that would be a good thing. There are several platforms that could make good use of discontiguous memory support such as Broadcom's Sibyte SoCs with their insanely large hole in the memory map but also others.

Quoted 4 lines

Ok I'll try to do that soon (maybe in 1 or 2 weeks). I looked at the ARM's code and I should be able to do the same on MIPS. Should I keep IP27 data structure and code although ARM's ones seem to be easier to understand ?

Quoted 5 lines

The IP27 code is a little obscure which partly is explained by it's age; it's been the first NUMA system to be supported in Linux. After a quick look the ARM code seems a little to simple to deal with such a system, so I suggest you take a look at arch/ia64/mm/discontig.c instead.

Ok, I'll do that.

Thanks
--
Franck