RetroBSD

2.11BSD operating system for microcontrollers
It is currently Sun Mar 26, 2017 9:13 am

All times are UTC




Post new topic Reply to topic  [ 94 posts ]  Go to page Previous  1, 2, 3, 4, 5
Author Message
PostPosted: Sat Sep 29, 2012 3:48 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
@madscifi: how you can access both swap and fs with a single adjust in swstrategy? How the system accesses the blocks below adj?

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 4:09 pm 
Committer
User avatar

Joined: Thu Oct 11, 2012 8:45 am
Posts: 1785
Location: Room 217, Floor 8, Arm 8, Wheel S7, Mars Base Alpha 3
Right... So I have basic partitioning working. It only works with the "LBA" values in the partition table, but Linux "fdisk" creates those fine. What is the next task for this then?

SD card reading/writing isn't quite stable - it does tend to completely shit itself sometimes, and there is no checking for failures as yet, so that needs implementing. Also, I need to make character /dev/rrd* entries for fdisk to work properly. And then there is the swap device. I have nothing here to test with, so I'm going to want some collaboration with this bit I think.

What the first thing I should do, I think, is create a branch in SVN for this, so that you can both try it out and contribute to it. We need to port/write drivers for the various swap devices. The interface is somewhat simpler now than it was, due to the fact that the rdisk device handles the strategy side of things and just makes block read/write requests. I'm going to port my flash disk device to it as well at some point.

_________________
Why not visit my eBay shop? http://stores.ebay.co.uk/Majenko-Technologies
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 4:44 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
OK let us see the branch..
PS: you mean ramdisk devices ? Let us call the physical external sram/sdram/mram/fram device "ramdisk" as I am lost otherwise :)

So we need to integrate the sram(cpld) ramdisk via a simpler driver..

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 4:56 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
So the driver's names shall follow some standards - ie
sramc.c (sram cpld)
sramp.c (sram par io)
sdramp.c (sdram io)
mrams.c (mram spi)
mramp.c (mram io)
srams.c (sram spi)
frams.c (fram spi)
... or something like that..

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 4:58 pm 
Committer
User avatar

Joined: Thu Oct 11, 2012 8:45 am
Posts: 1785
Location: Room 217, Floor 8, Arm 8, Wheel S7, Mars Base Alpha 3
I guess they can - there's no requirement for them to. SD is still sd.c at the moment.

I'm just going to start a new thread for this.

_________________
Why not visit my eBay shop? http://stores.ebay.co.uk/Majenko-Technologies
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 5:06 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
I mean "our" standards - sd.c stays sd.c of course, but we may have 4 ramdisks live next week - sram_cpld (pito), sdram (madscifi), mram (majenko), serial_sram (jaromir?)..
So we need the names for all the HW variants of the Ramdisks.

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sat Sep 29, 2012 5:20 pm 
Committer
User avatar

Joined: Thu Oct 11, 2012 8:45 am
Posts: 1785
Location: Room 217, Floor 8, Arm 8, Wheel S7, Mars Base Alpha 3
sd.c might change to rd_sd.c, and rd_flash.c might appear.

rd (in the context of the driver) isn't ramdisk, it's RetroDisk. ;) A global umbrella for all block storage devices that support partitioning.

_________________
Why not visit my eBay shop? http://stores.ebay.co.uk/Majenko-Technologies
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".


Top
 Profile  
 
PostPosted: Sun Sep 30, 2012 1:09 am 
Committer

Joined: Thu Nov 08, 2012 3:55 am
Posts: 177
Pito, adj is only set to a non-zero value in the case that the request is for minor device 1. So for requests on minor device 0 adj is 0, for minor device 1 adj is 2050.


Top
 Profile  
 
PostPosted: Sun Sep 30, 2012 2:06 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
I see, it means you have modified the swap.c in order to select between minor 1 and minor 0 (as I do not see it in the original, therefore my Q).

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sun Sep 30, 2012 5:50 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2392
Location: Rapa Nui
@madscifi - I would better call your driver

sdramp.c (external sdram ramdisk with parallel io interface)

instead of swapsdram (because it is not swap but ramdisk..)

_________________
Pukao hats cleaning services


Top
 Profile  
 
PostPosted: Sun Sep 30, 2012 6:08 am 
Committer

Joined: Thu Nov 08, 2012 3:55 am
Posts: 177
Pito, change made.

However, it still depends on the SWAPSZ. I'll change this when the new partition code you and majenko are working is ready.


Top
 Profile  
 
PostPosted: Thu Oct 11, 2012 10:17 am 
Committer

Joined: Thu Nov 08, 2012 3:55 am
Posts: 177
Current wiring diagram from the sdram:

http://andaquartergetsyoucoffee.com/images/sdram-partition-r639.png

Note that this is for use with the configuration in sys/pic32/ubw32-uart-sdram folder within the partition branch of the library - specifically with r639. Earlier versions used a slightly different layout. This does NOT match the layout required for the version in the sdram branch. I expect this to change at some point in the future if a version supporting 16 bit data transfers is made.


Top
 Profile  
 
PostPosted: Thu Oct 11, 2012 9:15 pm 
Contributor

Joined: Mon Nov 12, 2012 1:34 pm
Posts: 1076
Hi Madscifi,

Thanks.

I just printed it.

Somehow I forgot about the whole issue of DDR supply voltages.

Is this chip still being manufactured? Are their other 3.3V chips of higher density that we should look at? Are there other approaches we should look at?

I am thinking that Spartan 6 plus DDR3 might be worth a look?

Wiz




Top
 Profile  
 
PostPosted: Fri Oct 12, 2012 10:18 am 
Committer

Joined: Thu Nov 08, 2012 3:55 am
Posts: 177
Most 3.3v SDRAM chips should work, i think, although some parameter changes might be necessary depending on the configuration of the specific chip.

You can order a new AS4C8M16S128 for about $1.70 each and it should be a direct drop-in, although I don't have one to try at the moment. There are larger and smaller sizes of the AS4C4M16S family and any of them should be easily supported. The code needs some improvements to make changing sizes easier, but they changes needed are straightforward.

If your interest is to learn about or experiment with FPGAs then by all means it would be a nice project to build a fast interface through the FPGA to the SDRAM, but from a practical standpoint I don't think it is cost effective. My interest in working on the SDRAM interface was to get swap off of the sd card as inexpensively as possible.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 94 posts ]  Go to page Previous  1, 2, 3, 4, 5

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
cron




Powered by phpBB® Forum Software © phpBB Group

BSD Daemon used with permission