/
usr
/
src
/
linux-headers-5.15.0-190
/
include
/
linux
/
mtd
/
/usr/src/linux-headers-5.15.0-190/include/linux/mtd
mkdir
upload
Name
Size
Mode
Actions
bbm.h
4825
0644
edit
dl
rm
blktrans.h
2682
0644
edit
dl
rm
cfi.h
10144
0644
edit
dl
rm
cfi_endian.h
1514
0644
edit
dl
rm
concat.h
493
0644
edit
dl
rm
doc2000.h
5505
0644
edit
dl
rm
flashchip.h
2478
0644
edit
dl
rm
ftl.h
2551
0644
edit
dl
rm
gen_probe.h
615
0644
edit
dl
rm
hyperbus.h
2893
0644
edit
dl
rm
inftl.h
1599
0644
edit
dl
rm
jedec.h
1905
0644
edit
dl
rm
latch-addr-flash.h
716
0644
edit
dl
rm
lpc32xx_mlc.h
385
0644
edit
dl
rm
lpc32xx_slc.h
385
0644
edit
dl
rm
map.h
13016
0644
edit
dl
rm
mtd.h
22569
0644
edit
dl
rm
mtdram.h
257
0644
edit
dl
rm
nand-ecc-sw-bch.h
2117
0644
edit
dl
rm
nand-ecc-sw-hamming.h
2717
0644
edit
dl
rm
nand-gpio.h
330
0644
edit
dl
rm
nand.h
30284
0644
edit
dl
rm
ndfc.h
2070
0644
edit
dl
rm
nftl.h
1734
0644
edit
dl
rm
onenand.h
7974
0644
edit
dl
rm
onenand_regs.h
7217
0644
edit
dl
rm
onfi.h
4962
0644
edit
dl
rm
partitions.h
3946
0644
edit
dl
rm
pfow.h
4489
0644
edit
dl
rm
physmap.h
808
0644
edit
dl
rm
pismo.h
271
0644
edit
dl
rm
plat-ram.h
668
0644
edit
dl
rm
platnand.h
2545
0644
edit
dl
rm
qinfo.h
2530
0644
edit
dl
rm
rawnand.h
52400
0644
edit
dl
rm
sharpsl.h
485
0644
edit
dl
rm
sh_flctl.h
5927
0644
edit
dl
rm
spear_smi.h
1714
0644
edit
dl
rm
spi-nor.h
17247
0644
edit
dl
rm
spinand.h
16220
0644
edit
dl
rm
super.h
578
0644
edit
dl
rm
ubi.h
9914
0644
edit
dl
rm
xip.h
2556
0644
edit
dl
rm
Edit:
/usr/src/linux-headers-5.15.0-190/include/linux/mtd/hyperbus.h
(2893B)
/* SPDX-License-Identifier: GPL-2.0 * * Copyright (C) 2019 Texas Instruments Incorporated - https://www.ti.com/ */ #ifndef __LINUX_MTD_HYPERBUS_H__ #define __LINUX_MTD_HYPERBUS_H__ #include <linux/mtd/map.h> /* HyperBus command bits */ #define HYPERBUS_RW 0x80 /* R/W# */ #define HYPERBUS_RW_WRITE 0 #define HYPERBUS_RW_READ 0x80 #define HYPERBUS_AS 0x40 /* Address Space */ #define HYPERBUS_AS_MEM 0 #define HYPERBUS_AS_REG 0x40 #define HYPERBUS_BT 0x20 /* Burst Type */ #define HYPERBUS_BT_WRAPPED 0 #define HYPERBUS_BT_LINEAR 0x20 enum hyperbus_memtype { HYPERFLASH, HYPERRAM, }; /** * struct hyperbus_device - struct representing HyperBus slave device * @map: map_info struct for accessing MMIO HyperBus flash memory * @np: pointer to HyperBus slave device node * @mtd: pointer to MTD struct * @ctlr: pointer to HyperBus controller struct * @memtype: type of memory device: HyperFlash or HyperRAM * @priv: pointer to controller specific per device private data */ struct hyperbus_device { struct map_info map; struct device_node *np; struct mtd_info *mtd; struct hyperbus_ctlr *ctlr; enum hyperbus_memtype memtype; void *priv; }; /** * struct hyperbus_ops - struct representing custom HyperBus operations * @read16: read 16 bit of data from flash in a single burst. Used to read * from non default address space, such as ID/CFI space * @write16: write 16 bit of data to flash in a single burst. Used to * send cmd to flash or write single 16 bit word at a time. * @copy_from: copy data from flash memory * @copy_to: copy data to flash memory * @calibrate: calibrate HyperBus controller */ struct hyperbus_ops { u16 (*read16)(struct hyperbus_device *hbdev, unsigned long addr); void (*write16)(struct hyperbus_device *hbdev, unsigned long addr, u16 val); void (*copy_from)(struct hyperbus_device *hbdev, void *to, unsigned long from, ssize_t len); void (*copy_to)(struct hyperbus_device *dev, unsigned long to, const void *from, ssize_t len); int (*calibrate)(struct hyperbus_device *dev); }; /** * struct hyperbus_ctlr - struct representing HyperBus controller * @dev: pointer to HyperBus controller device * @calibrated: flag to indicate ctlr calibration sequence is complete * @ops: HyperBus controller ops */ struct hyperbus_ctlr { struct device *dev; bool calibrated; const struct hyperbus_ops *ops; }; /** * hyperbus_register_device - probe and register a HyperBus slave memory device * @hbdev: hyperbus_device struct with dev, np and ctlr field populated * * Return: 0 for success, others for failure. */ int hyperbus_register_device(struct hyperbus_device *hbdev); /** * hyperbus_unregister_device - deregister HyperBus slave memory device * @hbdev: hyperbus_device to be unregistered */ void hyperbus_unregister_device(struct hyperbus_device *hbdev); #endif /* __LINUX_MTD_HYPERBUS_H__ */
Save
cmd:
run