summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Manning <cdhmanning@gmail.com>2010-12-10 15:56:48 +1300
committerCharles Manning <cdhmanning@gmail.com>2010-12-10 15:56:48 +1300
commit5062df7307f71d3374da87a7c69102dc3f09da28 (patch)
treec66fa287b9e59ddcf7b5e3ef803b52067cb58a4f
parent79d0e028d5b777b2e4cf55d96b737cb024988abe (diff)
yaffs: More cleanup of tracing, inlines and general formatting
Signed-off-by: Charles Manning <cdhmanning@gmail.com>
-rw-r--r--direct/yaffs_list.h10
-rw-r--r--direct/yaffs_nandif.c56
-rw-r--r--direct/ydirectenv.h6
-rw-r--r--direct/yportenv.h177
-rw-r--r--yaffs_bitmap.c2
-rw-r--r--yaffs_getblockinfo.h2
-rw-r--r--yaffs_guts.c2
-rw-r--r--yaffs_verify.c1
-rw-r--r--yportenv_multi.h12
-rw-r--r--yportenv_single.h5
10 files changed, 105 insertions, 168 deletions
diff --git a/direct/yaffs_list.h b/direct/yaffs_list.h
index 624cd5f..6bb4646 100644
--- a/direct/yaffs_list.h
+++ b/direct/yaffs_list.h
@@ -52,7 +52,7 @@ do { \
/* Add an element to a list */
-static Y_INLINE void list_add(struct list_head *new_entry,
+static inline void list_add(struct list_head *new_entry,
struct list_head *list)
{
struct list_head *list_next = list->next;
@@ -64,7 +64,7 @@ static Y_INLINE void list_add(struct list_head *new_entry,
}
-static Y_INLINE void list_add_tail(struct list_head *new_entry,
+static inline void list_add_tail(struct list_head *new_entry,
struct list_head *list)
{
struct list_head *list_prev = list->prev;
@@ -79,7 +79,7 @@ static Y_INLINE void list_add_tail(struct list_head *new_entry,
/* Take an element out of its current list, with or without
* reinitialising the links.of the entry*/
-static Y_INLINE void list_del(struct list_head *entry)
+static inline void list_del(struct list_head *entry)
{
struct list_head *list_next = entry->next;
struct list_head *list_prev = entry->prev;
@@ -89,7 +89,7 @@ static Y_INLINE void list_del(struct list_head *entry)
}
-static Y_INLINE void list_del_init(struct list_head *entry)
+static inline void list_del_init(struct list_head *entry)
{
list_del(entry);
entry->next = entry->prev = entry;
@@ -97,7 +97,7 @@ static Y_INLINE void list_del_init(struct list_head *entry)
/* Test if the list is empty */
-static Y_INLINE int list_empty(struct list_head *entry)
+static inline int list_empty(struct list_head *entry)
{
return (entry->next == entry);
}
diff --git a/direct/yaffs_nandif.c b/direct/yaffs_nandif.c
index f2806e1..e103757 100644
--- a/direct/yaffs_nandif.c
+++ b/direct/yaffs_nandif.c
@@ -39,10 +39,9 @@ int ynandif_WriteChunkWithTagsToNAND(struct yaffs_dev * dev, int nand_chunk,
unsigned spareSize = 0;
ynandif_Geometry *geometry = (ynandif_Geometry *)(dev->driver_context);
- T(YAFFS_TRACE_MTD,
- (TSTR
- ("nandmtd2_WriteChunkWithTagsToNAND chunk %d data %p tags %p"
- TENDSTR), nand_chunk, data, tags));
+ yaffs_trace(YAFFS_TRACE_MTD,
+ "nandmtd2_WriteChunkWithTagsToNAND chunk %d data %p tags %p",
+ nand_chunk, data, tags);
/* For yaffs2 writing there must be both data and tags.
@@ -52,7 +51,8 @@ int ynandif_WriteChunkWithTagsToNAND(struct yaffs_dev * dev, int nand_chunk,
if(dev->param.inband_tags){
struct yaffs_packed_tags2_tags_only *pt2tp;
- pt2tp = (struct yaffs_packed_tags2_tags_only *)(data + dev->data_bytes_per_chunk);
+ pt2tp = (struct yaffs_packed_tags2_tags_only *)
+ (data + dev->data_bytes_per_chunk);
yaffs_pack_tags2_tags_only(pt2tp,tags);
spare = NULL;
spareSize = 0;
@@ -64,7 +64,8 @@ int ynandif_WriteChunkWithTagsToNAND(struct yaffs_dev * dev, int nand_chunk,
}
retval = geometry->writeChunk(dev,nand_chunk,
- data, dev->param.total_bytes_per_chunk, spare, spareSize);
+ data, dev->param.total_bytes_per_chunk,
+ spare, spareSize);
return retval;
}
@@ -80,10 +81,9 @@ int ynandif_ReadChunkWithTagsFromNAND(struct yaffs_dev * dev, int nand_chunk,
int eccStatus; //0 = ok, 1 = fixed, -1 = unfixed
ynandif_Geometry *geometry = (ynandif_Geometry *)(dev->driver_context);
- T(YAFFS_TRACE_MTD,
- (TSTR
- ("nandmtd2_ReadChunkWithTagsFromNAND chunk %d data %p tags %p"
- TENDSTR), nand_chunk, data, tags));
+ yaffs_trace(YAFFS_TRACE_MTD,
+ "nandmtd2_ReadChunkWithTagsFromNAND chunk %d data %p tags %p",
+ nand_chunk, data, tags);
if(!tags){
spare = NULL;
@@ -161,7 +161,8 @@ static int ynandif_IsBlockOk(struct yaffs_dev *dev, int blockId)
return geometry->checkBlockOk(dev,blockId);
}
-int ynandif_QueryNANDBlock(struct yaffs_dev *dev, int blockId, enum yaffs_block_state *state, u32 *seq_number)
+int ynandif_QueryNANDBlock(struct yaffs_dev *dev, int blockId,
+ enum yaffs_block_state *state, u32 *seq_number)
{
unsigned chunkNo;
struct yaffs_ext_tags tags;
@@ -223,23 +224,23 @@ struct yaffs_dev *
strcpy(clonedName,name);
dev->param.name = clonedName;
- dev->param.write_chunk_tags_fn = ynandif_WriteChunkWithTagsToNAND;
+ dev->param.write_chunk_tags_fn = ynandif_WriteChunkWithTagsToNAND;
dev->param.read_chunk_tags_fn = ynandif_ReadChunkWithTagsFromNAND;
- dev->param.erase_fn = ynandif_EraseBlockInNAND;
- dev->param.initialise_flash_fn = ynandif_InitialiseNAND;
- dev->param.query_block_fn = ynandif_QueryNANDBlock;
- dev->param.bad_block_fn = ynandif_MarkNANDBlockBad;
- dev->param.n_caches = 20;
- dev->param.start_block = geometry->start_block;
- dev->param.end_block = geometry->end_block;
- dev->param.total_bytes_per_chunk = geometry->dataSize;
- dev->param.spare_bytes_per_chunk = geometry->spareSize;
- dev->param.inband_tags = geometry->inband_tags;
- dev->param.chunks_per_block = geometry->pagesPerBlock;
- dev->param.use_nand_ecc = geometry->hasECC;
- dev->param.is_yaffs2 = geometry->useYaffs2;
- dev->param.n_reserved_blocks = 5;
- dev->driver_context = (void *)geometry;
+ dev->param.erase_fn = ynandif_EraseBlockInNAND;
+ dev->param.initialise_flash_fn = ynandif_InitialiseNAND;
+ dev->param.query_block_fn = ynandif_QueryNANDBlock;
+ dev->param.bad_block_fn = ynandif_MarkNANDBlockBad;
+ dev->param.n_caches = 20;
+ dev->param.start_block = geometry->start_block;
+ dev->param.end_block = geometry->end_block;
+ dev->param.total_bytes_per_chunk = geometry->dataSize;
+ dev->param.spare_bytes_per_chunk = geometry->spareSize;
+ dev->param.inband_tags = geometry->inband_tags;
+ dev->param.chunks_per_block = geometry->pagesPerBlock;
+ dev->param.use_nand_ecc = geometry->hasECC;
+ dev->param.is_yaffs2 = geometry->useYaffs2;
+ dev->param.n_reserved_blocks = 5;
+ dev->driver_context = (void *)geometry;
yaffs_add_device(dev);
@@ -253,3 +254,4 @@ struct yaffs_dev *
return NULL;
}
+
diff --git a/direct/ydirectenv.h b/direct/ydirectenv.h
index d394c6e..63cd6d8 100644
--- a/direct/ydirectenv.h
+++ b/direct/ydirectenv.h
@@ -47,10 +47,10 @@ void yaffs_qsort(void *aa, size_t n, size_t es,
#define YAFFS_PATH_DIVIDERS "/"
-#ifdef NO_Y_INLINE
-#define Y_INLINE
+#ifdef NO_inline
+#define inline
#else
-#define Y_INLINE __inline__
+#define inline __inline__
#endif
#define kmalloc(x,flags) yaffs_malloc(x)
diff --git a/direct/yportenv.h b/direct/yportenv.h
index 48e32ea..4208e80 100644
--- a/direct/yportenv.h
+++ b/direct/yportenv.h
@@ -17,51 +17,79 @@
#ifndef __YPORTENV_H__
#define __YPORTENV_H__
-/*
- * Define the MTD version in terms of Linux Kernel versions
- * This allows yaffs to be used independantly of the kernel
- * as well as with it.
- */
+/* Definition of types */
+typedef unsigned char u8;
+typedef unsigned short u16;
+typedef unsigned u32;
-#if defined CONFIG_YAFFS_WINCE
-#include "ywinceenv.h"
+#ifndef WIN32
+#include <sys/stat.h>
+#endif
-#elif defined CONFIG_YAFFS_DIRECT
+#ifdef CONFIG_YAFFS_PROVIDE_DEFS
+/* File types */
-/* Direct interface */
-#include "ydirectenv.h"
-#elif defined CONFIG_YAFFS_UTIL
+#define DT_UNKNOWN 0
+#define DT_FIFO 1
+#define DT_CHR 2
+#define DT_DIR 4
+#define DT_BLK 6
+#define DT_REG 8
+#define DT_LNK 10
+#define DT_SOCK 12
+#define DT_WHT 14
-/* Stuff for YAFFS utilities */
-#include "stdlib.h"
-#include "stdio.h"
-#include "string.h"
+#ifndef WIN32
+#include <sys/stat.h>
+#endif
+/*
+ * Attribute flags.
+ * These are or-ed together to select what has been changed.
+ */
+#define ATTR_MODE 1
+#define ATTR_UID 2
+#define ATTR_GID 4
+#define ATTR_SIZE 8
+#define ATTR_ATIME 16
+#define ATTR_MTIME 32
+#define ATTR_CTIME 64
+
+struct iattr {
+ unsigned int ia_valid;
+ unsigned ia_mode;
+ unsigned ia_uid;
+ unsigned ia_gid;
+ unsigned ia_size;
+ unsigned ia_atime;
+ unsigned ia_mtime;
+ unsigned ia_ctime;
+ unsigned int ia_attr_flags;
+};
-#define kmalloc(x) malloc(x)
-#define kfree(x) free(x)
-#define vmalloc(x) malloc(x)
-#define vfree(x) free(x)
+#endif
-#define YCHAR char
-#define YUCHAR unsigned char
-#define _Y(x) x
-#define Y_INLINE inline
-#define YAFFS_LOSTNFOUND_NAME "lost+found"
-#define YAFFS_LOSTNFOUND_PREFIX "obj"
-/* #define YPRINTF(x) printf x */
+#if defined CONFIG_YAFFS_WINCE
-#define YAFFS_ROOT_MODE 0755
-#define YAFFS_LOSTNFOUND_MODE 0700
+#include "ywinceenv.h"
+#elif defined CONFIG_YAFFS_DIRECT
+
+/* Direct interface */
+#include "ydirectenv.h"
+
+#elif defined CONFIG_YAFFS_UTIL
+
+#include "yutilsenv.h"
+
#else
/* Should have specified a configuration type */
#error Unknown configuration
@@ -252,98 +280,11 @@
#ifndef YBUG
#define YBUG() do {\
- T(YAFFS_TRACE_BUG,\
- (TSTR("==>> yaffs bug: " __FILE__ " %d" TENDSTR),\
- __LINE__));\
+ yaffs_trace(YAFFS_TRACE_BUG,\
+ "==>> yaffs bug: " __FILE__ " %d",\
+ __LINE__);\
Y_DUMP_STACK();\
} while (0)
#endif
-
-#endif
-
-/*
- * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
- *
- * Copyright (C) 2002-2010 Aleph One Ltd.
- * for Toby Churchill Ltd and Brightstar Engineering
- *
- * Created by Charles Manning <charles@aleph1.co.uk>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 2.1 as
- * published by the Free Software Foundation.
- *
- * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL.
- */
-
-/*
- * This file is just holds extra declarations of macros that would normally
- * be provided in the Linux kernel. These macros have been written from
- * scratch but are functionally equivalent to the Linux ones.
- *
- */
-
-#ifndef __EXTRAS_H__
-#define __EXTRAS_H__
-
-
-/* Definition of types */
-typedef unsigned char u8;
-typedef unsigned short u16;
-typedef unsigned u32;
-
-
-#ifndef WIN32
-#include <sys/stat.h>
-#endif
-
-
-#ifdef CONFIG_YAFFS_PROVIDE_DEFS
-/* File types */
-
-
-#define DT_UNKNOWN 0
-#define DT_FIFO 1
-#define DT_CHR 2
-#define DT_DIR 4
-#define DT_BLK 6
-#define DT_REG 8
-#define DT_LNK 10
-#define DT_SOCK 12
-#define DT_WHT 14
-
-
-#ifndef WIN32
-#include <sys/stat.h>
-#endif
-
-/*
- * Attribute flags. These should be or-ed together to figure out what
- * has been changed!
- */
-#define ATTR_MODE 1
-#define ATTR_UID 2
-#define ATTR_GID 4
-#define ATTR_SIZE 8
-#define ATTR_ATIME 16
-#define ATTR_MTIME 32
-#define ATTR_CTIME 64
-
-struct iattr {
- unsigned int ia_valid;
- unsigned ia_mode;
- unsigned ia_uid;
- unsigned ia_gid;
- unsigned ia_size;
- unsigned ia_atime;
- unsigned ia_mtime;
- unsigned ia_ctime;
- unsigned int ia_attr_flags;
-};
-
-#endif
-
-
-
#endif
diff --git a/yaffs_bitmap.c b/yaffs_bitmap.c
index 9fe4032..6be9d26 100644
--- a/yaffs_bitmap.c
+++ b/yaffs_bitmap.c
@@ -17,7 +17,7 @@
* Chunk bitmap manipulations
*/
-static Y_INLINE u8 *yaffs_block_bits(struct yaffs_dev *dev, int blk)
+static inline u8 *yaffs_block_bits(struct yaffs_dev *dev, int blk)
{
if (blk < dev->internal_start_block || blk > dev->internal_end_block) {
yaffs_trace(YAFFS_TRACE_ERROR,
diff --git a/yaffs_getblockinfo.h b/yaffs_getblockinfo.h
index 4cef686..d87acbd 100644
--- a/yaffs_getblockinfo.h
+++ b/yaffs_getblockinfo.h
@@ -20,7 +20,7 @@
#include "yaffs_trace.h"
/* Function to manipulate block info */
-static Y_INLINE struct yaffs_block_info *yaffs_get_block_info(struct yaffs_dev
+static inline struct yaffs_block_info *yaffs_get_block_info(struct yaffs_dev
*dev, int blk)
{
if (blk < dev->internal_start_block || blk > dev->internal_end_block) {
diff --git a/yaffs_guts.c b/yaffs_guts.c
index b49f018..f4ae9de 100644
--- a/yaffs_guts.c
+++ b/yaffs_guts.c
@@ -296,7 +296,7 @@ static void yaffs_handle_chunk_wr_error(struct yaffs_dev *dev, int nand_chunk,
* Simple hash function. Needs to have a reasonable spread
*/
-static Y_INLINE int yaffs_hash_fn(int n)
+static inline int yaffs_hash_fn(int n)
{
n = abs(n);
return n % YAFFS_NOBJECT_BUCKETS;
diff --git a/yaffs_verify.c b/yaffs_verify.c
index c12894d..738c7f6 100644
--- a/yaffs_verify.c
+++ b/yaffs_verify.c
@@ -268,7 +268,6 @@ void yaffs_verify_file(struct yaffs_obj *obj)
if (tn) {
u32 the_chunk = yaffs_get_group_base(dev, tn, i);
if (the_chunk > 0) {
- /* T(~0,(TSTR("verifying (%d:%d) %d"TENDSTR),obj_id,i,the_chunk)); */
yaffs_rd_chunk_tags_nand(dev, the_chunk, NULL,
&tags);
if (tags.obj_id != obj_id || tags.chunk_id != i)
diff --git a/yportenv_multi.h b/yportenv_multi.h
index e536796..4dddf63 100644
--- a/yportenv_multi.h
+++ b/yportenv_multi.h
@@ -51,13 +51,6 @@
#define YUCHAR unsigned char
#define _Y(x) x
-#define Y_INLINE __inline__
-
-#define yaffs_trace(msk, fmt, ...) do { \
- if(yaffs_trace_mask & ((msk) | YAFFS_TRACE_ALWAYS)) \
- printk(KERN_DEBUG "yaffs: " fmt "\n", ##__VA_ARGS__); \
-} while(0)
-
#define YAFFS_LOSTNFOUND_NAME "lost+found"
#define YAFFS_LOSTNFOUND_PREFIX "obj"
@@ -81,6 +74,11 @@
#define Y_DUMP_STACK() dump_stack()
#endif
+#define yaffs_trace(msk, fmt, ...) do { \
+ if(yaffs_trace_mask & ((msk) | YAFFS_TRACE_ALWAYS)) \
+ printk(KERN_DEBUG "yaffs: " fmt "\n", ##__VA_ARGS__); \
+} while(0)
+
#ifndef YBUG
#define YBUG() do {\
yaffs_trace(YAFFS_TRACE_BUG,\
diff --git a/yportenv_single.h b/yportenv_single.h
index 4710c2b..236f579 100644
--- a/yportenv_single.h
+++ b/yportenv_single.h
@@ -35,8 +35,6 @@
#define YUCHAR unsigned char
#define _Y(x) x
-#define Y_INLINE __inline__
-
#define YAFFS_LOSTNFOUND_NAME "lost+found"
#define YAFFS_LOSTNFOUND_PREFIX "obj"
@@ -53,8 +51,8 @@
#ifndef Y_DUMP_STACK
#define Y_DUMP_STACK() dump_stack()
-
#endif
+
#define yaffs_trace(msk, fmt, ...) do { \
if(yaffs_trace_mask & ((msk) | YAFFS_TRACE_ALWAYS)) \
printk(KERN_DEBUG "yaffs: " fmt "\n", ##__VA_ARGS__); \
@@ -69,5 +67,4 @@
} while (0)
#endif
-
#endif