diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-19 15:47:41 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-19 15:47:41 -0500 |
commit | ca2a88f56aa385890c7fd4ce9d2722b0848ca990 (patch) | |
tree | 935fd9cec938677d6529db203f24d803ed5f0b19 /include/linux/mtd/doc2000.h | |
parent | 3935e89505a1c3ab3f3b0c7ef0eae54124f48905 (diff) | |
parent | d4d4f1bf6a343b25220fdcdf559fd593dd3e25a7 (diff) |
Merge tag 'for-linus-20121219' of git://git.infradead.org/linux-mtd
Pull MTD updates from David Woodhouse:
- Various cleanups especially in NAND tests
- Add support for NAND flash on BCMA bus
- DT support for sh_flctl and denali NAND drivers
- Kill obsolete/superceded drivers (fortunet, nomadik_nand)
- Fix JFFS2 locking bug in ENOMEM failure path
- New SPI flash chips, as usual
- Support writing in 'reliable mode' for DiskOnChip G4
- Debugfs support in nandsim
* tag 'for-linus-20121219' of git://git.infradead.org/linux-mtd: (96 commits)
mtd: nand: typo in nand_id_has_period() comments
mtd: nand/gpio: use io{read,write}*_rep accessors
mtd: block2mtd: throttle writes by calling balance_dirty_pages_ratelimited.
mtd: nand: gpmi: reset BCH earlier, too, to avoid NAND startup problems
mtd: nand/docg4: fix and improve read of factory bbt
mtd: nand/docg4: reserve bb marker area in ecclayout
mtd: nand/docg4: add support for writing in reliable mode
mtd: mxc_nand: reorder part_probes to let cmdline override other sources
mtd: mxc_nand: fix unbalanced clk_disable() in error path
mtd: nandsim: Introduce debugfs infrastructure
mtd: physmap_of: error checking to prevent a NULL pointer dereference
mtg: docg3: potential divide by zero in doc_write_oob()
mtd: bcm47xxnflash: writing support
mtd: tests/read: initialize buffer for whole next page
mtd: at91: atmel_nand: return bit flips for the PMECC read_page()
mtd: fix recovery after failed write-buffer operation in cfi_cmdset_0002.c
mtd: nand: onfi need to be probed in 8 bits mode
mtd: nand: add NAND_BUSWIDTH_AUTO to autodetect bus width
mtd: nand: print flash size during detection
mted: nand_wait_ready timeout fix
...
Diffstat (limited to 'include/linux/mtd/doc2000.h')
-rw-r--r-- | include/linux/mtd/doc2000.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/include/linux/mtd/doc2000.h b/include/linux/mtd/doc2000.h index 0f6fea73a1f6..407d1e556c39 100644 --- a/include/linux/mtd/doc2000.h +++ b/include/linux/mtd/doc2000.h | |||
@@ -92,12 +92,26 @@ | |||
92 | * Others use readb/writeb | 92 | * Others use readb/writeb |
93 | */ | 93 | */ |
94 | #if defined(__arm__) | 94 | #if defined(__arm__) |
95 | #define ReadDOC_(adr, reg) ((unsigned char)(*(volatile __u32 *)(((unsigned long)adr)+((reg)<<2)))) | 95 | static inline u8 ReadDOC_(u32 __iomem *addr, unsigned long reg) |
96 | #define WriteDOC_(d, adr, reg) do{ *(volatile __u32 *)(((unsigned long)adr)+((reg)<<2)) = (__u32)d; wmb();} while(0) | 96 | { |
97 | return __raw_readl(addr + reg); | ||
98 | } | ||
99 | static inline void WriteDOC_(u8 data, u32 __iomem *addr, unsigned long reg) | ||
100 | { | ||
101 | __raw_writel(data, addr + reg); | ||
102 | wmb(); | ||
103 | } | ||
97 | #define DOC_IOREMAP_LEN 0x8000 | 104 | #define DOC_IOREMAP_LEN 0x8000 |
98 | #elif defined(__ppc__) | 105 | #elif defined(__ppc__) |
99 | #define ReadDOC_(adr, reg) ((unsigned char)(*(volatile __u16 *)(((unsigned long)adr)+((reg)<<1)))) | 106 | static inline u8 ReadDOC_(u16 __iomem *addr, unsigned long reg) |
100 | #define WriteDOC_(d, adr, reg) do{ *(volatile __u16 *)(((unsigned long)adr)+((reg)<<1)) = (__u16)d; wmb();} while(0) | 107 | { |
108 | return __raw_readw(addr + reg); | ||
109 | } | ||
110 | static inline void WriteDOC_(u8 data, u16 __iomem *addr, unsigned long reg) | ||
111 | { | ||
112 | __raw_writew(data, addr + reg); | ||
113 | wmb(); | ||
114 | } | ||
101 | #define DOC_IOREMAP_LEN 0x4000 | 115 | #define DOC_IOREMAP_LEN 0x4000 |
102 | #else | 116 | #else |
103 | #define ReadDOC_(adr, reg) readb((void __iomem *)(adr) + (reg)) | 117 | #define ReadDOC_(adr, reg) readb((void __iomem *)(adr) + (reg)) |