2016-12-14 13:36:51 +11:00
/*
* Copyright 2017 IBM Corp .
*
* This program is free software ; you can redistribute it and / or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation ; either version
* 2 of the License , or ( at your option ) any later version .
*/
# ifndef _ASM_POWERNV_H
# define _ASM_POWERNV_H
# ifdef CONFIG_PPC_POWERNV
2017-04-03 19:51:44 +10:00
# define NPU2_WRITE 1
2016-12-14 13:36:51 +11:00
extern void powernv_set_nmmu_ptcr ( unsigned long ptcr ) ;
2017-04-03 19:51:44 +10:00
extern struct npu_context * pnv_npu2_init_context ( struct pci_dev * gpdev ,
unsigned long flags ,
struct npu_context * ( * cb ) ( struct npu_context * , void * ) ,
void * priv ) ;
extern void pnv_npu2_destroy_context ( struct npu_context * context ,
struct pci_dev * gpdev ) ;
extern int pnv_npu2_handle_fault ( struct npu_context * context , uintptr_t * ea ,
unsigned long * flags , unsigned long * status ,
int count ) ;
2016-12-14 13:36:51 +11:00
# else
static inline void powernv_set_nmmu_ptcr ( unsigned long ptcr ) { }
2017-04-03 19:51:44 +10:00
static inline struct npu_context * pnv_npu2_init_context ( struct pci_dev * gpdev ,
unsigned long flags ,
struct npu_context * ( * cb ) ( struct npu_context * , void * ) ,
void * priv ) { return ERR_PTR ( - ENODEV ) ; }
static inline void pnv_npu2_destroy_context ( struct npu_context * context ,
struct pci_dev * gpdev ) { }
static inline int pnv_npu2_handle_fault ( struct npu_context * context ,
uintptr_t * ea , unsigned long * flags ,
unsigned long * status , int count ) {
return - ENODEV ;
}
2016-12-14 13:36:51 +11:00
# endif
# endif /* _ASM_POWERNV_H */