EFI phys_prelog, run a physical address directly in kernel space with efi api.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'm faced with that issue where I have a physical address that was
mapped by EFI memap (I did check it using efi_lookup_mapped_addr). It is
not or an EFI run time services neither an EFI boot service. 
In my attempts I was able to map the physical address to a virtual in
Kernel space, but when I try call it using some __inline__ asm, I
realized that into this function (pointed by the physical address I
mapped),it tries to do an access to another physical address and I grab
an oops: 'unable to access the page in the address.'

Now I'm supposing I need to run that physical address function directly
without map it to virtual space and seems that the way to do it is using
some EFI API. In short I'm thinking in run that code in physical space
(something like real mode). I took a look in efi_phys_prelog
and ..epilog to do that. But I was surprised with a long stack trace
that point me to a oops: 'schedule while atomic'.

So, I'd like to know if is there anyway to do it using EFI API that we
have in kernel (arch x86_64)?


-- 
leosilva <leosilva@xxxxxxxxxxxxxxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe linux-efi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux