Blame view

kernel/linux-rt-4.4.41/arch/arm/mach-ixp4xx/include/mach/npe.h 982 Bytes
5113f6f70   김현기   kernel add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  #ifndef __IXP4XX_NPE_H
  #define __IXP4XX_NPE_H
  
  #include <linux/kernel.h>
  
  extern const char *npe_names[];
  
  struct npe_regs {
  	u32 exec_addr, exec_data, exec_status_cmd, exec_count;
  	u32 action_points[4];
  	u32 watchpoint_fifo, watch_count;
  	u32 profile_count;
  	u32 messaging_status, messaging_control;
  	u32 mailbox_status, /*messaging_*/ in_out_fifo;
  };
  
  struct npe {
  	struct resource *mem_res;
  	struct npe_regs __iomem *regs;
  	u32 regs_phys;
  	int id;
  	int valid;
  };
  
  
  static inline const char *npe_name(struct npe *npe)
  {
  	return npe_names[npe->id];
  }
  
  int npe_running(struct npe *npe);
  int npe_send_message(struct npe *npe, const void *msg, const char *what);
  int npe_recv_message(struct npe *npe, void *msg, const char *what);
  int npe_send_recv_message(struct npe *npe, void *msg, const char *what);
  int npe_load_firmware(struct npe *npe, const char *name, struct device *dev);
  struct npe *npe_request(unsigned id);
  void npe_release(struct npe *npe);
  
  #endif /* __IXP4XX_NPE_H */