def _write_phys_mem( self, phys_address, length, buf ): # temp hack if 4 == length: dword_value = struct.unpack( 'I', buf )[0] edk2.writemem_dword( phys_address, dword_value ) else: edk2.writemem( phys_address, buf, length )
def _write_phys_mem(self, phys_address, length, buf): # temp hack if 4 == length: dword_value = struct.unpack('I', buf)[0] edk2.writemem_dword(phys_address, dword_value) else: edk2.writemem(phys_address, buf, length)
def write_phys_mem(self, phys_address_hi, phys_address_lo, length, buf): if 4 == length: dword_value = struct.unpack('I', buf)[0] edk2.writemem_dword(phys_address_lo, phys_address_hi, bytestostring(dword_value)) else: edk2.writemem(phys_address_lo, phys_address_hi, bytestostring(buf), length)
def write_mmio_reg(self, phys_address, size, value): if logger().VERBOSE: logger().log( '[efi] helper does not support 64b PA' ) if size == 4: return edk2.writemem_dword( phys_address, value ) else: logger().error( '[efi] unsupported size %d by write_mmio_reg' % size )
def write_mmio_reg(self, phys_address, size, value): if logger().DEBUG: logger().log('[efi] helper does not support 64b PA') if size == 4: return edk2.writemem_dword(phys_address, value) else: buf = struct.pack(size * "B", value) edk2.writemem(phys_address, buf, size)
def write_mmio_reg(self, phys_address, size, value): phys_address_lo = phys_address & 0xFFFFFFFF phys_address_hi = (phys_address >> 32) & 0xFFFFFFFF if size == 4: return edk2.writemem_dword(phys_address_lo, phys_address_hi, value) else: buf = struct.pack(size * "B", value) edk2.writemem(phys_address_lo, phys_address_hi, buf, size)
def write_mmio_reg(self, phys_address, size, value): if logger().VERBOSE: logger().log('[efi] helper does not support 64b PA') if size == 4: return edk2.writemem_dword(phys_address, value) else: logger().error('[efi] unsupported size %d by write_mmio_reg' % size)
def write_mmio_reg(self, phys_address, size, value): if logger().DEBUG: logger().log( '[efi] helper does not support 64b PA' ) if size == 4: return edk2.writemem_dword( phys_address, value ) else: buf = struct.pack(size*"B", value) edk2.writemem( phys_address, buf, size )