OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
OpenCoreKernelPatch.c File Reference
#include <Base.h>
#include <Library/OcMainLib.h>
#include <Library/BaseLib.h>
#include <Library/DebugLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/OcAfterBootCompatLib.h>
#include <Library/OcAppleKernelLib.h>
#include <Library/OcMiscLib.h>
#include <Library/OcAppleImg4Lib.h>
#include <Library/OcStringLib.h>
#include <Library/OcVirtualFsLib.h>
#include <Library/PcdLib.h>
#include <Library/PrintLib.h>
#include <Library/UefiBootServicesTableLib.h>

Go to the source code of this file.

Functions

EFI_STATUS OcKernelApplyQuirk (IN KERNEL_QUIRK_NAME Quirk, IN KERNEL_CACHE_TYPE CacheType, IN UINT32 DarwinVersion, IN OUT VOID *Context, IN OUT PATCHER_CONTEXT *KernelPatcher)
 
UINTN GetSerialRegisterBase (VOID)
 
VOID OcKernelApplyPatches (IN OC_GLOBAL_CONFIG *Config, IN OC_CPU_INFO *CpuInfo, IN UINT32 DarwinVersion, IN BOOLEAN Is32Bit, IN KERNEL_CACHE_TYPE CacheType, IN VOID *Context, IN OUT UINT8 *Kernel, IN UINT32 Size)
 
VOID OcKernelBlockKexts (IN OC_GLOBAL_CONFIG *Config, IN UINT32 DarwinVersion, IN BOOLEAN Is32Bit, IN KERNEL_CACHE_TYPE CacheType, IN VOID *Context)
 

Detailed Description

OpenCore driver.

Copyright (c) 2019, vit9696. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file OpenCoreKernelPatch.c.

Function Documentation

◆ GetSerialRegisterBase()

UINTN GetSerialRegisterBase ( VOID )

Retrieve the I/O or MMIO base address register for the PCI UART device. This function assumes Root Bus Numer is Zero, and enables I/O and MMIO in PCI UART Device if they are not already enabled.

Returns
The base address register of the UART device.

Definition at line 697 of file UserMisc.c.

◆ OcKernelApplyPatches()

VOID OcKernelApplyPatches ( IN OC_GLOBAL_CONFIG * Config,
IN OC_CPU_INFO * CpuInfo,
IN UINT32 DarwinVersion,
IN BOOLEAN Is32Bit,
IN KERNEL_CACHE_TYPE CacheType,
IN VOID * Context,
IN OUT UINT8 * Kernel,
IN UINT32 Size )

Apply kernel patch.

Definition at line 76 of file OpenCoreKernelPatch.c.

◆ OcKernelApplyQuirk()

EFI_STATUS OcKernelApplyQuirk ( IN KERNEL_QUIRK_NAME Quirk,
IN KERNEL_CACHE_TYPE CacheType,
IN UINT32 DarwinVersion,
IN OUT VOID * Context,
IN OUT PATCHER_CONTEXT * KernelPatcher )

Apply kernel quirk.

Definition at line 33 of file OpenCoreKernelPatch.c.

◆ OcKernelBlockKexts()

VOID OcKernelBlockKexts ( IN OC_GLOBAL_CONFIG * Config,
IN UINT32 DarwinVersion,
IN BOOLEAN Is32Bit,
IN KERNEL_CACHE_TYPE CacheType,
IN VOID * Context )

Apply kernel block patch.

Definition at line 393 of file OpenCoreKernelPatch.c.