Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e0d65113 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.infradead.org/mtd-2.6: (226 commits)
  mtd: tests: annotate as DANGEROUS in Kconfig
  mtd: tests: don't use mtd0 as a default
  mtd: clean up usage of MTD_DOCPROBE_ADDRESS
  jffs2: add compr=lzo and compr=zlib options
  jffs2: implement mount option parsing and compression overriding
  mtd: nand: initialize ops.mode
  mtd: provide an alias for the redboot module name
  mtd: m25p80: don't probe device which has status of 'disabled'
  mtd: nand_h1900 never worked
  mtd: Add DiskOnChip G3 support
  mtd: m25p80: add EON flash EN25Q32B into spi flash id table
  mtd: mark block device queue as non-rotational
  mtd: r852: make r852_pm_ops static
  mtd: m25p80: add support for at25df321a spi data flash
  mtd: mxc_nand: preset_v1_v2: unlock all NAND flash blocks
  mtd: nand: switch `check_pattern()' to standard `memcmp()'
  mtd: nand: invalidate cache on unaligned reads
  mtd: nand: do not scan bad blocks with NAND_BBT_NO_OOB set
  mtd: nand: wait to set BBT version
  mtd: nand: scrub BBT on ECC errors
  ...

Fix up trivial conflicts:
 - arch/arm/mach-at91/board-usb-a9260.c
	Merged into board-usb-a926x.c
 - drivers/mtd/maps/lantiq-flash.c
	add_mtd_partitions -> mtd_device_register vs changed to use
	mtd_device_parse_register.
parents cf5e15fb 48e546b7
Loading
Loading
Loading
Loading
+1 −18
Original line number Diff line number Diff line
@@ -572,7 +572,7 @@ static void board_select_chip (struct mtd_info *mtd, int chip)
			</para>
			<para>
				The simplest way to activate the FLASH based bad block table support 
				is to set the option NAND_USE_FLASH_BBT in the option field of
				is to set the option NAND_BBT_USE_FLASH in the bbt_option field of
				the nand chip structure before calling nand_scan(). For AG-AND
				chips is this done by default.
				This activates the default FLASH based bad block table functionality 
@@ -773,20 +773,6 @@ struct nand_oobinfo {
				done according to the default builtin scheme.
			</para>
		</sect2>
		<sect2 id="User_space_placement_selection">
			<title>User space placement selection</title>
		<para>
			All non ecc functions like mtd->read and mtd->write use an internal 
			structure, which can be set by an ioctl. This structure is preset 
			to the autoplacement default.
	     		<programlisting>
	ioctl (fd, MEMSETOOBSEL, oobsel);
	     		</programlisting>
			oobsel is a pointer to a user supplied structure of type
			nand_oobconfig. The contents of this structure must match the 
			criteria of the filesystem, which will be used. See an example in utils/nandwrite.c.
		</para>
		</sect2>
	</sect1>	
	<sect1 id="Spare_area_autoplacement_default">
		<title>Spare area autoplacement default schemes</title>
@@ -1158,9 +1144,6 @@ in this page</entry>
		These constants are defined in nand.h. They are ored together to describe
		the functionality.
     		<programlisting>
/* Use a flash based bad block table. This option is parsed by the
 * default bad block table function (nand_default_bbt). */
#define NAND_USE_FLASH_BBT	0x00010000
/* The hw ecc generator provides a syndrome instead a ecc value on read 
 * This can only work if we have the ecc bytes directly behind the 
 * data bytes. Applies for DOC and AG-AND Renesas HW Reed Solomon generators */
+14 −0
Original line number Diff line number Diff line
* Atmel Data Flash

Required properties:
- compatible : "atmel,<model>", "atmel,<series>", "atmel,dataflash".

Example:

flash@1 {
	#address-cells = <1>;
	#size-cells = <1>;
	compatible = "atmel,at45db321d", "atmel,at45", "atmel,dataflash";
	spi-max-frequency = <25000000>;
	reg = <1>;
};
+2 −7
Original line number Diff line number Diff line
@@ -130,19 +130,14 @@ static struct mtd_partition __initdata afeb9260_nand_partition[] = {
	},
};

static struct mtd_partition * __init nand_partitions(int size, int *num_partitions)
{
	*num_partitions = ARRAY_SIZE(afeb9260_nand_partition);
	return afeb9260_nand_partition;
}

static struct atmel_nand_data __initdata afeb9260_nand_data = {
	.ale		= 21,
	.cle		= 22,
	.rdy_pin	= AT91_PIN_PC13,
	.enable_pin	= AT91_PIN_PC14,
	.partition_info	= nand_partitions,
	.bus_width_16	= 0,
	.parts		= afeb9260_nand_partition,
	.num_parts	= ARRAY_SIZE(afeb9260_nand_partition),
};


+2 −7
Original line number Diff line number Diff line
@@ -132,19 +132,14 @@ static struct mtd_partition __initdata cam60_nand_partition[] = {
	},
};

static struct mtd_partition * __init nand_partitions(int size, int *num_partitions)
{
	*num_partitions = ARRAY_SIZE(cam60_nand_partition);
	return cam60_nand_partition;
}

static struct atmel_nand_data __initdata cam60_nand_data = {
	.ale		= 21,
	.cle		= 22,
	// .det_pin	= ... not there
	.rdy_pin	= AT91_PIN_PA9,
	.enable_pin	= AT91_PIN_PA7,
	.partition_info	= nand_partitions,
	.parts		= cam60_nand_partition,
	.num_parts	= ARRAY_SIZE(cam60_nand_partition),
};

static struct sam9_smc_config __initdata cam60_nand_smc_config = {
+2 −7
Original line number Diff line number Diff line
@@ -169,19 +169,14 @@ static struct mtd_partition __initdata cap9adk_nand_partitions[] = {
	},
};

static struct mtd_partition * __init nand_partitions(int size, int *num_partitions)
{
	*num_partitions = ARRAY_SIZE(cap9adk_nand_partitions);
	return cap9adk_nand_partitions;
}

static struct atmel_nand_data __initdata cap9adk_nand_data = {
	.ale		= 21,
	.cle		= 22,
//	.det_pin	= ... not connected
//	.rdy_pin	= ... not connected
	.enable_pin	= AT91_PIN_PD15,
	.partition_info	= nand_partitions,
	.parts		= cap9adk_nand_partitions,
	.num_parts	= ARRAY_SIZE(cap9adk_nand_partitions),
};

static struct sam9_smc_config __initdata cap9adk_nand_smc_config = {
Loading