Hello I am new in Linux kernel and I want to load i2c as a module in beaglebone black so how I can do this I search something regarding this (https://www.ddcutil.com/kernel_module/) but I don't understand how I do this help me
Related
I am trying to currently make a c program that will make a light blink on a Raspberry Pi 3 with embedded linux installed. I am currently building the image for the OS using yocto, poky with the raspberry pi 3 and open embedded. The OS installs on the SD card and I can have managed to add the layer that runs applications and have made a simple hello world. I am now trying to access the GPIO pins but having trouble with this.
There are lot of resources that talk about blink LED on Raspberry.
Check here, here, here, or here
Your question is related to Yocto, because once you constructed the image and boot it correctly, you just need to know how to develop a userspace example to control your desired GPIO.
NOTES:
You may encounter that GPIO is not exported in userspace, so check this answer.
I have written a simple Kernel Module that monitors network traffic in a bridge mode. This module works on a desktop machine with two ethernet cards. Now I am trying to test it on a device called "espresso bin" created by Marvell.
Problem is my kernel module is not even seeing any packets on this board. Board layout shows something called "packet processor" but in linux kernel there is nothing related to that so I don't know how to interact with it. The mystery is that without me getting any packets the end client works fine in bridge mode.
Any suggestions on how to debug this? How to deal with hardware specific components in linux?
Thanks.
I begin embedded Linux with BeagleBone Black. I use crosstool-NG to build U-boot. Result is file MLO and u-boot.img, which was wrtite into SD cards.
Then, I insert SD cards into BeagleBone Black to test.
I follow this decription https://elinux.org/Building_for_BeagleBone#U-Boot
But, it don't show #U-boot.
Note that i just test uboot, not kernel image and root file system. And a uboot image is available on the onboard eMMC.
How do I fix it?
Thank you!
I am currently developing a SPI Kernel Module for my Beaglebone Black (Debian Wheezy 2015-11-12, Kernel version 3.8.13-bone79). My kernel module can access (request_mem_region() => ioremap()) registers from the AM3358 processor (read/write) to manipulate the registers, to change the settings of the SPI0.
On the other side is my device tree, which can manipulate the pins of the SPI0.
Unfortunately, I´ve got Problems:
If I load my Device Tree first, and then my Kernel Module I get an message that I haven´t got permission to load my kernel module.
If I load my Module first and then my Device tree, all pinmuxes are allright, but the CLK of SPI0 is killed. Furthermore if I remove my module and free my allocated Memory (Registers, iounmap() => release_mem_region()) I get a 'Trying to free nonexistent resource' message.
You see, I am struggeling to understand the interaction between Device Tree and Kernel Module...
I would be extremely grateful, if someone could "push" me in the right direction... ;)
All the best
Flo
I have just upgraded my kernel from 3.8.13 to 3.18 and need to control the pinmux options on the bbb. I understand that there is no cape manager anymore and i have used the following command to set the pin P8_10 to be a GPIO with pull down enabled. echo gpio_pd > /sys/devices/ocp./P8_10_pinmux./state
My issue arises when i try and use the same command for P8_26. I am able to set this pin to be a GPIO or to the default state but it does not recognise the gpio_pd or gpio_pu command.
The following answer has provided me a good deal of information and been very helpful:
How can I edit a pinmux for BeagleBone Black on linux kernel 3.17?
Can anyone point out what i am missing here?
Thanks in advance