Revision 810198bc9c109489dfadc57131c5183ce6ad2d7d authored by Rajashekhara, Sudhakar on 12 July 2011, 10:28:53 UTC, committed by Sekhar Nori on 07 September 2011, 08:53:01 UTC
DA850/OMAP-L138 EMAC driver uses random mac address instead of
a fixed one because the mac address is not stuffed into EMAC
platform data.

This patch provides a function which reads the mac address
stored in SPI flash (registered as MTD device) and populates the
EMAC platform data. The function which reads the mac address is
registered as a callback which gets called upon addition of MTD
device.

NOTE: In case the MAC address stored in SPI flash is erased, follow
the instructions at [1] to restore it.

[1] http://processors.wiki.ti.com/index.php/GSG:_OMAP-L138_DVEVM_Additional_Procedures#Restoring_MAC_address_on_SPI_Flash

Modifications in v2:
Guarded registering the mtd_notifier only when MTD is enabled.
Earlier this was handled using mtd_has_partitions() call, but
this has been removed in Linux v3.0.

Modifications in v3:
a. Guarded da850_evm_m25p80_notify_add() function and
   da850evm_spi_notifier structure with CONFIG_MTD macros.
b. Renamed da850_evm_register_mtd_user() function to
   da850_evm_setup_mac_addr() and removed the struct mtd_notifier
   argument to this function.
c. Passed the da850evm_spi_notifier structure to register_mtd_user()
   function.

Modifications in v4:
Moved the da850_evm_setup_mac_addr() function within the first
CONFIG_MTD ifdef construct.

Signed-off-by: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Cc: stable@kernel.org
1 parent ddf2835
Raw File
btrfs.txt

	BTRFS
	=====

Btrfs is a new copy on write filesystem for Linux aimed at
implementing advanced features while focusing on fault tolerance,
repair and easy administration. Initially developed by Oracle, Btrfs
is licensed under the GPL and open for contribution from anyone.

Linux has a wealth of filesystems to choose from, but we are facing a
number of challenges with scaling to the large storage subsystems that
are becoming common in today's data centers. Filesystems need to scale
in their ability to address and manage large storage, and also in
their ability to detect, repair and tolerate errors in the data stored
on disk.  Btrfs is under heavy development, and is not suitable for
any uses other than benchmarking and review. The Btrfs disk format is
not yet finalized.

The main Btrfs features include:

    * Extent based file storage (2^64 max file size)
    * Space efficient packing of small files
    * Space efficient indexed directories
    * Dynamic inode allocation
    * Writable snapshots
    * Subvolumes (separate internal filesystem roots)
    * Object level mirroring and striping
    * Checksums on data and metadata (multiple algorithms available)
    * Compression
    * Integrated multiple device support, with several raid algorithms
    * Online filesystem check (not yet implemented)
    * Very fast offline filesystem check
    * Efficient incremental backup and FS mirroring (not yet implemented)
    * Online filesystem defragmentation



	MAILING LIST
	============

There is a Btrfs mailing list hosted on vger.kernel.org. You can
find details on how to subscribe here:

http://vger.kernel.org/vger-lists.html#linux-btrfs

Mailing list archives are available from gmane:

http://dir.gmane.org/gmane.comp.file-systems.btrfs



	IRC
	===

Discussion of Btrfs also occurs on the #btrfs channel of the Freenode
IRC network.



	UTILITIES
	=========

Userspace tools for creating and manipulating Btrfs file systems are
available from the git repository at the following location:

 http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-progs-unstable.git
 git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs-unstable.git

These include the following tools:

mkfs.btrfs: create a filesystem

btrfsctl: control program to create snapshots and subvolumes:

	mount /dev/sda2 /mnt
	btrfsctl -s new_subvol_name /mnt
	btrfsctl -s snapshot_of_default /mnt/default
	btrfsctl -s snapshot_of_new_subvol /mnt/new_subvol_name
	btrfsctl -s snapshot_of_a_snapshot /mnt/snapshot_of_new_subvol
	ls /mnt
	default snapshot_of_a_snapshot snapshot_of_new_subvol
	new_subvol_name snapshot_of_default

	Snapshots and subvolumes cannot be deleted right now, but you can
	rm -rf all the files and directories inside them.

btrfsck: do a limited check of the FS extent trees.

btrfs-debug-tree: print all of the FS metadata in text form.  Example:

	btrfs-debug-tree /dev/sda2 >& big_output_file
back to top