1STRUCT PLATFORM_NAND(9) Structures STRUCT PLATFORM_NAND(9)
2
3
4
6 struct_platform_nand_ctrl - controller level device structure
7
9 struct platform_nand_ctrl {
10 int (* probe) (struct platform_device *pdev);
11 void (* remove) (struct platform_device *pdev);
12 void (* hwcontrol) (struct mtd_info *mtd, int cmd);
13 int (* dev_ready) (struct mtd_info *mtd);
14 void (* select_chip) (struct mtd_info *mtd, int chip);
15 void (* cmd_ctrl) (struct mtd_info *mtd, int dat,unsigned int ctrl);
16 void (* write_buf) (struct mtd_info *mtd,const uint8_t *buf, int len);
17 void (* read_buf) (struct mtd_info *mtd,uint8_t *buf, int len);
18 void * priv;
19 };
20
22 probe
23 platform specific function to probe/setup hardware
24
25 remove
26 platform specific function to remove/teardown hardware
27
28 hwcontrol
29 platform specific hardware control structure
30
31 dev_ready
32 platform specific function to read ready/busy pin
33
34 select_chip
35 platform specific chip select function
36
37 cmd_ctrl
38 platform specific function for controlling ALE/CLE/nCE. Also used
39 to write command and address
40
41 write_buf
42 platform specific function for write buffer
43
44 read_buf
45 platform specific function for read buffer
46
47 priv
48 private data to transport driver specific settings
49
51 All fields are optional and depend on the hardware driver requirements
52
54 Thomas Gleixner <tglx@linutronix.de>
55 Author.
56
58Kernel Hackers Manual 2.6. June 2019 STRUCT PLATFORM_NAND(9)