/*
  *  linux/drivers/mtd/onenand/onenand_base.c
  *
- *  Copyright (C) 2005-2006 Samsung Electronics
+ *  Copyright (C) 2005-2007 Samsung Electronics
  *  Kyungmin Park <kyungmin.park@samsung.com>
  *
  * This program is free software; you can redistribute it and/or modify
        int i;
 
        block = (int) (addr >> this->erase_shift);
-       page = (int) (addr >> this->page_shift);
-       page &= this->page_mask;
+       page = (int) (addr >> this->page_shift) & this->page_mask;
 
        i = ONENAND_CURRENT_BUFFERRAM(this);
 
        int i;
 
        block = (int) (addr >> this->erase_shift);
-       page = (int) (addr >> this->page_shift);
-       page &= this->page_mask;
+       page = (int) (addr >> this->page_shift) & this->page_mask;
 
        /* Invalidate BufferRAM */
        for (i = 0; i < MAX_BUFFERRAM; i++) {
        /* Grab the lock and see if the device is available */
        onenand_get_device(mtd, FL_READING);
 
-       /* TODO handling oob */
-
        stats = mtd->ecc_stats;
 
        /* Read-while-load method */
 #endif /* CONFIG_MTD_ONENAND_OTP */
 
 /**
- * onenand_lock_scheme - Check and set OneNAND lock scheme
+ * onenand_check_features - Check and set OneNAND features
  * @param mtd          MTD data structure
  *
- * Check and set OneNAND lock scheme
+ * Check and set OneNAND features
+ * - lock scheme
  */
-static void onenand_lock_scheme(struct mtd_info *mtd)
+static void onenand_check_features(struct mtd_info *mtd)
 {
        struct onenand_chip *this = mtd->priv;
        unsigned int density, process;
 
        mtd->size = this->chipsize;
 
-       /* Check OneNAND lock scheme */
-       onenand_lock_scheme(mtd);
+       /* Check OneNAND features */
+       onenand_check_features(mtd);
 
        return 0;
 }