Re: What device for ROMFS ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tracked by :

https://github.com/mfld-fr/elks/issues/2

MFLD



Le 27/05/2016 à 00:36, Juan Perez-Sanchez a écrit :
Looks good. That would be an interesting contribution to this project.
Later, you could add Execute In Place (XIP) to this modified ROMFS.

Juan


On Thu, May 26, 2016 at 2:20 AM, Marc-F. LUCCA-DANIAU <mfld.fr@xxxxxxxxx> wrote:
Thanks Juan for that info.

It helped me to find some missing #define in the setup configuration
reading.
I will commit the related fixes later (because not so many people using ROM
boot for ELKS :-)).

Coding a fresh new block device is one solution, but the ROM is by nature a
flat and linear device (except when erasing / writting).

So I would rather refactor the existing ROMFS to directly pick data from a
given area in the ROM, and that area to be described in the ELKS config,
like the other ROM options.

Does it make sense ?

MFLD


Le 24/05/2016 01:07, Juan Perez-Sanchez a écrit :

Hello:

For the standard case, the root device is defined by the
arch/i86/tools/build program (see Documentation/text/boot.txt). The
device number is saved in bytes 508,509 of boot sector.

After booting, the root device number is read from that location into
the ROOT_DEV variable by the function setup_arch() in
arch/i86/kernel/system.c.

Maybe the mkbootloader does not define the root device as expected by
the kernel.

In addition, you will have to write a ROM block device driver. Also, I
think romfs for ELKS never reached a working status.

Juan


On Mon, May 23, 2016 at 12:09 PM, Marc-F. LUCCA-DANIAU
<mfld.fr@xxxxxxxxx> wrote:

Hello,

In a few words: what is the device to be used for a ROMFS root ?

More: I configured ELKS as a ROM image for an embedded system, and I run it
under EMU86, but I cannot figure out:

1- how to tell ELKS to read the ROMFS superblock from ROM address space?
2- how to build a ROMFS image to put in the ROM address space?

All my tries end up with the well known:

$ ./emu86 -w 0xe0000 -f ../../elks/elks/arch/i86/Image -x 0xe000:0x42 -i

$ ./pcat `cat emu86.pts`
Loading kernel image...
Console: BIOS 10x115 emulating ANSI (3 virtual consoles)
PC/AT class machine, inode! CPU8308K base RAM, CPUID `nd socket for in'.
ELKS kernel (39008 text + 4168 data + 48648 bss)
Kernel text at e062:0000, data at 90:0000 62 K of memory for user processes.
ELKS network sockets
TCP/IP stack by Harry Kalogirou
ELKS version 0.2.0
panic: VFS: Unable to mount root fs on 206D
apparent call stack:
Line: Addr    Parameters~~~~: ~~~~    ~~~~~~~~~~
    0: 1D59 => 0000 7102 0000 0000 0000 0000 0000
    1: 00B7 => 0000 0000 0000 0000 0000 0000 0000
    2: 0000 => CE50 0000 0000 0001 0000 6166 6C69
    3: 1048 => 0000 0000 0000 0000 0000 0000 0000
    4: 0000 => CE50 0000 0000 0001 0000 6166 6C69
    5: 1048 => 0000 0000 0000 0000 0000 0000 0000
    6: 0000 => CE50 0000 0000 0001 0000 6166 6C69
    7: 1048 => 0000 0000 0000 0000 0000 0000 0000
    8: 0000 => CE50 0000 0000 0001 0000 6166 6C69
SYSTEM LOCKED - Press CTRL-ALT-DEL to reboot:

Any suggestion ?

Thanks,

MFLD

--
To unsubscribe from this list: send the line "unsubscribe linux-8086" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



--
To unsubscribe from this list: send the line "unsubscribe linux-8086" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel]     [Linux ia64]     [DCCP]     [Linux for ARM]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux