Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 54425
b: refs/heads/master
c: 9fa0853
h: refs/heads/master
i:
  54423: a152366
v: v3
  • Loading branch information
Linus Torvalds committed May 7, 2007
1 parent 5d37858 commit dabc8dd
Show file tree
Hide file tree
Showing 800 changed files with 71,567 additions and 6,142 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: cf4328cd949c2086091c62c5685f1580fe9b55e4
refs/heads/master: 9fa0853a85a3a4067e4ad0aaa5d90984c2dd21b5
11 changes: 11 additions & 0 deletions trunk/Documentation/blackfin/00-INDEX
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
00-INDEX
- This file

cache-lock.txt
- HOWTO for blackfin cache locking.

cachefeatures.txt
- Supported cache features.

Filesystems
- Requirements for mounting the root file system.
169 changes: 169 additions & 0 deletions trunk/Documentation/blackfin/Filesystems
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
/*
* File: Documentation/blackfin/Filesystems
* Based on:
* Author:
*
* Created:
* Description: This file contains the simple DMA Implementation for Blackfin
*
* Rev: $Id: Filesystems 2384 2006-11-01 04:12:43Z magicyang $
*
* Modified:
* Copyright 2004-2006 Analog Devices Inc.
*
* Bugs: Enter bugs at http://blackfin.uclinux.org/
*
*/

How to mount the root file system in uClinux/Blackfin
-----------------------------------------------------

1 Mounting EXT3 File system.
------------------------

Creating an EXT3 File system for uClinux/Blackfin:


Please follow the steps to form the EXT3 File system and mount the same as root
file system.

a Make an ext3 file system as large as you want the final root file
system.

mkfs.ext3 /dev/ram0 <your-rootfs-size-in-1k-blocks>

b Mount this Empty file system on a free directory as:

mount -t ext3 /dev/ram0 ./test
where ./test is the empty directory.

c Copy your root fs directory that you have so carefully made over.

cp -af /tmp/my_final_rootfs_files/* ./test

(For ex: cp -af uClinux-dist/romfs/* ./test)

d If you have done everything right till now you should be able to see
the required "root" dir's (that's etc, root, bin, lib, sbin...)

e Now unmount the file system

umount ./test

f Create the root file system image.

dd if=/dev/ram0 bs=1k count=<your-rootfs-size-in-1k-blocks> \
> ext3fs.img


Now you have to tell the kernel that will be mounting this file system as
rootfs.
So do a make menuconfig under kernel and select the Ext3 journaling file system
support under File system --> submenu.


2. Mounting EXT2 File system.
-------------------------

By default the ext2 file system image will be created if you invoke make from
the top uClinux-dist directory.


3. Mounting CRAMFS File System
----------------------------

To create a CRAMFS file system image execute the command

mkfs.cramfs ./test cramfs.img

where ./test is the target directory.


4. Mounting ROMFS File System
--------------------------

To create a ROMFS file system image execute the command

genromfs -v -V "ROMdisk" -f romfs.img -d ./test

where ./test is the target directory


5. Mounting the JFFS2 Filesystem
-----------------------------

To create a compressed JFFS filesystem (JFFS2), please execute the command

mkfs.jffs2 -d ./test -o jffs2.img

where ./test is the target directory.

However, please make sure the following is in your kernel config.

/*
* RAM/ROM/Flash chip drivers
*/
#define CONFIG_MTD_CFI 1
#define CONFIG_MTD_ROM 1
/*
* Mapping drivers for chip access
*/
#define CONFIG_MTD_COMPLEX_MAPPINGS 1
#define CONFIG_MTD_BF533 1
#undef CONFIG_MTD_UCLINUX

Through the u-boot boot loader, use the jffs2.img in the corresponding
partition made in linux-2.6.x/drivers/mtd/maps/bf533_flash.c.

NOTE - Currently the Flash driver is available only for EZKIT. Watch out for a
STAMP driver soon.


6. Mounting the NFS File system
-----------------------------

For mounting the NFS please do the following in the kernel config.

In Networking Support --> Networking options --> TCP/IP networking -->
IP: kernel level autoconfiguration

Enable BOOTP Support.

In Kernel hacking --> Compiled-in kernel boot parameter add the following

root=/dev/nfs rw ip=bootp

In File system --> Network File system, Enable

NFS file system support --> NFSv3 client support
Root File system on NFS

in uClibc menuconfig, do the following
In Networking Support
enable Remote Procedure Call (RPC) support
Full RPC Support

On the Host side, ensure that /etc/dhcpd.conf looks something like this

ddns-update-style ad-hoc;
allow bootp;
subnet 10.100.4.0 netmask 255.255.255.0 {
default-lease-time 122209600;
max-lease-time 31557600;
group {
host bf533 {
hardware ethernet 00:CF:52:49:C3:01;
fixed-address 10.100.4.50;
option root-path "/home/nfsmount";
}
}

ensure that /etc/exports looks something like this
/home/nfsmount *(rw,no_root_squash,no_all_squash)

run the following commands as root (may differ depending on your
distribution) :
- service nfs start
- service portmap start
- service dhcpd start
- /usr/sbin/exportfs
48 changes: 48 additions & 0 deletions trunk/Documentation/blackfin/cache-lock.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
/*
* File: Documentation/blackfin/cache-lock.txt
* Based on:
* Author:
*
* Created:
* Description: This file contains the simple DMA Implementation for Blackfin
*
* Rev: $Id: cache-lock.txt 2384 2006-11-01 04:12:43Z magicyang $
*
* Modified:
* Copyright 2004-2006 Analog Devices Inc.
*
* Bugs: Enter bugs at http://blackfin.uclinux.org/
*
*/

How to lock your code in cache in uClinux/blackfin
--------------------------------------------------

There are only a few steps required to lock your code into the cache.
Currently you can lock the code by Way.

Below are the interface provided for locking the cache.


1. cache_grab_lock(int Ways);

This function grab the lock for locking your code into the cache specified
by Ways.


2. cache_lock(int Ways);

This function should be called after your critical code has been executed.
Once the critical code exits, the code is now loaded into the cache. This
function locks the code into the cache.


So, the example sequence will be:

cache_grab_lock(WAY0_L); /* Grab the lock */

critical_code(); /* Execute the code of interest */

cache_lock(WAY0_L); /* Lock the cache */

Where WAY0_L signifies WAY0 locking.
65 changes: 65 additions & 0 deletions trunk/Documentation/blackfin/cachefeatures.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
/*
* File: Documentation/blackfin/cachefeatures.txt
* Based on:
* Author:
*
* Created:
* Description: This file contains the simple DMA Implementation for Blackfin
*
* Rev: $Id: cachefeatures.txt 2384 2006-11-01 04:12:43Z magicyang $
*
* Modified:
* Copyright 2004-2006 Analog Devices Inc.
*
* Bugs: Enter bugs at http://blackfin.uclinux.org/
*
*/

- Instruction and Data cache initialization.
icache_init();
dcache_init();

- Instruction and Data cache Invalidation Routines, when flushing the
same is not required.
_icache_invalidate();
_dcache_invalidate();

Also, for invalidating the entire instruction and data cache, the below
routines are provided (another method for invalidation, refer page no 267 and 287 of
ADSP-BF533 Hardware Reference manual)

invalidate_entire_dcache();
invalidate_entire_icache();

-External Flushing of Instruction and data cache routines.

flush_instruction_cache();
flush_data_cache();

- Internal Flushing of Instruction and Data Cache.

icplb_flush();
dcplb_flush();

- Locking the cache.

cache_grab_lock();
cache_lock();

Please refer linux-2.6.x/Documentation/blackfin/cache-lock.txt for how to
lock the cache.

Locking the cache is optional feature.

- Miscellaneous cache functions.

flush_cache_all();
flush_cache_mm();
invalidate_dcache_range();
flush_dcache_range();
flush_dcache_page();
flush_cache_range();
flush_cache_page();
invalidate_dcache_range();
flush_page_to_ram();

31 changes: 16 additions & 15 deletions trunk/Documentation/filesystems/proc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -122,21 +122,22 @@ subdirectory has the entries listed in Table 1-1.

Table 1-1: Process specific entries in /proc
..............................................................................
File Content
cmdline Command line arguments
cpu Current and last cpu in which it was executed (2.4)(smp)
cwd Link to the current working directory
environ Values of environment variables
exe Link to the executable of this process
fd Directory, which contains all file descriptors
maps Memory maps to executables and library files (2.4)
mem Memory held by this process
root Link to the root directory of this process
stat Process status
statm Process memory status information
status Process status in human readable form
wchan If CONFIG_KALLSYMS is set, a pre-decoded wchan
smaps Extension based on maps, presenting the rss size for each mapped file
File Content
clear_refs Clears page referenced bits shown in smaps output
cmdline Command line arguments
cpu Current and last cpu in which it was executed (2.4)(smp)
cwd Link to the current working directory
environ Values of environment variables
exe Link to the executable of this process
fd Directory, which contains all file descriptors
maps Memory maps to executables and library files (2.4)
mem Memory held by this process
root Link to the root directory of this process
stat Process status
statm Process memory status information
status Process status in human readable form
wchan If CONFIG_KALLSYMS is set, a pre-decoded wchan
smaps Extension based on maps, the rss size for each mapped file
..............................................................................

For example, to get the status information of a process, all you have to do is
Expand Down
30 changes: 30 additions & 0 deletions trunk/Documentation/pcmcia/driver.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
PCMCIA Driver
-------------


sysfs
-----

New PCMCIA IDs may be added to a device driver pcmcia_device_id table at
runtime as shown below:

echo "match_flags manf_id card_id func_id function device_no \
prod_id_hash[0] prod_id_hash[1] prod_id_hash[2] prod_id_hash[3]" > \
/sys/bus/pcmcia/drivers/{driver}/new_id

All fields are passed in as hexadecimal values (no leading 0x).
The meaning is described in the PCMCIA specification, the match_flags is
a bitwise or-ed combination from PCMCIA_DEV_ID_MATCH_* constants
defined in include/linux/mod_devicetable.h.

Once added, the driver probe routine will be invoked for any unclaimed
PCMCIA device listed in its (newly updated) pcmcia_device_id list.

A common use-case is to add a new device according to the manufacturer ID
and the card ID (form the manf_id and card_id file in the device tree).
For this, just use:

echo "0x3 manf_id card_id 0 0 0 0 0 0 0" > \
/sys/bus/pcmcia/drivers/{driver}/new_id

after loading the driver.
8 changes: 6 additions & 2 deletions trunk/Documentation/power/interface.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,12 @@ for 5 seconds, resume devices, unfreeze tasks and enable nonboot CPUs. Then,
we are able to look in the log messages and work out, for example, which code
is being slow and which device drivers are misbehaving.

Reading from this file will display what the mode is currently set
to. Writing to this file will accept one of
Reading from this file will display all supported modes and the currently
selected one in brackets, for example

[shutdown] reboot test testproc

Writing to this file will accept one of

'platform' (only if the platform supports it)
'shutdown'
Expand Down
Loading

0 comments on commit dabc8dd

Please sign in to comment.