 c06fb25d1f
			
		
	
	c06fb25d1f
	
	
		
			
	
		
	
	
		
			Some checks failed
		
		
	
	Build Kernel / Build all affected Kernels (push) Has been cancelled
				
			Build all core packages / Build all core packages for selected target (push) Has been cancelled
				
			Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
				
			Build Toolchains / Build Toolchains for each target (push) Has been cancelled
				
			Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
				
			Coverity scan build / Coverity x86/64 build (push) Has been cancelled
				
			
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 93ae2b9f6c792d17b691e23e4ba3cf07867e1df1 Mon Sep 17 00:00:00 2001
 | |
| From: Jack Andersen <jackoalan@gmail.com>
 | |
| Date: Fri, 26 May 2023 12:19:19 -0700
 | |
| Subject: [PATCH 0474/1085] panel-sitronix-st7701: Fix panel prepare over SPI
 | |
| 
 | |
| A DSI write is issued in st7701_prepare even when the probed panel
 | |
| runs on SPI. In practice, this results in a panic with the
 | |
| vc4-kms-dpi-hyperpixel2r overlay active.
 | |
| 
 | |
| Perform the equivalent write over SPI in this case.
 | |
| 
 | |
| Signed-off-by: Jack Andersen <jackoalan@gmail.com>
 | |
| ---
 | |
|  drivers/gpu/drm/panel/panel-sitronix-st7701.c | 10 +++++++++-
 | |
|  1 file changed, 9 insertions(+), 1 deletion(-)
 | |
| 
 | |
| --- a/drivers/gpu/drm/panel/panel-sitronix-st7701.c
 | |
| +++ b/drivers/gpu/drm/panel/panel-sitronix-st7701.c
 | |
| @@ -605,7 +605,15 @@ static int st7701_prepare(struct drm_pan
 | |
|  		st7701->desc->gip_sequence(st7701);
 | |
|  
 | |
|  	/* Disable Command2 */
 | |
| -	st7701_switch_cmd_bkx(st7701, false, 0);
 | |
| +	switch (st7701->desc->interface) {
 | |
| +	case ST7701_CTRL_DSI:
 | |
| +		st7701_switch_cmd_bkx(st7701, false, 0);
 | |
| +		break;
 | |
| +	case ST7701_CTRL_SPI:
 | |
| +		ST7701_SPI(st7701, DSI_CMD2BKX_SEL,
 | |
| +			   0x177, 0x101, 0x100, 0x100, SPI_CMD2BKX_SEL_NONE);
 | |
| +		break;
 | |
| +	}
 | |
|  
 | |
|  	return 0;
 | |
|  }
 |