你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32MP157 Linux系统移植开发篇15:Linux内核7寸触摸屏驱动移植

[复制链接]
STMCU小助手 发布时间:2022-9-30 15:51
1.实验目的
. g$ p( l. t5 \  Y  ?熟悉基于Linux操作系统下的触摸屏设备驱动移植配置过程。
" I% O* {3 _9 z! N% S' y, [4 o4 K  h3 t) o/ h5 p
2.实验平台" p$ G, C1 ^: T
华清远见开发环境,FS-MP1A平台;" g8 F0 `1 y; N6 K

( s2 j' d* ?  [7 M/ A8 x: U3.实验目的
$ E/ _) T4 k' e4 j/ h1 c* @# x0 P0 _熟悉基于Linux操作系统下的块设备驱动移植配置过程。- U$ j* k5 G( t

9 w; H6 K4 c) ^4.实验步骤
+ E+ z" Q& W' _- M# r7 u% K+ |1.导入交叉编译工具链% m% c" I) H3 N  D: P. w1 T
  1. linux@ubuntu:$ source /opt/st/stm32mp1/3.1-openstlinux-5.4-dunfell-mp1-20-06-24/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi
复制代码
0 M  m, N$ m. y- ?* r8 r
过程与5寸触摸屏移植过程相同,如果步骤重复请跳过。
' V6 x/ J+ |% H) m2 P2 k0 t* X3 }0 ~' e, p# X$ s9 {( u
2.修改设备树
- d8 K1 [& b# H" Y& @8 a修改arch/arm/boot/dts/stm32mp157a-fsmp1a-rgb070.dts文件,在文件末尾增加如下内容:) z1 Q6 h7 F0 O+ A2 U5 B5 h
. f# [; P5 t. y" a" v4 J' i9 r: L
  1. &i2c2 {
    % W# n" k/ p& F% g/ l, c1 B
  2. " l5 G5 @$ q! {% d0 P. M3 m5 i
  3. pinctrl-names = "default", "sleep";/ U* Q! n$ q) e! X
  4. ) ]: ~" l# s! C' F, @
  5. pinctrl-0 = <&i2c2_pins_a>;
    4 K, T0 C2 b. ?- v( y
  6. 1 a" p) I5 P! R% c. M9 J
  7. pinctrl-1 = <&i2c2_pins_sleep_a>;7 p  y- R$ O* J7 C4 a3 M

  8. 9 M' ^+ I& a5 z$ W! m& o
  9. i2c-scl-rising-time-ns = <100>;( k3 u% e/ c+ L
  10. / h% I9 C. t  B0 Y
  11. i2c-scl-falling-time-ns = <7>;( r, p; O. ^, v0 L; f5 q5 c4 {

  12. 5 z  r; D; r: @" I/ R6 g$ s
  13. status = "okay";
    5 O4 k$ J3 Q1 q& b5 a6 _9 G; j4 B
  14. 6 T# }, d1 W$ u7 o# ~
  15. /delete-property/dmas;* g7 w5 e6 ?5 v) z$ F" m6 e- x

  16. , k! e& d, I1 j2 E  {. D( S8 L
  17. /delete-property/dma-names;
    $ a9 a$ q) r8 ^# [# ^  D& F
  18. ! x/ g5 t  _" O, e! R! l& b5 z3 u- D( `
  19. touchscreen@5d {1 S3 \* a3 o& V5 T/ J
  20. * F( v6 u0 u9 d5 H3 ]/ j; i
  21. compatible = "goodix,gt911";. c+ @5 a  E5 `4 P

  22. 7 H/ y. v9 P# o2 P  t- w) K- I3 h
  23. reg = <0x5d>;4 K, [; V& x5 u+ U/ G. E& R* Z9 l

  24. ( f) {8 |8 ~# Q* {
  25. irq-gpios = <&gpiog 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
    ( F  X% S: p/ _& L' D1 O: {$ E4 y

  26. 1 ~7 A/ g) t1 h0 p
  27. reset-gpios = <&gpiog 8 GPIO_ACTIVE_HIGH>;
    4 G% @4 q( B; S2 `6 {
  28. 2 G5 ]. s8 W5 @' I% d& g/ n3 i
  29. interrupt-parent = <&gpiog>;
    ( X, G: u, m0 i4 B& t
  30. & B9 \6 T1 L: a/ ]7 A0 b
  31. interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
    , ]; [- S& P8 h3 Q1 d' _& ]1 `

  32. 2 c! c/ l# d, Z  @4 K: t
  33. status = "okay";6 `4 R/ D/ Z6 m5 R, J1 q  D2 X
  34. 7 h2 T% Y8 i6 D1 K1 j$ T* y; [
  35. // touchscreen-inverted-x;
    3 Q' ^# H) v5 _% {; @. ~0 G# S' I

  36. ; |4 u+ l# O6 T+ E, f  i
  37. touchscreen-inverted-y;
    4 [5 {% b/ o4 s5 p) E, _; k

  38. * C1 d& `3 q* }$ A. t
  39. touchscreen-swapped-x-y;
    ) S, }8 `5 x) K. p; O& D) Y
  40. ' r8 P/ C9 w9 C
  41. };
    . |' `0 x6 T# N$ m# A( p+ w+ L
  42. ( F) Y/ k' C# F, F: h  `1 S
  43. };
    - _. J2 o3 h* H* e% g8 M
复制代码

& @, M6 H/ h9 M+ ?3.配置内核
7 v3 y9 i" Y% |由于内核源码默认配置以及支持sii902x,本节列出主要选项,如下:
1 P: b3 ?6 p& M" }# }* [
! r2 T) z2 ^/ S1 a# p
  1. linux@ubuntu:$ make menuconfig- V5 z& O& y0 g
  2. . S4 t$ W% u5 p& X/ b
  3. Device Drivers ---># c9 L% o, L& t; @: O9 B" l

  4. 3 p& I  n6 x& l7 x
  5. Graphics support --->" T8 F) y2 Q. w4 V- B
  6. + I% k( R  t0 U9 n" I
  7. <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
    ) N9 K% a+ K5 l8 @) X# l- p
  8. 1 \  ~( w3 q, j
  9. <*> DRM Support for STMicroelectronics SoC Series. `! l5 @9 u( {- S8 C, }, V
  10. 5 v0 Y0 h' i8 q+ f  O
  11. Display Interface Bridges --->
    ; {# Z+ D; s4 O- \' \7 f) {" a. D( t
  12. 1 `! g# d$ u- g. b. n
  13. <*> Silicon Image sii902x RGB/HDMI bridge
复制代码

' U6 C& P. Y. |- W4.编译内核级设备树:
7 T0 ^  M- f% R+ w! l( Hlinux@ubuntu make -j4 uImage dtbs LOADADDR=0xC2000040( w- ~4 j' U+ ?1 }

( w1 L9 S8 z* ?0 Q5 b5.重启测试
5 r' M( O0 s4 ?4 X& ]0 a# z将编译好的设备树和内核镜像拷贝到/tftpboot目录下,通过tftp引导内核,设备连接七寸屏,重启设备后查看/dev会多出event0的信息,这是点击屏幕会的到反馈。
3 g: Y0 k9 w# y- z- g! K
! g- |7 N: b7 w" C5 E3 n% v" @root@fsmp1a:# ls /dev/input
  R; J7 K: V* w+ d0 q( _: b# D0 y$ B/ G2 u0 C) n4 ]- u& j& F
30bb5596ca3a6155b667790f7e3002fa.png 8 [% ?1 Q7 v0 ]( V* x" |

: z# E, Y+ M$ i1 \————————————————5 G5 G1 L) m# F  D' b) c0 u
版权声明:华清远见IT开放实验室6 Y7 {2 T3 K1 e. e- @3 d

  `6 z5 C5 S+ s' x
赞 收藏 评论0 发布时间:2022-9-30 15:51

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版