device-tree

Register snd-soc-dummy in a device tree

不羁的心 提交于 2020-02-20 10:26:31
问题 I'm trying to register the ALSA dummy codec provided in soc-utils in my device tree source file, to use it with an i2s device driver (sun8i-i2s). I've tried to set the sound-dai field in my i2s configuration as explained here : https://patchwork.kernel.org/patch/7679391/, but the device driver fails to find the dai name when reading the device tree. I've found two workarounds, which consists in either writing my own dummy codec and giving it to the device tree : / { stupid-codec { #sound-dai

Register snd-soc-dummy in a device tree

会有一股神秘感。 提交于 2020-02-20 10:26:27
问题 I'm trying to register the ALSA dummy codec provided in soc-utils in my device tree source file, to use it with an i2s device driver (sun8i-i2s). I've tried to set the sound-dai field in my i2s configuration as explained here : https://patchwork.kernel.org/patch/7679391/, but the device driver fails to find the dai name when reading the device tree. I've found two workarounds, which consists in either writing my own dummy codec and giving it to the device tree : / { stupid-codec { #sound-dai

Difference between dts and ACPI

时光毁灭记忆、已成空白 提交于 2020-01-12 05:17:45
问题 We can declare platform device information in dts file, rather than hard coding every data into operating system. Taking "arm" architecture as example. it supports dts and we will take dts from arch/arm/boot/dts/xx.dts. Convert this xx.dts into xx.dtb and loaded with kernel Image. I recently came across ACPI, when i came across x86 architecture, from the documents, what i understood is ACPI is similar to device tree. We can declare platform device information information in ACPI tables, my

freescale imx6 with mpu9250

烂漫一生 提交于 2020-01-04 07:52:12
问题 I am trying to interface freescale imx6 SoC with mpu92/65 sensor device. I have taken mpu92/65 device driver from android (https://github.com/NoelMacwan/Kernel-10.4.1.B.0.101/tree/master/drivers/staging/iio/imu ) and have done necessary modifications to the driver and device tree. Device tree modifications: &i2c3{ ... extaccelerometer: mpu9250@68{ compatible = "mpu9250"; reg = <0x68>; interrupt-parent = <&gpio2>; interrupts = <9>; int_config = /bits/ 8 <0x00>; level_shifter = /bits/ 8 <0>;

mmap EINVAL error on UIO device

穿精又带淫゛_ 提交于 2020-01-03 04:24:26
问题 I have trouble mapping physical memory on Xilinx Zynq after attempting to use UIO instead of mapping directly /dev/mem . While the plan is to run the application as a normal user instead of root this is still being run as root . Apparently the first mapping is successful while the rest done to the same file descriptor 12 ( /dev/uio/ps2pl ) fail. While the obvious difference is the offset, it is within the range (see device tree) and it is properly page aligned. This application was working

Trouble with SPIDEV, device tree and .dtbo name with Beaglebone Black

跟風遠走 提交于 2019-12-23 19:19:20
问题 I have some weird issue with device tree. I found out that changing name of the .dtbo changed the beahvior of the kernel ! I have modified the BB-SPIDEV1-00A0.dts given in /lib/firmware with Angstrom : /* * Copyright (C) 2013 CircuitCo * * Virtual cape for SPI1 on connector pins P9.29 P9.31 P9.30 P9.28 * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ /dts

Which is the cleaner way to get a pointer to a struct device in linux?

亡梦爱人 提交于 2019-12-23 12:38:09
问题 i'd need to obtain a pointer to a particular device registered in linux. Briefly, this device represents a mii_bus object. The problem is that this device seems doesn't belong to a bus (its dev->bus is NULL ) so i can't use for example the function bus_for_each_dev . The device is however registered by the Open Firmware layer and i can see the relative of_device (which is the parent of the device i'm interested in) in /sys/bus/of_platform . My device is also registered in a class so i can

Deciphering Device Tree

与世无争的帅哥 提交于 2019-12-23 05:28:04
问题 Here is an excerpt I pulled from a device tree on my embedded Linux Kernel. This is how I understand it now: 1) The aemif interface is located at physical address 0x30000000 2) The aemif driver is located in a file called davinci_aemif.c and it uses a clock called aemif 3) The aemif has 2 devices on it, one being cs2 and the other being nand (I don't think this assumption is correct) Now for the Questions: 1) What is the line reg = <0x21000a00 0x100>; doing? How can the aemif which is located

i am unable to boot with my latest rpi-3.18.0 kernel and enabling the device tree?

风格不统一 提交于 2019-12-23 02:32:26
问题 I am working on the latest rpi kernel ie 3.18.0 and by enabling the device tree. I compiled the source code and with that image and modules i am unable to boot. I am getting a blank screen and its not booting. I added the following into the config.txt even though i am unable to boot device_tree=bcm2708-rpi-b.dtb device_tree_address=0x100 kernel_address=0x8000 disable_commandline_tags=2 But with the image and modules that are given in the link https://github.com/raspberrypi/firmware/tree/next

Overview/reference manual for Open Firmware Device Trees

六眼飞鱼酱① 提交于 2019-12-22 06:04:44
问题 I am trying to setup a driver for an embedded PowerPC board, and the correct way to do this today is to use the OpenFirmware Device Tree datastructure (the .dtb file, compiled from a .dts file). Creating a tree is pretty easy, but how do I get my device driver to find its node and the data in it? I have not managed to find any good reference on this, and books like "Linux Device Drivers" are too much into x86 land to be of much help for device trees that mostly pertain to Power Architecture