cxl.h (79e24da00b1137031245f3341828e4215b1b5b59) | cxl.h (8633186209e35dfafc27c3d0f0d5e702ab47265f) |
---|---|
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 */ --- 512 unchanged lines hidden (view full) --- 521 522int cxl_alloc_one_irq(struct cxl *adapter); 523void cxl_release_one_irq(struct cxl *adapter, int hwirq); 524int cxl_alloc_irq_ranges(struct cxl_irq_ranges *irqs, struct cxl *adapter, unsigned int num); 525void cxl_release_irq_ranges(struct cxl_irq_ranges *irqs, struct cxl *adapter); 526int cxl_setup_irq(struct cxl *adapter, unsigned int hwirq, unsigned int virq); 527int cxl_update_image_control(struct cxl *adapter); 528int cxl_reset(struct cxl *adapter); | 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 */ --- 512 unchanged lines hidden (view full) --- 521 522int cxl_alloc_one_irq(struct cxl *adapter); 523void cxl_release_one_irq(struct cxl *adapter, int hwirq); 524int cxl_alloc_irq_ranges(struct cxl_irq_ranges *irqs, struct cxl *adapter, unsigned int num); 525void cxl_release_irq_ranges(struct cxl_irq_ranges *irqs, struct cxl *adapter); 526int cxl_setup_irq(struct cxl *adapter, unsigned int hwirq, unsigned int virq); 527int cxl_update_image_control(struct cxl *adapter); 528int cxl_reset(struct cxl *adapter); |
529void cxl_release_afu(struct device *dev); |
|
529 530/* common == phyp + powernv */ 531struct cxl_process_element_common { 532 __be32 tid; 533 __be32 pid; 534 __be64 csrp; 535 __be64 aurp0; 536 __be64 aurp1; --- 137 unchanged lines hidden (view full) --- 674 675int cxl_sysfs_adapter_add(struct cxl *adapter); 676void cxl_sysfs_adapter_remove(struct cxl *adapter); 677int cxl_sysfs_afu_add(struct cxl_afu *afu); 678void cxl_sysfs_afu_remove(struct cxl_afu *afu); 679int cxl_sysfs_afu_m_add(struct cxl_afu *afu); 680void cxl_sysfs_afu_m_remove(struct cxl_afu *afu); 681 | 530 531/* common == phyp + powernv */ 532struct cxl_process_element_common { 533 __be32 tid; 534 __be32 pid; 535 __be64 csrp; 536 __be64 aurp0; 537 __be64 aurp1; --- 137 unchanged lines hidden (view full) --- 675 676int cxl_sysfs_adapter_add(struct cxl *adapter); 677void cxl_sysfs_adapter_remove(struct cxl *adapter); 678int cxl_sysfs_afu_add(struct cxl_afu *afu); 679void cxl_sysfs_afu_remove(struct cxl_afu *afu); 680int cxl_sysfs_afu_m_add(struct cxl_afu *afu); 681void cxl_sysfs_afu_m_remove(struct cxl_afu *afu); 682 |
683struct cxl *cxl_alloc_adapter(void); 684struct cxl_afu *cxl_alloc_afu(struct cxl *adapter, int slice); 685 |
|
682int cxl_afu_activate_mode(struct cxl_afu *afu, int mode); 683int _cxl_afu_deactivate_mode(struct cxl_afu *afu, int mode); 684int cxl_afu_deactivate_mode(struct cxl_afu *afu); 685int cxl_afu_select_best_mode(struct cxl_afu *afu); 686 687int cxl_register_psl_irq(struct cxl_afu *afu); 688void cxl_release_psl_irq(struct cxl_afu *afu); 689int cxl_register_psl_err_irq(struct cxl *adapter); --- 38 unchanged lines hidden (view full) --- 728 u32 pid; 729 u32 tid; 730 u64 afu_err; 731 u64 errstat; 732 u64 padding[3]; /* to match the expected retbuf size for plpar_hcall9 */ 733}; 734 735void cxl_assign_psn_space(struct cxl_context *ctx); | 686int cxl_afu_activate_mode(struct cxl_afu *afu, int mode); 687int _cxl_afu_deactivate_mode(struct cxl_afu *afu, int mode); 688int cxl_afu_deactivate_mode(struct cxl_afu *afu); 689int cxl_afu_select_best_mode(struct cxl_afu *afu); 690 691int cxl_register_psl_irq(struct cxl_afu *afu); 692void cxl_release_psl_irq(struct cxl_afu *afu); 693int cxl_register_psl_err_irq(struct cxl *adapter); --- 38 unchanged lines hidden (view full) --- 732 u32 pid; 733 u32 tid; 734 u64 afu_err; 735 u64 errstat; 736 u64 padding[3]; /* to match the expected retbuf size for plpar_hcall9 */ 737}; 738 739void cxl_assign_psn_space(struct cxl_context *ctx); |
740irqreturn_t cxl_irq(int irq, void *ctx, struct cxl_irq_info *irq_info); 741int cxl_register_one_irq(struct cxl *adapter, irq_handler_t handler, 742 void *cookie, irq_hw_number_t *dest_hwirq, 743 unsigned int *dest_virq, const char *name); 744 |
|
736int cxl_attach_process(struct cxl_context *ctx, bool kernel, u64 wed, 737 u64 amr); 738int cxl_detach_process(struct cxl_context *ctx); 739 740int cxl_get_irq(struct cxl_afu *afu, struct cxl_irq_info *info); 741int cxl_ack_irq(struct cxl_context *ctx, u64 tfc, u64 psl_reset_mask); 742 743int cxl_check_error(struct cxl_afu *afu); --- 24 unchanged lines hidden --- | 745int cxl_attach_process(struct cxl_context *ctx, bool kernel, u64 wed, 746 u64 amr); 747int cxl_detach_process(struct cxl_context *ctx); 748 749int cxl_get_irq(struct cxl_afu *afu, struct cxl_irq_info *info); 750int cxl_ack_irq(struct cxl_context *ctx, u64 tfc, u64 psl_reset_mask); 751 752int cxl_check_error(struct cxl_afu *afu); --- 24 unchanged lines hidden --- |