1*8f933b10SRalf Hoppe /* 2*8f933b10SRalf Hoppe * SE/HMC Drive (Read) Cache Functions 3*8f933b10SRalf Hoppe * 4*8f933b10SRalf Hoppe * Copyright IBM Corp. 2013 5*8f933b10SRalf Hoppe * Author(s): Ralf Hoppe (rhoppe@de.ibm.com) 6*8f933b10SRalf Hoppe */ 7*8f933b10SRalf Hoppe 8*8f933b10SRalf Hoppe #ifndef __HMCDRV_CACHE_H__ 9*8f933b10SRalf Hoppe #define __HMCDRV_CACHE_H__ 10*8f933b10SRalf Hoppe 11*8f933b10SRalf Hoppe #include <linux/mmzone.h> 12*8f933b10SRalf Hoppe #include "hmcdrv_ftp.h" 13*8f933b10SRalf Hoppe 14*8f933b10SRalf Hoppe #define HMCDRV_CACHE_SIZE_DFLT (MAX_ORDER_NR_PAGES * PAGE_SIZE / 2UL) 15*8f933b10SRalf Hoppe 16*8f933b10SRalf Hoppe typedef ssize_t (*hmcdrv_cache_ftpfunc)(const struct hmcdrv_ftp_cmdspec *ftp, 17*8f933b10SRalf Hoppe size_t *fsize); 18*8f933b10SRalf Hoppe 19*8f933b10SRalf Hoppe ssize_t hmcdrv_cache_cmd(const struct hmcdrv_ftp_cmdspec *ftp, 20*8f933b10SRalf Hoppe hmcdrv_cache_ftpfunc func); 21*8f933b10SRalf Hoppe int hmcdrv_cache_startup(size_t cachesize); 22*8f933b10SRalf Hoppe void hmcdrv_cache_shutdown(void); 23*8f933b10SRalf Hoppe 24*8f933b10SRalf Hoppe #endif /* __HMCDRV_CACHE_H__ */ 25