cxl.h (4752876c71701b7663a5ded789058ab2c05f7d0f) cxl.h (594ff7d067ca42676e27e2a7b5dcc0ff039d08ca)
1/*
2 * Copyright 2014 IBM Corp.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version
7 * 2 of the License, or (at your option) any later version.
8 */

--- 310 unchanged lines hidden (view full) ---

319#define CXL_SPA_SW_LINK_MASK 0x000000000000ffffULL
320
321#define CXL_MAX_SLICES 4
322#define MAX_AFU_MMIO_REGS 3
323
324#define CXL_MODE_TIME_SLICED 0x4
325#define CXL_SUPPORTED_MODES (CXL_MODE_DEDICATED | CXL_MODE_DIRECTED)
326
1/*
2 * Copyright 2014 IBM Corp.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version
7 * 2 of the License, or (at your option) any later version.
8 */

--- 310 unchanged lines hidden (view full) ---

319#define CXL_SPA_SW_LINK_MASK 0x000000000000ffffULL
320
321#define CXL_MAX_SLICES 4
322#define MAX_AFU_MMIO_REGS 3
323
324#define CXL_MODE_TIME_SLICED 0x4
325#define CXL_SUPPORTED_MODES (CXL_MODE_DEDICATED | CXL_MODE_DIRECTED)
326
327#define CXL_DEV_MINORS 13 /* 1 control + 4 AFUs * 3 (dedicated/master/shared) */
328#define CXL_CARD_MINOR(adapter) (adapter->adapter_num * CXL_DEV_MINORS)
329#define CXL_DEVT_ADAPTER(dev) (MINOR(dev) / CXL_DEV_MINORS)
330
327enum cxl_context_status {
328 CLOSED,
329 OPENED,
330 STARTED
331};
332
333enum prefault_modes {
334 CXL_PREFAULT_NONE,

--- 352 unchanged lines hidden (view full) ---

687
688
689struct cxl_calls {
690 void (*cxl_slbia)(struct mm_struct *mm);
691 struct module *owner;
692};
693int register_cxl_calls(struct cxl_calls *calls);
694void unregister_cxl_calls(struct cxl_calls *calls);
331enum cxl_context_status {
332 CLOSED,
333 OPENED,
334 STARTED
335};
336
337enum prefault_modes {
338 CXL_PREFAULT_NONE,

--- 352 unchanged lines hidden (view full) ---

691
692
693struct cxl_calls {
694 void (*cxl_slbia)(struct mm_struct *mm);
695 struct module *owner;
696};
697int register_cxl_calls(struct cxl_calls *calls);
698void unregister_cxl_calls(struct cxl_calls *calls);
699int cxl_update_properties(struct device_node *dn, struct property *new_prop);
695
696void cxl_remove_adapter_nr(struct cxl *adapter);
697
698int cxl_alloc_spa(struct cxl_afu *afu);
699void cxl_release_spa(struct cxl_afu *afu);
700
700
701void cxl_remove_adapter_nr(struct cxl *adapter);
702
703int cxl_alloc_spa(struct cxl_afu *afu);
704void cxl_release_spa(struct cxl_afu *afu);
705
706dev_t cxl_get_dev(void);
701int cxl_file_init(void);
702void cxl_file_exit(void);
703int cxl_register_adapter(struct cxl *adapter);
704int cxl_register_afu(struct cxl_afu *afu);
705int cxl_chardev_d_afu_add(struct cxl_afu *afu);
706int cxl_chardev_m_afu_add(struct cxl_afu *afu);
707int cxl_chardev_s_afu_add(struct cxl_afu *afu);
708void cxl_chardev_afu_remove(struct cxl_afu *afu);

--- 163 unchanged lines hidden ---
707int cxl_file_init(void);
708void cxl_file_exit(void);
709int cxl_register_adapter(struct cxl *adapter);
710int cxl_register_afu(struct cxl_afu *afu);
711int cxl_chardev_d_afu_add(struct cxl_afu *afu);
712int cxl_chardev_m_afu_add(struct cxl_afu *afu);
713int cxl_chardev_s_afu_add(struct cxl_afu *afu);
714void cxl_chardev_afu_remove(struct cxl_afu *afu);

--- 163 unchanged lines hidden ---