Skip to content
Advertisement

Tag: linux-device-driver

Resubmitting DMA Engine transactions

I’m writing a custom high-speed Linux SPI driver for an embedded SoC. To send data to the SPI peripheral (DMA_MEM_TO_DEV) I’m the Linux DMA Engine API. https://www.kernel.org/doc/Documentation/dmaengine/client.txt Based on the documentation, the steps for setting up and executing a DMA transaction are: Allocate a DMA slave channel : dma_request_channel Set slave and controller specific parameters : dmaengine_slave_config Get a descriptor

Adaptation from old init_timer to new timer_setup

I have been trying to port a driver from 2.6 to 4.X without support from the original board manufacturer (and very limited Linux experience). The original driver uses init_timer() and passes in a pointer to the timer_list structure. That timer_list structure’s data element was set to a pointer to another memory structure and the function element set to the callback.

Serial port hangs on close()

I developed this simple kernel module, which emulates a serial port by using a FIFO queue and a timer (read from hardware : out from the queue, write to hardware : insert in the queue). Source code is shown next. Then, I wrote a simple test-application which configures the port settings (baud rate, parity, stop bits, etc) and starts a

Purpose and usage of GPIO-Hog declaration

Questions What is the purpose and use-case of the gpio-hog declaration? Can a ‘hogged’ gpio pin be interfaced with from Userspace? If a ‘hogged’ gpio pin cannot be interfaced with from Userspace, then is there any mechanism to configure GPIO pins in the dts file for Userspace interaction? Background I am trying to configure many (10+) GPIOs to speak with

Advertisement