book3s.c (95d002e0a34cb0f238abb39987f9980f325d8332) book3s.c (90c73795afa24890bd2ae4f3b359de04b4147d37)
1/*
2 * Copyright (C) 2009. SUSE Linux Products GmbH. All rights reserved.
3 *
4 * Authors:
5 * Alexander Graf <agraf@suse.de>
6 * Kevin Wolf <mail@kevin-wolf.de>
7 *
8 * Description:

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

1045 r = kvmppc_book3s_init_pr();
1046#endif
1047
1048#ifdef CONFIG_KVM_XICS
1049#ifdef CONFIG_KVM_XIVE
1050 if (xics_on_xive()) {
1051 kvmppc_xive_init_module();
1052 kvm_register_device_ops(&kvm_xive_ops, KVM_DEV_TYPE_XICS);
1/*
2 * Copyright (C) 2009. SUSE Linux Products GmbH. All rights reserved.
3 *
4 * Authors:
5 * Alexander Graf <agraf@suse.de>
6 * Kevin Wolf <mail@kevin-wolf.de>
7 *
8 * Description:

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

1045 r = kvmppc_book3s_init_pr();
1046#endif
1047
1048#ifdef CONFIG_KVM_XICS
1049#ifdef CONFIG_KVM_XIVE
1050 if (xics_on_xive()) {
1051 kvmppc_xive_init_module();
1052 kvm_register_device_ops(&kvm_xive_ops, KVM_DEV_TYPE_XICS);
1053 kvmppc_xive_native_init_module();
1054 kvm_register_device_ops(&kvm_xive_native_ops,
1055 KVM_DEV_TYPE_XIVE);
1053 } else
1054#endif
1055 kvm_register_device_ops(&kvm_xics_ops, KVM_DEV_TYPE_XICS);
1056#endif
1057 return r;
1058}
1059
1060static void kvmppc_book3s_exit(void)
1061{
1062#ifdef CONFIG_KVM_XICS
1056 } else
1057#endif
1058 kvm_register_device_ops(&kvm_xics_ops, KVM_DEV_TYPE_XICS);
1059#endif
1060 return r;
1061}
1062
1063static void kvmppc_book3s_exit(void)
1064{
1065#ifdef CONFIG_KVM_XICS
1063 if (xics_on_xive())
1066 if (xics_on_xive()) {
1064 kvmppc_xive_exit_module();
1067 kvmppc_xive_exit_module();
1068 kvmppc_xive_native_exit_module();
1069 }
1065#endif
1066#ifdef CONFIG_KVM_BOOK3S_32_HANDLER
1067 kvmppc_book3s_exit_pr();
1068#endif
1069 kvm_exit();
1070}
1071
1072module_init(kvmppc_book3s_init);
1073module_exit(kvmppc_book3s_exit);
1074
1075/* On 32bit this is our one and only kernel module */
1076#ifdef CONFIG_KVM_BOOK3S_32_HANDLER
1077MODULE_ALIAS_MISCDEV(KVM_MINOR);
1078MODULE_ALIAS("devname:kvm");
1079#endif
1070#endif
1071#ifdef CONFIG_KVM_BOOK3S_32_HANDLER
1072 kvmppc_book3s_exit_pr();
1073#endif
1074 kvm_exit();
1075}
1076
1077module_init(kvmppc_book3s_init);
1078module_exit(kvmppc_book3s_exit);
1079
1080/* On 32bit this is our one and only kernel module */
1081#ifdef CONFIG_KVM_BOOK3S_32_HANDLER
1082MODULE_ALIAS_MISCDEV(KVM_MINOR);
1083MODULE_ALIAS("devname:kvm");
1084#endif