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 ---