自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (7)
  • 收藏
  • 关注

原创 电源管理(2) - loongson cpufreq

了解loongson cpufreq1.clock 初始化 170 static int loongson3_clock_init(void) 171 { 172 int i; 173 174 for_each_possible_cpu(i) { 175 sprintf(clk_names[i], "cpu%d_clk", i); 176 cpu_clks[i].name = clk_na.

2020-10-31 16:10:28 519

原创 电源管理 - EC

了解笔记本电源管理EC1.概述  EC的全称是Embedded Controller,嵌入式控制器。它实际上是一个单片机,常用于笔记本电脑中,用于键盘控制,触摸板,电源管理,风扇控制,笔记本电池管理等等的功能,所以虽然对于笔记本用户来说,EC一般是不可见的,但是却发挥着重要的作用。EC芯片通常是一个独立的芯片,并包含独立运行的软件,存放在自己(或者与BIOS共用)的非易失性介质中。  EC在笔记本电脑的整个生涯中都存在,这里的意思是即使笔记本关机,EC也还在工作,除非拔掉电池,EC芯片没有供电,只.

2020-10-31 10:36:06 4197

原创 linux serial framework (2) - serial 8250 driver

uart1.UART 框架图2.8250/16550芯片  该类芯片的驱动文件为8250.c,位于内核源码的/drivers/serial/目录下面。serial8250_init为该驱动的入口函数,nr_uarts和UART_NR在内核配置中定义,跟具体的平台相关,通常定义为4。由于CONFIG_SPARC没有被定义,所以做的第一件事情就是注册一个名为serial_8250_reg的UART驱动。重点分析:serial8250_init()—>uart_register_driv.

2020-10-30 09:51:28 2896

原创 linux serial framework (1) - 概述

了解linux serial framework1.uart  串口设备(serial or uart)是TTY设备的一种,Linux kernel为了方便串口驱动的开发,在TTY framework的基础上,封装了一层串口框架(serial framework)。该框架尽可能的屏蔽了TTY有关的技术细节,驱动工程师在编写串口驱动的时候,只需要把精力放在串口以及串口控制器本身即可。2.软件架构  Linux kernel serial framework位于“drivers/tty/serial.

2020-10-29 16:32:31 551

原创 linux TTY子系统(3) - tty driver

了解linux tty driver1.TTY device  kernel从设备模型和字符设备两个角度对它进行了抽象:设备模型的角度  为每个“数据通道”注册了一个stuct device,以便可以在sysfs中体现出来,例如:/sys/class/tty/tty/sys/class/tty/console/sys/class/tty/ttyS0字符设备的角度   为每个“数据通道”注册一个struct cdev,以便在用户空间可以访问,例如:/dev/tty/dev.

2020-10-28 14:53:52 1236

原创 linux TTY子系统(2) -- 软件框架

了解tty 子系统1.TTY的子系统  在Linux kernel中,TTY就是各类终端(Terminal)的简称。为了简化终端的使用,以及终端驱动程序的编写,Linux kernel抽象出了TTY framework:对上,向应用程序提供使用终端的统一接口;对下,提供编写终端驱动程序(如serial driver)的统一框架。TTY framework通过TTY core屏蔽TTY有关的技术细节,对上以字符设备的形式向应用程序提供统一接口。  软件框架所示:1.1.TTY core是TTY .

2020-10-28 13:47:54 1335

原创 Linux TTY子系统(1) - 了解TTY

了解linux tty1.TTY概述  TTY 是 Teletype 或 Teletypewriter 的缩写,原来是指电传打字机,后来这种设备逐渐键盘和显示器取代。不管是电传打字机还是键盘显示器,都是作为计算机的终端设备存在的,所以 TTY 也泛指计算机的终端(terminal)设备。为了支持这些 TTY 设备,Linux 实现了一个叫做 TTY 的子系统。所以 TTY 既指终端,也指 Linux 的 TTY 子系统,当然 TTY 还有更丰富(混乱)的含义。  硬件终端 terminal(TTY.

2020-10-28 13:05:39 914

原创 linux usb子系统(三)- usb mouse driver

了解usbmouse driver1.struct usb_mousestruct usb_mouse { char name[128]; // 名称,一般存储制造商名称 char phys[64]; struct usb_device *usbdev; // usb 设备模型 struct input_dev *dev; // 输入设备 struct urb *irq; // 用于usb 设备通信的urb 模块 signed char *data; //.

2020-10-18 16:05:20 372 1

原创 linux usb 子系统(二)- host driver

了解usb host driver.1.USB Subsystem Framework  The following chart shows the framework of the USB subsystem in Linux. Like i2c, the USB subsystem can be divided into three layers: ** Device Driver Layer - USB Core - Controller Driver Layer*

2020-10-18 13:13:37 1328

原创 linux usb 子系统(一)

了解usb 子系统1.USB 概述  USB,Universal Serial Bus(通用串行总线),是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。1.1.usb 接口1.2.USB标准1.3.USB总线结构  USB总线的拓扑结构如下图所示:USB主机控制器(USB Host Controller)通过根集线器(Roo.

2020-10-18 09:25:32 612 1

Device Tree debugging - part 3

linux device tree debugger 宝典卷三,解决Device Tree Issues。

2019-02-15

ORANGE’S:一个操作系统的实现

学习如何编写自己的操作系统,对于初学者很有帮助,值得学习。

2019-02-15

Device Tree debugging - part 2

linux device tree debugger 宝典卷二,解决Device Tree Issues。

2019-02-15

Device Tree debugging - part 1

学习linux device tree宝典,解决Device Tree Issues,有助于深刻认识DT.

2019-02-15

Practical_Binary_Analysis

ELF Format,Binary Analysis Fundamentals,Basic Binary Analysis in Linux,Disassembly and Binary Analysis Fundamentals

2019-02-15

Operating_Systems_From_0_to_1

linux ELF architecture,gdb debugger elf,x86 assembly language

2019-02-15

调试PLT/GOT代码

该代码包用于学习动态链接实现流程,便于进行调试PLT/GOT

2019-02-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除