Sha256: c0a66d8e1f3c863893f8acf39ebacbfb4d04403a3ded9daa9264e10607d452a3
Contents?: true
Size: 1.23 KB
Versions: 2
Compression:
Stored size: 1.23 KB
Contents
require 'origen_arm_debug/dp_controller' module OrigenARMDebug class SW_DPController include Origen::Controller include Helpers include DPController def write_register(reg, options = {}) unless reg.writable? fail "The :#{reg.name} register is not writeable!" end if reg.owner == model log "Write SW-DP register #{reg.name.to_s.upcase}: #{reg.data.to_hex}" do dut.swd.write_dp(reg) end else unless reg.owner.is_a?(AP) fail 'The SW-DP can only write to DP or AP registers!' end select_ap_reg(reg) dut.swd.write_ap(reg, options) end end def read_register(reg, options = {}) unless reg.readable? fail "The :#{reg.name} register is not readable!" end if reg.owner == model log "Read SW-DP register #{reg.name.to_s.upcase}: #{Origen::Utility.read_hex(reg)}" do dut.swd.read_dp(reg) end else unless reg.owner.is_a?(AP) fail 'The SW-DP can only write to DP or AP registers!' end select_ap_reg(reg) dut.swd.read_ap(address: reg.address) dut.swd.read_dp(reg, options.merge(address: rdbuff.address)) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
origen_arm_debug-1.0.0 | lib/origen_arm_debug/sw_dp_controller.rb |
origen_arm_debug-1.0.0.pre1 | lib/origen_arm_debug/sw_dp_controller.rb |