Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
gpmi-lib.c File Reference
#include <linux/mtd/gpmi-nand.h>
#include <linux/delay.h>
#include <linux/clk.h>
#include "gpmi-nand.h"
#include "gpmi-regs.h"
#include "bch-regs.h"

Go to the source code of this file.

Macros

#define MXS_SET_ADDR   0x4
 
#define MXS_CLR_ADDR   0x8
 
#define MODULE_CLKGATE   (1 << 30)
 
#define MODULE_SFTRST   (1 << 31)
 
#define gpmi_enable_clk(x)   __gpmi_enable_clk(x, true)
 
#define gpmi_disable_clk(x)   __gpmi_enable_clk(x, false)
 
#define DEF_MIN_PROP_DELAY   5
 
#define DEF_MAX_PROP_DELAY   9
 
#define IDEAL_DELAY   ((int) ideal_sample_delay_in_ns)
 
#define QUANTIZED_DELAY
 
#define DELAY_ERROR   (abs(QUANTIZED_DELAY - IDEAL_DELAY))
 
#define SAMPLE_IS_NOT_WITHIN_THE_EYE   (DELAY_ERROR > (tEYE >> 1))
 

Functions

int gpmi_init (struct gpmi_nand_data *this)
 
void gpmi_dump_info (struct gpmi_nand_data *this)
 
int bch_set_geometry (struct gpmi_nand_data *this)
 
int gpmi_extra_init (struct gpmi_nand_data *this)
 
void gpmi_begin (struct gpmi_nand_data *this)
 
void gpmi_end (struct gpmi_nand_data *this)
 
void gpmi_clear_bch (struct gpmi_nand_data *this)
 
int gpmi_is_ready (struct gpmi_nand_data *this, unsigned chip)
 
int gpmi_send_command (struct gpmi_nand_data *this)
 
int gpmi_send_data (struct gpmi_nand_data *this)
 
int gpmi_read_data (struct gpmi_nand_data *this)
 
int gpmi_send_page (struct gpmi_nand_data *this, dma_addr_t payload, dma_addr_t auxiliary)
 
int gpmi_read_page (struct gpmi_nand_data *this, dma_addr_t payload, dma_addr_t auxiliary)
 

Macro Definition Documentation

#define DEF_MAX_PROP_DELAY   9

Definition at line 290 of file gpmi-lib.c.

#define DEF_MIN_PROP_DELAY   5

Definition at line 289 of file gpmi-lib.c.

#define DELAY_ERROR   (abs(QUANTIZED_DELAY - IDEAL_DELAY))
#define gpmi_disable_clk (   x)    __gpmi_enable_clk(x, false)

Definition at line 155 of file gpmi-lib.c.

#define gpmi_enable_clk (   x)    __gpmi_enable_clk(x, true)

Definition at line 154 of file gpmi-lib.c.

#define IDEAL_DELAY   ((int) ideal_sample_delay_in_ns)
#define MODULE_CLKGATE   (1 << 30)

Definition at line 66 of file gpmi-lib.c.

#define MODULE_SFTRST   (1 << 31)

Definition at line 67 of file gpmi-lib.c.

#define MXS_CLR_ADDR   0x8

Definition at line 40 of file gpmi-lib.c.

#define MXS_SET_ADDR   0x4

Definition at line 39 of file gpmi-lib.c.

#define QUANTIZED_DELAY
Value:
((int) ((sample_delay_factor * clock_period_in_ns) >> \
dll_delay_shift))
#define SAMPLE_IS_NOT_WITHIN_THE_EYE   (DELAY_ERROR > (tEYE >> 1))

Function Documentation

int bch_set_geometry ( struct gpmi_nand_data this)

Definition at line 218 of file gpmi-lib.c.

void gpmi_begin ( struct gpmi_nand_data this)

Definition at line 953 of file gpmi-lib.c.

void gpmi_clear_bch ( struct gpmi_nand_data this)

Definition at line 1042 of file gpmi-lib.c.

void gpmi_dump_info ( struct gpmi_nand_data this)

Definition at line 189 of file gpmi-lib.c.

void gpmi_end ( struct gpmi_nand_data this)

Definition at line 1036 of file gpmi-lib.c.

int gpmi_extra_init ( struct gpmi_nand_data this)

Definition at line 931 of file gpmi-lib.c.

int gpmi_init ( struct gpmi_nand_data this)

Definition at line 157 of file gpmi-lib.c.

int gpmi_is_ready ( struct gpmi_nand_data this,
unsigned  chip 
)

Definition at line 1049 of file gpmi-lib.c.

int gpmi_read_data ( struct gpmi_nand_data this)

Definition at line 1159 of file gpmi-lib.c.

int gpmi_read_page ( struct gpmi_nand_data this,
dma_addr_t  payload,
dma_addr_t  auxiliary 
)

Definition at line 1243 of file gpmi-lib.c.

int gpmi_send_command ( struct gpmi_nand_data this)

Definition at line 1074 of file gpmi-lib.c.

int gpmi_send_data ( struct gpmi_nand_data this)

Definition at line 1118 of file gpmi-lib.c.

int gpmi_send_page ( struct gpmi_nand_data this,
dma_addr_t  payload,
dma_addr_t  auxiliary 
)

Definition at line 1197 of file gpmi-lib.c.