I have added mychardev driver to a custom kernel 5.6.2 , when I go through the menu config my driver is visible in the drivers' folder.
I then have created kconfig , makefile driver files.
I have compiled and loaded the kernel, but my character driver is not loaded, I checked it with lsmod.
How do I create a device file automatically i.e when I load a kernel module device file I need it to be present in the /dev directory
Related
I started working with Jupyterlab to analyse bunches of CSV files.
It is installed and run within an virtual environment on a windows PC (Windows 10, Python 3.9, JupyterLab 3.5.2).
As the filenames often change and our paths are quite deep I thought a file dialogue would be a good starting point to get data in.
I searched a while and found that ipyfilechooser could be my friend.
So I created a Jupyter Notebook and started with this code block:
import ipywidgets
from ipyfilechooser import FileChooser
chooser = FileChooser(
accept='.csv', # only show CSV files
multiple=False, # allow only one file
# optional starting path
start_path=r'\\sglx-srv1\geschaeft\MESSPLATZ'
)
display(chooser)
After executing this block a chooser widget appeared and I could select a folder or file, also from a UNC path (network drive).
But the setting of the start_path was always ignored and the dialogue always started from the folder the notebook itself is stored in.
I tried any variant I could find to quote the path, but with no luck.
It was not possible to let the file chooser start from any specified path neither local nor UNC.
What is wrong here? Is it a bug in my code or elsewhere?
I am trying to load a dataset into a notebook with. The dataset file file is in the same directory as the Juno notebook. The file name is correct.
I have tried removing the trailing ./ but it didn’t help.
df = pd.read_csv('./datatest.csv')
The error is that it can’t find the file. How can I specify the default directory or get the absolute path of a directory on iOS?
The problem was that both the notebook and the dataset was in a Dropbox folder. I'm not sure why it was the problem as all those files were downloaded locally on the phone and the option 'Make available offline' was set.
When I created a notebook in a local folder on the phone and the dataset was there, the error disappeared.
(Background: In a docker container on a NVidia Jetson TX2 board I have decompressed NVidia's Linux For Tegra tarball which contains lots of drivers and shared object files, some of which provide GStreamer element factories which produce elements that I use in my GStreamer pipeline. I am trying to run the pipeline in the docker container.)
However, there is an element in my GStreamer pipeline (on this Tegra board), called 'omxh264enc', which I haven't been able to create.
I've put the corresponding 'libnvomx.so' in my drivers folder which is in the exported paths GST_PLUGIN_PATH and the LD_LIBRARY_PATH.
ldd -r does not show any missing libraries for libnvomx.so
HOWEVER when I try and run the pipeline, output includes
WARN omx gstomx.c:2826:plugin_init: Failed to load configuration file: Valid key file could not be found in search dirs (searched in: /root/.config:/etc/xdg as per GST_OMX_CONFIG_DIR environment variable, the xdg user config directory (or XDG_CONFIG_HOME) and the system config directory (or XDG_CONFIG_DIRS)
INFO omx gstomx.c:2831:plugin_init: Using default configuration
ERROR omx gstomx.c:2894:plugin_init: Core '/usr/lib/aarch64-linux-gnu/tegra/libnvomx.so' does not exist for element 'omxh264enc'
WARN GST_PLUGIN_LOADING gstplugin.c:526:gst_plugin_register_func: plugin "/gst_1.8.3/libs/gstreamer-1.0/libnvomx.so" failed to initialise
and when I use GST_DEBUG=3 gst-inspect-1.0 libnvomx.so, libnvomx.so is blacklisted.
Plugin Details:
Name libnvomx.so
Description Plugin for blacklisted file
Filename /gst_1.8.3/libs/gstreamer-1.0/libnvomx.so
Version 0.0.0
License BLACKLIST
Source module BLACKLIST
Binary package BLACKLIST
Origin URL BLACKLIST
I have copied libnvomx.so into /usr/lib/aarch64-linux-gnu/tegra but this did not make a difference (probably because libnvomx is blacklisted).
I don't know where to find the gstomx.conf file, where maybe I can change the path /usr/lib/aarch64-linux-gnu/tegra/libnvomx.so to my designated drivers folder (/gst_1.8.3/libs/gstreamer-1.0/). I have used 'find' on /etc and some other folders but didn't find it (I didn't actually find a .config folder on the system).
(There are also other plugins with missing symbols, nvidia_drv.so with undefined symbol TimerSet and libglx.so with undefined symbol serverClient. I would like to find out what is suppose to provide these symbols? But these are not (direct) dependencies of libnvomx.so)
So how can I initialise / unblacklist libnvomx.so so I can use 'omxh264enc'? Do I need to find / make a gstomx configuration file or can I make it work with the default configuration? I read somewhere there may be a solution using a 'symlink' but at the moment I'm not familiar with what these are or how these work.
Let me know if you need more info, thanks.
I am dipping my toes in VxWorks driver development. My problem is that in my Kernel Configuration settings, I can search for my driver-component, but it is always greyed out and will not let me include it. When I right click it and select "check" it says "Undefined reference mydriver.o"
I read through the vxBus driver developer documentation and decided that I would test out the development flow by taking an already-existing/functioning driver and simply modify the file-name/function-name/print strings. I copied and modified the existing *.c, *.h, *.cdf, *.dc, *.dr as appropriate.
I also played around with putting the driver source files in the target/3rdparty directory as done for the "wrsample" driver.
I also tried to just throw in the correct #define statement in my config.h file to try and force the driver to be instantiated, but no luck.
Can anyone provide any help? It seems like I need to pre-build the driver source to generate a *.o file, but I'm not sure how to do this. I could not find a *.o file for the existing-driver that I modified...
Figured it out on my own. I did have to create a makefile and compile the source (in advance...before utilizing the driver in vxWorks). I used the makefile that was auto generated for my WindRiver Tornado as a template to create my driver makefile. I then created a batch file that calls the vxWorks make.
The reason that there was no object file for the existing driver is because the objects get added to the driver library (*.a) and not just a *.o.
All driver files exist in the target/3rdparty directory, but I did have to copy the *.cdf, and the *.h files into other directories to get it to work. I made this a step in my batch file.
When debugging with node-inspector, I can see all of the files in a folder except one.
I checked on the filesystem and the .js is there.
Ctrl+O doesn't let me select the file as well.
How can I open the file to place a breakpoint?
Thanks,
PS: I'm using Node Inspector v0.8.0 and node v0.10.33 on a Win7 32 bits
Node Inspector has two mechanisms for loading files in the GUI.
All files loaded by Node.js (V8) runtime are always listed in the GUI, this works very reliably. The downside is that files not loaded yet are not listed. This typically happens when your application is stared via node-debug or node --debug-brk.
There is a speculative algorithm trying to guess what files are part of your project and included them in the GUI even though they are not loaded in the runtime yet. The algorithm assumes that your project has package.json in the root directory and that the main script file is either in the project root directory (node index.js) or one-level deep (node bin/gpii.js). Additionally, if there is package.json in the current working directory, all javascript files in the current working directory and subdirectories are included too.
See lib/ScriptFileStorage.js for more details.
I suspect that your project is laid out in such way that Node Inspector does not recognise it and thus does not scan it for all javascript files.
You can verify this assumption by running the following code in Node Inspector's Console window while the process is paused, replacing ROOT with the real path to your project root:
require('ROOT/universal/gpii/node_modules/flowManager/src/FlowManager.js')
The file FlowManager.js should appear in Node Inspector after the command has finished.