Hi all,
I was trying to understand the flow of framebuffer flow for given imx53 code in the following directory repos/os/src/drivers/framebuffer/imx53/main.cc
In the main function, one static variable "session_component" has been created which uses the "config_attribute" function defined in line number 115 which expect a config file in build process.
What is the need of this config file with respect to framebuffer and where should i found this config file in the repository because when i run the framebuffer script it is not able to open config file?
Regards
Chirag Garg IIT Madras , Rise Lab
Hi all,
I am trying to run available os/run/framebuffer.run script on imx6 platform with modification for imx6. I am getting the following trace on the execution.
Starting kernel ...
kernel initialized Genode 14.11 int main(): --- create local services --- int main(): --- start init --- int main(): transferred 511 MB to init int main(): --- init created, waiting for exit condition --- undefined instruction [init -> platform_drv] --- i.MX6 platform driver --- [init -> fb_drv] Starting i.MX6 framebuffer driver [init -> test-framebuffer] --- Test framebuffer --- [init] child "platform_drv" announces service "Platform" [init -> fb_drv] Could not open file "config" [init -> fb_drv] Could not obtain config file [init -> platform_drv] void Ccm::ipu_clk_enable(): Enabling IPU Clk [init -> platform_drv] void Iomux::ipu_enable(): Enabling IOMUXC Clk no RM attachment (faulter 142090 with IP 10001e94 attempts to write to address 1280028) void Genode::Pager_object::unresolved_page_fault_occurred(): not implemented unknown signal context
As the trace shows after the init process creation one error "undefined instruction" has been reported ? what could be the root cause of this ?
I changed the all platform_drv files according to imx6. which seems to be working from the "child platform_drv announces service Platform " message. Is any thing wrong here ?
After this i am getting the error "could not open file config". I read other mailing list thread which says it is not an error but while tracing the code of framebuffer. I feel that it is important for framebuffer. But still i am not able to find the location where to put config file and what will be the content of this file.
Next, I am getting the no RM attachment error and page fault. what could be the reason of getting this error?
Thanks in advance. Regards
Chirag Garg IIT Madras , Rise Lab
On Wed, Feb 4, 2015 at 5:49 PM, chirag garg <chiragdthinker@...9...> wrote:
Hi all,
I was trying to understand the flow of framebuffer flow for given imx53 code in the following directory repos/os/src/drivers/framebuffer/imx53/main.cc
In the main function, one static variable "session_component" has been created which uses the "config_attribute" function defined in line number 115 which expect a config file in build process.
What is the need of this config file with respect to framebuffer and where should i found this config file in the repository because when i run the framebuffer script it is not able to open config file?
Regards
Chirag Garg IIT Madras , Rise Lab
Hi,
On 02/04/2015 01:19 PM, chirag garg wrote:
Hi all,
I was trying to understand the flow of framebuffer flow for given imx53 code in the following directory repos/os/src/drivers/framebuffer/imx53/main.cc
In the main function, one static variable "session_component" has been created which uses the "config_attribute" function defined in line number 115 which expect a config file in build process.
What is the need of this config file with respect to framebuffer and where should i found this config file in the repository because when i run the framebuffer script it is not able to open config file?
The config file's content of a framebuffer driver is dependent on the actual driver. For some drivers you can specify the resolution for instance. The framebuffer driver for the i.MX53 used the config file to determine, whether it has to buffer write attempts of the client, or if the client directly writes to the framebuffer itself. A corresponding configuration looks like the following:
<config buffered="yes"/>
The configuration is optional, you see the try-catch clause around the config file access. If there is no config file for the driver available, it uses a default value (not buffered).
Configuration files for Genode components are typically part of the whole system configuration delivered to the first init process of the system. Such configurations can be found in the different run-scripts of the Genode repositories. Have a look at the preliminary version of the Genode manual section 6:
http://genode.org/files/e01096b9ffe3f416157f6ec46c467725/manual-2015-01-23.p...
Regards Stefan
Regards
Chirag Garg IIT Madras , Rise Lab
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/
genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Hi,
On 02/09/2015 05:44 AM, chirag garg wrote:
Hi all,
I am trying to run available os/run/framebuffer.run script on imx6 platform with modification for imx6. I am getting the following trace on the execution.
Starting kernel ...
kernel initialized Genode 14.11 int main(): --- create local services --- int main(): --- start init --- int main(): transferred 511 MB to init int main(): --- init created, waiting for exit condition --- undefined instruction [init -> platform_drv] --- i.MX6 platform driver --- [init -> fb_drv] Starting i.MX6 framebuffer driver [init -> test-framebuffer] --- Test framebuffer --- [init] child "platform_drv" announces service "Platform" [init -> fb_drv] Could not open file "config" [init -> fb_drv] Could not obtain config file [init -> platform_drv] void Ccm::ipu_clk_enable(): Enabling IPU Clk [init -> platform_drv] void Iomux::ipu_enable(): Enabling IOMUXC Clk no RM attachment (faulter 142090 with IP 10001e94 attempts to write to address 1280028) void Genode::Pager_object::unresolved_page_fault_occurred(): not implemented unknown signal context
As the trace shows after the init process creation one error "undefined instruction" has been reported ? what could be the root cause of this ?
The most probable cause is that unprivileged code tried to execute instructions that need a higher privilege level. Of course, you can also execute some invalid opcodes, but most code is produced by compiler/assembler so there is little chance for this.
Another possibility is that some code (e.g. do you use the tracing framework?) uses the ARM performance counters. They are not configured to be used by userland components by default. You can add "perf_counter" to your SPEC-variables to enable them. Do something like this:
echo "SPECS += perf_counter" >> <path_to_build_dir>/etc/specs.conf
In general, we should extend the print warning by adding which component and which thread triggered the "undefined instruction", as well as the current instruction pointer. I have opened a corresponding issue:
https://github.com/genodelabs/genode/issues/1406
I changed the all platform_drv files according to imx6. which seems to be working from the "child platform_drv announces service Platform " message. Is any thing wrong here ?
That the platform driver announces its service doesn't say whether it is working correctly. Most work of the platform driver is done when a client comes to it and asks for device resources (power, clock etc.) For me it seems like the driver triggers a pagefault (see your last log messages), you should check what your driver is trying to do at the instruction pointer given by the fault message (IP 10001e94). Maybe you use wrong memory-mapped I/O regions?
After this i am getting the error "could not open file config". I read other mailing list thread which says it is not an error but while tracing the code of framebuffer. I feel that it is important for framebuffer. But still i am not able to find the location where to put config file and what will be the content of this file.
Forget about the config file. See the explanations from my last mail.
Next, I am getting the no RM attachment error and page fault. what could be the reason of getting this error?
As already said, I assume it is your platform driver.
Regards Stefan
Thanks in advance. Regards
Chirag Garg IIT Madras , Rise Lab
On Wed, Feb 4, 2015 at 5:49 PM, chirag garg <chiragdthinker@...9... mailto:chiragdthinker@...9...> wrote:
Hi all, I was trying to understand the flow of framebuffer flow for given imx53 code in the following directory repos/os/src/drivers/framebuffer/imx53/main.cc In the main function, one static variable "session_component" has been created which uses the "config_attribute" function defined in line number 115 which expect a config file in build process. What is the need of this config file with respect to framebuffer and where should i found this config file in the repository because when i run the framebuffer script it is not able to open config file? Regards Chirag Garg IIT Madras , Rise Lab
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/
genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
Thank you Stefan,
I am able to silent this error message and got the understanding of config file.
Regards
Chirag Garg IIT Madras , Rise Lab
On Wed, Feb 11, 2015 at 4:12 PM, Stefan Kalkowski < stefan.kalkowski@...1...> wrote:
Hi,
On 02/04/2015 01:19 PM, chirag garg wrote:
Hi all,
I was trying to understand the flow of framebuffer flow for given imx53 code in the following directory repos/os/src/drivers/framebuffer/imx53/main.cc
In the main function, one static variable "session_component" has been created which uses the "config_attribute" function defined in line number 115 which expect a config file in build process.
What is the need of this config file with respect to framebuffer and where should i found this config file in the repository because when i run the framebuffer script it is not able to open config file?
The config file's content of a framebuffer driver is dependent on the actual driver. For some drivers you can specify the resolution for instance. The framebuffer driver for the i.MX53 used the config file to determine, whether it has to buffer write attempts of the client, or if the client directly writes to the framebuffer itself. A corresponding configuration looks like the following:
<config buffered="yes"/>
The configuration is optional, you see the try-catch clause around the config file access. If there is no config file for the driver available, it uses a default value (not buffered).
Configuration files for Genode components are typically part of the whole system configuration delivered to the first init process of the system. Such configurations can be found in the different run-scripts of the Genode repositories. Have a look at the preliminary version of the Genode manual section 6:
http://genode.org/files/e01096b9ffe3f416157f6ec46c467725/manual-2015-01-23.p...
Regards Stefan
Regards
Chirag Garg IIT Madras , Rise Lab
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is
your
hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take
a
look and join the conversation now. http://goparallel.sourceforge.net/
genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main
-- Stefan Kalkowski Genode Labs
http://www.genode-labs.com/ · http://genode.org/
Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main