aboutsummaryrefslogtreecommitdiff
path: root/includes
AgeCommit message (Collapse)Author
2018-10-22don't use html in text-only outputBurt P
Fixes https://github.com/lpereira/hardinfo/issues/266 This is also needed so that vendor urls can be links where appropriate. Signed-off-by: Burt P <pburt0@gmail.com>
2018-10-13Display status of ASLR in Computer->Operating SystemLeandro Pereira
2018-09-26gpu: show more dt infoBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2018-09-26device tree: some operating-points-v2 propertiesBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2018-06-02vendor.c: add some data fields and cleanupBurt P
* Initialize strings to empty in `read_from_vendor_ids()` * vendor.ids format reader clears all fields at `name` * Added `name_short`, and `url_support` fields * `vendor_cleanup()` function that frees `vendor_list` * `vendor_match()` returns the whole `Vendor` data structure Signed-off-by: Burt P <pburt0@gmail.com>
2018-05-27vendor.c: fix vendor sortBurt P
Fix a really stupid sort function I wrote for 60b9f3360930296c0f3e8b04672b8bf7468bedcb. Now actually does what that commit claims to do. I think I must have just sketched it out and then forgot to go back and correct it. It's weird that it happened to fix the one result I was testing for. Signed-off-by: Burt P <pburt0@gmail.com>
2018-05-25gpu_util.c: add nvidia specific information from procfsBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2018-05-25fix for #251 missing <unistd.h> at "hardinfo.h"PICCORO Lenz McKAY
2018-05-18Fix compiler warnings generated with GCC 8Leandro Pereira
2018-04-24vendor.c: try and reduce the likelihood of false matchesBurt P
* Rename struct members to be less ambiguous * Sort the list by length of match_string, longest first, so better matches match first * Add flag to force case-sensitive matching so that two or three-letter names don't match names that happen to have those letters in them Also, added ASUS and fixes #241. (https://github.com/lpereira/hardinfo/issues/241) Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24hardinfo: add cli option to skip benchmarksBurt P
If you just need the hardware report, this makes it so much faster. Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24computer/display: use x_util for display informationBurt P
This commit fixes: * #200 now using xrandr to get screen info instead of gdk, so it works from the cli * #27 opengl core and compatibility versions are both listed * #230 (by removing extension list) Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24[new] devices/gpu: graphics processorsBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24[new] gpu_util: functions and data structures for gpu informationBurt P
Enumerates GPUs into a list. Currently from PCI and device tree. Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24[new] x_util: functions and data structures for x server informationBurt P
Get X display info from Xlib, xrandr, xdpyinfo, and glxinfo. Also, Some simple Wayland info lives here for now. Signed-off-by: Burt P <pburt0@gmail.com>
2018-04-24[new] pci_util: functions and data structures for pci informationBurt P
Based on usb_util. Only current method is via lspci, but framework exists to add other methods. Signed-off-by: Burt P <pburt0@gmail.com>
2018-03-12usb: requested changesBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2018-03-12usb_util.cBurt P
A set of functions for getting information for a single USB device, or a list of all devices. The only implemented method is using `lsusb`, which is slow. A method using sysfs would be much better. The existing sysfs and procfs methods in devices/usb.c do not appear to work, so it would have to be something new. devices/usb.c modified to use usb_util, but all the old code is still there. Signed-off-by: Burt P <pburt0@gmail.com>
2018-03-12report: highlight "selected" itemsBurt P
For benchmark results, the current machine will be highlighted in the list by using the shell's select marker. Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27x86: fix for kernels that don't provide cache idBurt P
Use shared_cpu_list as a unique cache id, but only in the case that kernel-supplied cache id is not available. Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27x86,arm: cpu clocks list in package informationBurt P
Show actual clocks where cores or threads share a clock. Ex: x86 SMT each core has one clock shared by both threads. Ex: BCM2837 has one clock for all four cores. Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27Fix benchmark_parallel_for() to use correct number of threadsBurt P
If (end - start) / threads left a remainder, benchmark_parallel_for() would start an extra thread for the leftover elements. Now, it has the last thread process the few extra elements. Added a note: benchmark_parallel_for(): element [start] included, but [end] is excluded. callback(): expected to processes elements [start] through [end] inclusive. Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27benchmark: New benchmark typesBurt P
New benchmark types: * benchmark_crunch_for(): call function repeatedly for a number of seconds; result is number of completions. * benchmark_parallel(): one call for each available thread up to n_threads; result is sum of return values. Tweaks: * Store return values from callback via benchmark_parallel_for_dispatcher() Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27Add cli param to format result for -bBurt P
For running benchmarks from the command line, add a new param to specify the output format: -g "conf" gives a line suitable for benchmark.conf -g "shell" gives the complete "moreinfo" shell data -g "short" (or nothing) gives the bench_value string as before Signed-off-by: Burt P <pburt0@gmail.com>
2018-02-27Benchmark results: store threads usedBurt P
Benchmark results store actual number of threads used by benchmark when it was run. Previously, results assumed all available threads were used. Examples: * CPU Fib only uses one * FPU FFT uses 4, 2, or 1 * N-Queens uses 10, 5, 2, or 1 Signed-off-by: Burt P <pburt0@gmail.com>
2017-12-09x86: add summary of caches to package informationBurt P
Show actual physical caches by counting only unique references from each "cpu" (hardware thread). Signed-off-by: Burt P <pburt0@gmail.com>
2017-09-04Add prototype for processor_frequency_desc()Leandro Pereira
2017-08-27dmi: requested changesBurt P
Change requested by lpereira in https://github.com/lpereira/hardinfo/pull/160 Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-27DMI: allow specifying type for dmi_chassis_type_str()Burt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-27Create dmi_util.c and move *_util.c to hardinfo/Burt P
These stand alone interfaces and are used across modules, so just make them available to any module by default. Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-27DMI: dmi_chassis_type_str() maps chassis-type to stringBurt P
dmi_chassis_type_str() is moved from code in computer.c:detect_machine_type(). It makes sense to keep it with dmi, as it maps a dmi-defined value to a string. This way it can be used in both dmi.c and computer.c. Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-27DMI: create single dmi_get_str() that uses sysfs with dmidecode fallbackBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-15Add info_field_printf() to reduce some sturct Info field boilerplateLeandro Pereira
2017-08-14Begin getting rid of callbacks returning stringsLeandro Pereira
Strings were never a good choice to begin with. However, with the efforts to improve translatability, they became even worse. This is an attempt to clean up the current mess and provide a more structured way for modules to commmunicate with the shell. The Computer module has been partially converted and changes will be provided next. It's partially converted since some of its information is still stored as strings. The Shell still only understands strings; that's why the structured data is converted to a string the way it is. Once all modules are converted, the Shell can be modified to handle struct Info directly without having to parse the .ini-like strings.
2017-08-14Move hardinfo_clean_label() and hardinfo_clean_value() to util.cBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-12x86: add microcode version to reported informationBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-11Separate processor name and description + count cores and threadsBurt P
* add cpu_procs_cores_threads() function to get counts from sysfs/topology * each platform must now provide processor_name() and processor_describe() * processor_name_default(): returns a list of unique processor->model_name * processor_describe_default(): returns "N physical; M cores; L threads" * processor_describe_by_counting_names(): returns a list of unique processor->model_name with Nx prefix (ex: "4x ARM Cortex A53 + 4x ARM Cortex A33") * x86: _name and _describe use defaults * arm: _name returns name of SOC, if available, _describe returns processor_describe_by_counting_names() * all other platforms: _name and _describe use defaults * Computer module summary now shows both name and description for CPU Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-09arm: Try to lookup the SOC name from dt/compatibleBurt P
Just ARM for now, but maybe this will become more generic and it will be possible to have the processor package name and description seperate, even for x86 and whatnot. Also perhaps work in Sockets/Threads/Cores information. Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-09arm: use decoded name instead of generic linux name for model_nameBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-09Handle mixed cores in get_processor_name(), ex: big.LITTLE or TegraBurt P
In the future, I think a processor will need a name and a description. Name as the straight name of the processor or SOC, and description as what name is now, with 4x and whatnot. x86 description might be "8 cores, 16 threads" or similar. Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-07Reset some file modes to 0644Burt P
Touched files were changed to 0755 in 6f8cedca0671ab68514352c64579546547804475 Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-04Remove tree_view_save_image()/cb_save_graphic() -related.Burt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-08-04About dialog changesBurt P
* Use a define for copyright latest year, also used by `hardinfo --version` * Don't translate Jakub Szypulka * Add myself to contributors list Signed-off-by: Burt P <pburt0@gmail.com>
2017-07-30gtk3: loadgraph/uber-graph: support multiple lines on the graphBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-07-30loadgraph: make loadgraph opaque, sample gdoubleBurt P
Old load graph still uses ints internally. Signed-off-by: Burt P <pburt0@gmail.com>
2017-07-30GTK3 updatesBurt P
* Use gtk_widget_get_window() instead of ->window cmake: * add option to build against gtk3 `-DHARDINFO_GTK3=1` * combine hardinfo-shell static library and hardinfo * disable guibench for gtk3 hardinfo/util.c: * widget_set_cursor() gtk3 changes * For now, the whole function tree_view_save_image() is disabled for gtk3. shell/shell.c: * add gtk_notebook_set_page() compatibility macro if not defined * shell_summary_add_item() fixes * Disable RANGE_GET_VALUE() RANGE_SET_VALUE() macros for GTK3. This is a nigtmare onion to try and peel. shell/callbacks.c: * gtk_about_dialog_set_name() -> gtk_about_dialog_set_program_name() after GTK+2.12. shell/loadgraph.c: * builds, but not yet functioning under gtk3 Signed-off-by: Burt P <pburt0@gmail.com>
2017-07-30Started GTK3 supportTotalCaesar659
2017-07-29Refactor distribution detection routineLeandro Pereira
2017-07-25device tree: silence some warningsBurt P
Signed-off-by: Burt P <pburt0@gmail.com>
2017-07-25device tree: fix crash when device tree is not foundBurt P
* check if device tree was found before add_keys() * UNKIFNULL(model) before strcmp * make UNKIFNULL() STRIFNULL() EMPIFNULL() macros more generic Signed-off-by: Burt P <pburt0@gmail.com>