Remove the M-Systems DiskOnChip and the associated fla(4) driver from the solid
state article. The driver was removed in 2004. Transform some tables into regular paragraph to avoid 1-column tables. Approved by: trhodes
This commit is contained in:
parent
43f2d00292
commit
4848522688
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=34028
1 changed files with 13 additions and 141 deletions
|
|
@ -55,12 +55,12 @@
|
|||
|
||||
<copyright>
|
||||
<year>2001</year>
|
||||
<year>2009</year>
|
||||
<holder>The FreeBSD Documentation Project</holder>
|
||||
</copyright>
|
||||
|
||||
<legalnotice id="trademarks" role="trademarks">
|
||||
&tm-attrib.freebsd;
|
||||
&tm-attrib.m-systems;
|
||||
&tm-attrib.general;
|
||||
</legalnotice>
|
||||
|
||||
|
|
@ -109,22 +109,13 @@
|
|||
temperature of the environment.</para>
|
||||
|
||||
<para>Specifically, we will be discussing ATA compatible compact-flash
|
||||
units and the M-Systems &diskonchip; flash memory unit. ATA compatible
|
||||
compact-flash cards are quite popular as storage media for digital
|
||||
units, which are quite popular as storage media for digital
|
||||
cameras. Of particular interest is the fact that they pin out directly
|
||||
to the IDE bus and are compatible with the ATA command set. Therefore,
|
||||
with a very simple and low-cost adaptor, these devices can be attached
|
||||
directly to an IDE bus in a computer. Once implemented in this manner,
|
||||
operating systems such as FreeBSD see the device as a normal hard disk
|
||||
(albeit small). The M-Systems &diskonchip; product is based on the same
|
||||
underlying flash memory technology as ATA compatible compact-flash
|
||||
cards, but resides in a DIP form factor and is not ATA compatible. To
|
||||
use such a device, not only must you install it on a motherboard that
|
||||
has a &diskonchip; socket, you must also build the `fla` driver into any
|
||||
FreeBSD kernel you wish to use it with. Further, there is critical,
|
||||
manufacturer-specific data residing in the boot sector of this device,
|
||||
so you must take care not to install the FreeBSD (or any other) boot
|
||||
loader when using this.</para>
|
||||
(albeit small).</para>
|
||||
|
||||
<para>Other solid state disk solutions do exist, but their expense,
|
||||
obscurity, and relative unease of use places them beyond the scope of
|
||||
|
|
@ -153,11 +144,6 @@
|
|||
<programlisting>options MFS # Memory Filesystem
|
||||
options MD_ROOT # md device usable as a potential root device
|
||||
pseudo-device md # memory disk</programlisting>
|
||||
|
||||
<para>Second, if you will be using the M-Systems &diskonchip; product, you
|
||||
must also include this line:</para>
|
||||
|
||||
<programlisting>device fla0 at isa?</programlisting>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="ro-fs">
|
||||
|
|
@ -250,12 +236,9 @@ pseudo-device md # memory disk</programlisting>
|
|||
<title>Building a File System From Scratch</title>
|
||||
|
||||
<para>Because ATA compatible compact-flash cards are seen by FreeBSD as
|
||||
normal IDE hard drives, as is a M-Systems &diskonchip; product (when you
|
||||
are running a kernel with the fla driver built in) you could
|
||||
normal IDE hard drives, you could
|
||||
theoretically install FreeBSD from the network using the kern and
|
||||
mfsroot floppies or from a CD. Other than the fact that you should not
|
||||
write a boot-loader of any kind to the M-Systems device, no special
|
||||
instructions are needed.</para>
|
||||
mfsroot floppies or from a CD.</para>
|
||||
|
||||
<para>However, even a small installation of FreeBSD using normal
|
||||
installation procedures can produce a system in size of greater than 200
|
||||
|
|
@ -274,11 +257,7 @@ pseudo-device md # memory disk</programlisting>
|
|||
installation is not being performed, operations such as partitioning,
|
||||
labeling, file-system creation, etc. need to be performed by hand. In
|
||||
addition to the kern and mfsroot floppy disks, you will also need to use
|
||||
the fixit floppy. If you are using a M-Systems &diskonchip;, the kernel
|
||||
on your kern floppy must have the <literal>fla</literal> option detailed
|
||||
in <xref linkend="kernel"> compiled into it. Please see
|
||||
<xref linkend="kern.flp"> for instructions on creating a new kernel for
|
||||
<filename>kern.flp</filename>.</para>
|
||||
the fixit floppy.</para>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
|
|
@ -294,9 +273,7 @@ pseudo-device md # memory disk</programlisting>
|
|||
type of the partition, make sure the value is set to
|
||||
<literal>165</literal>. Now write this partition table to the disk
|
||||
by pressing the <keycap>w</keycap> key (this is a hidden option on
|
||||
this screen). When presented with a menu to choose a boot manager,
|
||||
take care to select <literal>None</literal> if you are using an
|
||||
M-Systems &diskonchip;. If you are using an ATA compatible compact
|
||||
this screen). If you are using an ATA compatible compact
|
||||
flash card, you should choose the FreeBSD Boot Manager. Now press
|
||||
the <keycap>q</keycap> key to quit the partition menu. You will be
|
||||
shown the boot manager menu once more - repeat the choice you made
|
||||
|
|
@ -310,35 +287,12 @@ pseudo-device md # memory disk</programlisting>
|
|||
installation menu choose the <literal>fixit</literal> option. After
|
||||
entering the fixit environment, enter the following commands:</para>
|
||||
|
||||
<informaltable frame="none" pgwide="1">
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry align="center">ATA compatible</entry>
|
||||
|
||||
<entry align="center">&diskonchip;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry><para><screen>&prompt.root; <userinput>mknod /dev/ad0a c 116 0</userinput>
|
||||
<para><screen>&prompt.root; <userinput>mknod /dev/ad0a c 116 0</userinput>
|
||||
&prompt.root; <userinput>mknod /dev/ad0c c 116 2</userinput>
|
||||
&prompt.root; <userinput>disklabel -e /dev/ad0c</userinput></screen></para></entry>
|
||||
|
||||
<entry><para><screen>&prompt.root; <userinput>mknod /dev/fla0a c 102 0</userinput>
|
||||
&prompt.root; <userinput>mknod /dev/fla0c c 102 2</userinput>
|
||||
&prompt.root; <userinput>disklabel -e /dev/fla0c</userinput></screen></para></entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
&prompt.root; <userinput>disklabel -e /dev/ad0c</userinput></screen></para>
|
||||
|
||||
<para>At this point you will have entered the vi editor under the
|
||||
auspices of the disklabel command. If you are using &diskonchip;,
|
||||
the first step will be to change the type value near the beginning
|
||||
of the file from <literal>ESDI</literal> to
|
||||
<literal>DOC2K</literal>. Next, regardless of whether you are using
|
||||
&diskonchip; or ATA compatible compact flash media, you need to add
|
||||
auspices of the disklabel command. Next, you need to add
|
||||
an <literal>a:</literal> line at the end of the file. This
|
||||
<literal>a:</literal> line should look like:</para>
|
||||
|
||||
|
|
@ -351,26 +305,8 @@ pseudo-device md # memory disk</programlisting>
|
|||
sure that fstype is <literal>4.2BSD</literal>. Save the file and
|
||||
exit.</para>
|
||||
|
||||
<informaltable frame="none" pgwide="1">
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry align="center">ATA compatible</entry>
|
||||
|
||||
<entry align="center">&diskonchip;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry><para><screen>&prompt.root; <userinput>disklabel -B -r /dev/ad0c</userinput>
|
||||
&prompt.root; <userinput>newfs /dev/ad0a</userinput></screen></para></entry>
|
||||
|
||||
<entry><para><screen>&prompt.root; <userinput>disklabel -B -r /dev/fla0c</userinput>
|
||||
&prompt.root; <userinput>newfs /dev/fla0a</userinput></screen></para></entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
<para><screen>&prompt.root; <userinput>disklabel -B -r /dev/ad0c</userinput>
|
||||
&prompt.root; <userinput>newfs /dev/ad0a</userinput></screen></para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
|
|
@ -378,24 +314,7 @@ pseudo-device md # memory disk</programlisting>
|
|||
|
||||
<para>Mount the newly prepared flash media:</para>
|
||||
|
||||
<informaltable frame="none" pgwide="1">
|
||||
<tgroup cols="2">
|
||||
<thead>
|
||||
<row>
|
||||
<entry align="center">ATA compatible</entry>
|
||||
|
||||
<entry align="center">&diskonchip;</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry><para><screen>&prompt.root; <userinput>mount /dev/ad0a /flash</userinput></screen></para></entry>
|
||||
|
||||
<entry><para><screen>&prompt.root; <userinput>mount /dev/fla0a /flash</userinput></screen></para></entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
<para><screen>&prompt.root; <userinput>mount /dev/ad0a /flash</userinput></screen></para>
|
||||
|
||||
<para>Bring this machine up on the network so we may transfer our tar
|
||||
file and explode it onto our flash media filesystem. One example of
|
||||
|
|
@ -438,53 +357,6 @@ pseudo-device md # memory disk</programlisting>
|
|||
</procedure>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="kern.flp">
|
||||
<title>Building a <filename>kern.flp</filename> Installation Floppy with
|
||||
the fla Driver</title>
|
||||
|
||||
<note>
|
||||
<para>This section of the article is relevant only to those using
|
||||
M-Systems &diskonchip; flash media.</para>
|
||||
</note>
|
||||
|
||||
<para>It is possible that your <filename>kern.flp</filename> boot floppy
|
||||
does not have a kernel with the <devicename>fla</devicename> driver
|
||||
compiled into it necessary for the system to recognize the &diskonchip;.
|
||||
If you have booted off of the installation floppies and are told that no
|
||||
disks are present, then you are probably lacking the
|
||||
<devicename>fla</devicename> driver in your kernel.</para>
|
||||
|
||||
<para>After you have built a kernel with <devicename>fla</devicename>
|
||||
support that is smaller than 1.4 megabytes, you can create a custom
|
||||
<filename>kern.flp</filename> floppy image with it by following these
|
||||
instructions:</para>
|
||||
|
||||
<procedure>
|
||||
<step>
|
||||
<para>Obtain an existing kern.flp image file</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para><screen>&prompt.root; <userinput>vnconfig vn0c kern.flp</userinput></screen></para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para><screen>&prompt.root; <userinput>mount /dev/vn0c /mnt</userinput></screen></para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para>Place your kernel file into <filename>/mnt</filename>, replacing
|
||||
the existing one</para>
|
||||
</step>
|
||||
|
||||
<step>
|
||||
<para><screen>&prompt.root; <userinput>vnconfig -d vn0c</userinput></screen></para>
|
||||
</step>
|
||||
</procedure>
|
||||
|
||||
<para>Your <filename>kern.flp</filename> file now has your new kernel on it.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="strategies">
|
||||
<title>System Strategies for Small and Read Only Environments</title>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue