Age | Commit message (Collapse) | Author |
|
Change-Id: I6d3051f6ef0e49ea2efb26daec42ff1cd0dce8b0
|
|
target: Ensure returning False when is_network_connected fails
|
|
|
|
target: Add is_network_connected method
|
|
|
|
AndroidTarget: Make get_rotation return an int
|
|
|
|
That means you can pass the result back to set_rotation without
having to change its type.
|
|
Once an ACME cape instrument is released, if the stop() method has not
been called by the client code, let's ensure to release the channels by
killing the corresponding iio-caputure process.
Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
|
|
|
|
android: Use pexpect for LogcatMonitor
|
|
Using a pexpect.spawn object simplifies the LogcatMonitor by removing
the need for a separate thread along with the synchronization that
brings. Since pexpect.spawn creates a logfile that is flushed with
each write, it also removes the need for code to handle flushing.
I originally wrote this to allow more complex features that are made
possible by the pexpect API, however I then discovered those features
are not necessary and did not submit this for merging.
However I then discovered that in Python 2.7,
threading.Event.wait (used in the `wait_for` method) makes the task
uninterriptible (i.e. can't be killed with Ctrl+C/SIGINT), which is
rather frustrating. This issue doesn't arise when using pexpect's
expect method, so that's why I'm submitting this now.
|
|
VExpress platforms were not updated to handle "model" parameter when it
was added to Platfrom.
|
|
This is just like adb_command but instead of executing the command it just
returns it.
|
|
Recently I've been seeing some errors with enabling airplane mode on
hikey960 - firstly I get a 'broken pipe' error followed by a 'cmd:
Can't find service: settings'. This missing boolean was the first
thing I found that had changed wrt. the code I used to use, and
adding it back appears to fix the issue.
|
|
ANSI escape sequences stripping fixes for gem5
|
|
ApkInfo: Improve error for bad .apk files
|
|
AndroidTarget: prevent concurrent invocations of 'logcat -c'
|
|
Acmecape improvements
|
|
Provide a more specific error, including the output from aapt.
|
|
The ACME firmware sometimes benefits from turning-it-off-and-on-again.
|
|
|
|
|
|
'adb logcat -c' has been observed to fail when called twice concurrently. Rather
than requiring all devlib users to fix their usage patterns, let's just delay
whenever clear_logcat is called twice.
|
|
Due to the new read_tree_values API, some devlib modules now use
shutils in their __init__, which happens from
Target::connect(). Therefore ensure we have busybox on the target
before we get to that stage.
|
|
Gem5Connection lists the path to be pulled, however it was not stripping
ANSI escape sequences from resulting output, which would corrupt the
path.
|
|
Update regex used by strip_bash_colors to match more ANSI escape
sequencies.
|
|
Skip entries not containing a ":".
|
|
The previous fix for read_tree_values fixed the issue with sh not
supporting arrays, but looping over paths and counting them. Hover each
count increment requires spawning a subshell. For a large number of paths,
this can eat away any performance benefits of using read_tree_values.
Since we only care whether the count is greater than one, detect that
and break out of the loop early to re-introduce the performance
improvement.
|
|
read_tree_values and hotplug_online_all relied on () array evaluation
which is a Bash thing and is broken in sh; this fixes things for sh.
|
|
My bash fu was off on my previous list. The output of find was being
treated as a single string, rather than an array of paths; which ment
that the test that there was more than one path returned failed,
resulting in null output not just for empty directories but for
everyting.
This fixes the issue by converting find output to an array.
|
|
grep was existing with 1 when passed an empty directory, resulting in
TargetError being raised unless explicitly suppressed with
check_exit_code=False. This case is now fixed to correctly return an
empty dict without error.
read_tree_values bash function has also been optimized to not
unnecessarily run find in a subshell if the path passed to the function
does not exist.
|
|
Optimize online_all by offloading it to a shutils function which only
requres a single call to the target.
|
|
Optimize cpuidle module initialization by using the new Target.grep_values
call to get information about all idle states in a single call to the
target during module intialization, rather lazily fetching them from the
target afterwards.
|
|
Optimize hwmon module initialization by using the new Target.grep_values
call to get information about all HWMON devices in a single call to the
target.
|
|
Add two new methods to target that allow querying values of all sysfs
nodes in a sub-directory structure all at once. The difference is that
read_tree_values_flat returns a flat dict of path->value mappings;
read_tree_values returns a nested dict structure that mimics the
scanned sub-directories tree.
|
|
Use Module.name rather than Module.__name__ to name the logger for
slightly more readable log output.
|
|
Make sure shutils is always set, even if setup() has not been
called by initializing it on first access if necessary.
|
|
Kernel build process will be described in an external script referenced
from board config file.
Change-Id: Ied74824996a4121cdfded55b283e196e8193c6bc
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
|
|
hwmon: Disable if no permissions
|
|
- Make sure timestamps are actually reported in microseconds.
- Eliminate duplicate entries from successive dumps
|
|
Add DerivedSurfaceFlingerStats that parse output from
SurfaceFlingerFramesInstrument to produce FPS data and rendering
statistics.
|
|
Add DerivedGfxInfoStats that parse output from GfxInfoFramesInstrument
to produce FPS data and rendering statistics.
|
|
Various fixes.
|
|
ps() splits the output on whiestspace into fields; always expecting
nine. In some cases, wchan field may be blank, resulting in only eight
chunks after the split. Detect that case and insert and empty entry at
the appropriate index.
|
|
ps on recent Androids no longer takes an optional comm name; use
Target.ps() instead, and filter by process name on the host.
|
|
Previously FrameCollector.write_frames used "columns" argument only as a
filter for which columns to write, but the order would always be the
same as in raw output.
The Instrument API requires that the column ordering in the resulting
MeasurementsCsv matches the ordering of channels specified in reset()
(if any). This means the collectors should respect the ordering
specified in the "columns" parameter (which gets populated based on
active channels).
|
|
SurfaceFlingerFrameCollector.list now converts line endings before
splitting, so it now works when the endings are something other than
"\r\n".
|
|
utils/anroid: Documentation for LogcatMonitor
|
|
If we don't have permissions, scan() currently raises a
TargetError. Instead we should return False from probe() so the
module is disabled
|