Skip to content

Instantly share code, notes, and snippets.

View openedev's full-sized avatar

Jagan Teki openedev

View GitHub Profile
[ 4.700635] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
[ 4.700652] Linux version 5.10.160 (tops@tops-ThinkPad-E14-Gen-5) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29)) 10.3.1 20210621, GNU ld (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29)) 2.36.1.4
[ 4.707504] Machine model: Edgeble NCM6A-6CAM
[ 4.707609] efi: UEFI not found.
[ 4.710056] OF: fdt: Reserved memory: failed to reserve memory for node 'drm-logo@00000000': base 0x0000000000000000, size 0 MiB
[ 4.710069] OF: fdt: Reserved memory: failed to reserve memory for node 'drm-cubic-lut@00000000': base 0x0000000000000000, size 0 MiB
[ 4.710124] Reserved memory: created CMA memory pool at 0x0000000010000000, size 256 MiB
[ 4.710129] OF: reserved mem: initialized node cma, compatible id shared-dma-pool
[ 4.823627] Zone ranges:
[ 4.823636] DMA [mem 0x0000000000200000-0x00000000ffffffff]
1. ACPI vs UEFI
ACPI (Advanced Configuration and Power Interface) and UEFI (Unified Extensible Firmware Interface) are both important standards in modern computer systems, but they serve different purposes.
ACPI is a power management and configuration interface specification for hardware and operating systems. It defines various aspects of system configuration, including power states, device enumeration, and resource allocation. ACPI is typically implemented in the firmware (BIOS or UEFI) of a computer system and provides a standardized way for the operating system to interact with hardware components.
UEFI, on the other hand, is a replacement for the traditional BIOS (Basic Input/Output System) firmware interface. It provides more advanced features than BIOS, including support for larger hard drives, faster boot times, a modular architecture, and support for modern security features like Secure Boot. UEFI serves as the interface between the operating system and the firmware, providing a standardized way f
&ecspi2 {
cs-gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi2>;
status = "okay";
switch@0 {
compatible = "nxp,sja1105q";
reg = <0>;
spi-max-frequency = <4000000>;
&ecspi2 {
cs-gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi2>;
status = "okay";
switch@0 {
compatible = "nxp,sja1105q";
reg = <0>;
spi-max-frequency = <4000000>;
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 6.1.58-00023-g8412973e7a85-dirty (j@j-ThinkPad-E14-Gen-2) (arm-linux-gnueabihf-gcc (GCC) 11.0.1 20210310 (experimental) [master revision 5987d8a79cda1069c774e5c3
02d5597310270026], GNU ld (Linaro_Binutils-2021.03) 2.36.50.20210310) #1 SMP Wed Nov 22 15:32:42 IST 2023
[ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: LTTS i.MX6DL/SOLO Dev. KIT
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] cma: Reserved 64 MiB at 0x4c000000
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000010000000-0x000000003fffffff]
// SPDX-License-Identifier: GPL-2.0 OR X11
/*
* Copyright (C) 2016 Amarula Solutions
*/
/dts-v1/;
#include "imx6dl.dtsi"
#include <dt-bindings/gpio/gpio.h>
scanning bus usb@ff5c0000 for devices... 2 USB Device(s) found
scanning bus usb@ff5d0000 for devices... 1 USB Device(s) found
scanning bus usb@ff600000 for devices... 1 USB Device(s) found
scanning bus usb@ff580000 for devices... Adding disk for usb_mass_storage.lun0 failed (err=-9223372036854775788/0x8000000000000014)
device 'usb_mass_storage.lun0' failed to unbind
1 USB Device(s) found
device 'usb_mass_storage.lun0' failed to unbind
scanning usb for storage devices... 2 Storage Device(s) found
=> usb tree
USB device tree:
USB XHCI 1.10
scanning bus usb@ff580000 for devices... Calling usb_setup_device(), portnr=0
read_descriptor for 'usb@ff580000': ret=0
** usb_find_child returns -2
usb_scan_device: Probing 'usb_hub', plat=000000003df58fb0
Calling usb_setup_device(), portnr=1
read_descriptor for 'usb_hub': ret=0
** usb_find_child returns -2
usb_scan_device: Probing 'usb_mass_storage', plat=000000003df697d0
diff --git a/arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2-of10.dts b/arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2-of10.dts
index 183dd2110842..8bdb8d34880a 100644
--- a/arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2-of10.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mm-icore-mx8mm-ctouch2-of10.dts
@@ -44,13 +44,11 @@ &dsi {
#size-cells = <0>;
status = "okay";
- ports {
- port@1 {
static int generic_dsim_find_panel_or_bridge(struct samsung_dsim *dsi)
{
struct device *dev = dsi->dev;
struct drm_panel *panel;
struct drm_bridge *bridge;
int ret;
ret = drm_of_find_panel_or_bridge(dev->of_node, 1, 0, &panel, &bridge);
if (ret) {
DRM_INFO("%s: ret = %d\n", __func__, ret);