kernel: bump 5.4 to 5.4.132
Manually rebased: layerscape/patches-5.4/805-display-0002-drm-rockchip-prepare-common-code-for-cdns-and-rk-dpi.patch All other patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
This commit is contained in:
		 John Audia
					John Audia
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							269e49577b
						
					
				
				
					commit
					2fe1b32156
				
			| @@ -6,10 +6,10 @@ ifdef CONFIG_TESTING_KERNEL | |||||||
|   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) |   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) | ||||||
| endif | endif | ||||||
|  |  | ||||||
| LINUX_VERSION-5.4 = .131 | LINUX_VERSION-5.4 = .132 | ||||||
| LINUX_VERSION-5.10 = .46 | LINUX_VERSION-5.10 = .46 | ||||||
|  |  | ||||||
| LINUX_KERNEL_HASH-5.4.131 = 25e35a6ec1c0c72b971347dd8e403f4953e1a023cbcf96f9707ede5d45b399fe | LINUX_KERNEL_HASH-5.4.132 = 8466adbfb3579e751ede683496df7bb20f258b5f882250f3dd82be63736d00ef | ||||||
| LINUX_KERNEL_HASH-5.10.46 = 569122a39c6b325befb9ac1c07da0c53e6363b3baacd82081d131b06c1dc1415 | LINUX_KERNEL_HASH-5.10.46 = 569122a39c6b325befb9ac1c07da0c53e6363b3baacd82081d131b06c1dc1415 | ||||||
|  |  | ||||||
| remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ | |||||||
|  struct fis_image_desc { |  struct fis_image_desc { | ||||||
|      unsigned char name[16];      // Null terminated name |      unsigned char name[16];      // Null terminated name | ||||||
|      uint32_t	  flash_base;    // Address within FLASH of image |      uint32_t	  flash_base;    // Address within FLASH of image | ||||||
| @@ -67,6 +69,7 @@ static int parse_redboot_partitions(stru | @@ -72,6 +74,7 @@ static int parse_redboot_partitions(stru | ||||||
|  				    const struct mtd_partition **pparts, |  				    const struct mtd_partition **pparts, | ||||||
|  				    struct mtd_part_parser_data *data) |  				    struct mtd_part_parser_data *data) | ||||||
|  { |  { | ||||||
| @@ -17,7 +17,7 @@ | |||||||
|  	int nrparts = 0; |  	int nrparts = 0; | ||||||
|  	struct fis_image_desc *buf; |  	struct fis_image_desc *buf; | ||||||
|  	struct mtd_partition *parts; |  	struct mtd_partition *parts; | ||||||
| @@ -234,14 +237,15 @@ static int parse_redboot_partitions(stru | @@ -239,14 +242,15 @@ static int parse_redboot_partitions(stru | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
|  #endif |  #endif | ||||||
| @@ -35,7 +35,7 @@ | |||||||
|  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED |  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED | ||||||
|  	if (nulllen > 0) { |  	if (nulllen > 0) { | ||||||
|  		strcpy(nullname, nullstring); |  		strcpy(nullname, nullstring); | ||||||
| @@ -260,6 +264,8 @@ static int parse_redboot_partitions(stru | @@ -265,6 +269,8 @@ static int parse_redboot_partitions(stru | ||||||
|  	} |  	} | ||||||
|  #endif |  #endif | ||||||
|  	for ( ; i<nrparts; i++) { |  	for ( ; i<nrparts; i++) { | ||||||
| @@ -44,7 +44,7 @@ | |||||||
|  		parts[i].size = fl->img->size; |  		parts[i].size = fl->img->size; | ||||||
|  		parts[i].offset = fl->img->flash_base; |  		parts[i].offset = fl->img->flash_base; | ||||||
|  		parts[i].name = names; |  		parts[i].name = names; | ||||||
| @@ -293,6 +299,13 @@ static int parse_redboot_partitions(stru | @@ -298,6 +304,13 @@ static int parse_redboot_partitions(stru | ||||||
|  		fl = fl->next; |  		fl = fl->next; | ||||||
|  		kfree(tmp_fl); |  		kfree(tmp_fl); | ||||||
|  	} |  	} | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -88,12 +88,18 @@ static int parse_redboot_partitions(stru | @@ -93,12 +93,18 @@ static int parse_redboot_partitions(stru | ||||||
|   |   | ||||||
|  	parse_redboot_of(master); |  	parse_redboot_of(master); | ||||||
|   |   | ||||||
| @@ -19,7 +19,7 @@ | |||||||
|  				return -EIO; |  				return -EIO; | ||||||
|  			} |  			} | ||||||
|  			offset -= master->erasesize; |  			offset -= master->erasesize; | ||||||
| @@ -106,10 +112,6 @@ static int parse_redboot_partitions(stru | @@ -111,10 +117,6 @@ static int parse_redboot_partitions(stru | ||||||
|  				goto nogood; |  				goto nogood; | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
| @@ -30,7 +30,7 @@ | |||||||
|   |   | ||||||
|  	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n", |  	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n", | ||||||
|  	       master->name, offset); |  	       master->name, offset); | ||||||
| @@ -182,6 +184,11 @@ static int parse_redboot_partitions(stru | @@ -187,6 +189,11 @@ static int parse_redboot_partitions(stru | ||||||
|  	} |  	} | ||||||
|  	if (i == numslots) { |  	if (i == numslots) { | ||||||
|  		/* Didn't find it */ |  		/* Didn't find it */ | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -65,6 +65,22 @@ static void parse_redboot_of(struct mtd_ | @@ -70,6 +70,22 @@ static void parse_redboot_of(struct mtd_ | ||||||
|  	directory = dirblock; |  	directory = dirblock; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -23,7 +23,7 @@ | |||||||
|  static int parse_redboot_partitions(struct mtd_info *master, |  static int parse_redboot_partitions(struct mtd_info *master, | ||||||
|  				    const struct mtd_partition **pparts, |  				    const struct mtd_partition **pparts, | ||||||
|  				    struct mtd_part_parser_data *data) |  				    struct mtd_part_parser_data *data) | ||||||
| @@ -81,6 +97,7 @@ static int parse_redboot_partitions(stru | @@ -86,6 +102,7 @@ static int parse_redboot_partitions(stru | ||||||
|  	int namelen = 0; |  	int namelen = 0; | ||||||
|  	int nulllen = 0; |  	int nulllen = 0; | ||||||
|  	int numslots; |  	int numslots; | ||||||
| @@ -31,7 +31,7 @@ | |||||||
|  	unsigned long offset; |  	unsigned long offset; | ||||||
|  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED |  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED | ||||||
|  	static char nullstring[] = "unallocated"; |  	static char nullstring[] = "unallocated"; | ||||||
| @@ -195,7 +212,10 @@ static int parse_redboot_partitions(stru | @@ -200,7 +217,10 @@ static int parse_redboot_partitions(stru | ||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -43,7 +43,7 @@ | |||||||
|  		struct fis_list *new_fl, **prev; |  		struct fis_list *new_fl, **prev; | ||||||
|   |   | ||||||
|  		if (buf[i].name[0] == 0xff) { |  		if (buf[i].name[0] == 0xff) { | ||||||
| @@ -271,12 +291,13 @@ static int parse_redboot_partitions(stru | @@ -276,12 +296,13 @@ static int parse_redboot_partitions(stru | ||||||
|  	} |  	} | ||||||
|  #endif |  #endif | ||||||
|  	for ( ; i<nrparts; i++) { |  	for ( ; i<nrparts; i++) { | ||||||
| @@ -59,7 +59,7 @@ | |||||||
|  		strcpy(names, fl->img->name); |  		strcpy(names, fl->img->name); | ||||||
|  #ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY |  #ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY | ||||||
|  		if (!memcmp(names, "RedBoot", 8) || |  		if (!memcmp(names, "RedBoot", 8) || | ||||||
| @@ -306,7 +327,9 @@ static int parse_redboot_partitions(stru | @@ -311,7 +332,9 @@ static int parse_redboot_partitions(stru | ||||||
|  		fl = fl->next; |  		fl = fl->next; | ||||||
|  		kfree(tmp_fl); |  		kfree(tmp_fl); | ||||||
|  	} |  	} | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ Signed-off-by: John Crispin <john@phrozen.org> | |||||||
|  |  | ||||||
| --- a/drivers/leds/Kconfig | --- a/drivers/leds/Kconfig | ||||||
| +++ b/drivers/leds/Kconfig | +++ b/drivers/leds/Kconfig | ||||||
| @@ -823,6 +823,17 @@ config LEDS_LM36274 | @@ -824,6 +824,17 @@ config LEDS_LM36274 | ||||||
|  	  Say Y to enable the LM36274 LED driver for TI LMU devices. |  	  Say Y to enable the LM36274 LED driver for TI LMU devices. | ||||||
|  	  This supports the LED device LM36274. |  	  This supports the LED device LM36274. | ||||||
|   |   | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -85,12 +85,18 @@ static int parse_redboot_partitions(stru | @@ -90,12 +90,18 @@ static int parse_redboot_partitions(stru | ||||||
|   |   | ||||||
|  	parse_redboot_of(master); |  	parse_redboot_of(master); | ||||||
|   |   | ||||||
| @@ -19,7 +19,7 @@ | |||||||
|  				return -EIO; |  				return -EIO; | ||||||
|  			} |  			} | ||||||
|  			offset -= master->erasesize; |  			offset -= master->erasesize; | ||||||
| @@ -103,10 +109,6 @@ static int parse_redboot_partitions(stru | @@ -108,10 +114,6 @@ static int parse_redboot_partitions(stru | ||||||
|  				goto nogood; |  				goto nogood; | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
| @@ -30,7 +30,7 @@ | |||||||
|   |   | ||||||
|  	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n", |  	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n", | ||||||
|  	       master->name, offset); |  	       master->name, offset); | ||||||
| @@ -179,6 +181,11 @@ static int parse_redboot_partitions(stru | @@ -184,6 +186,11 @@ static int parse_redboot_partitions(stru | ||||||
|  	} |  	} | ||||||
|  	if (i == numslots) { |  	if (i == numslots) { | ||||||
|  		/* Didn't find it */ |  		/* Didn't find it */ | ||||||
|   | |||||||
| @@ -267,7 +267,7 @@ | |||||||
|  		case IPV6_2292HOPOPTS: |  		case IPV6_2292HOPOPTS: | ||||||
| --- a/net/ipv6/exthdrs.c | --- a/net/ipv6/exthdrs.c | ||||||
| +++ b/net/ipv6/exthdrs.c | +++ b/net/ipv6/exthdrs.c | ||||||
| @@ -752,7 +752,7 @@ static bool ipv6_hop_jumbo(struct sk_buf | @@ -751,7 +751,7 @@ static bool ipv6_hop_jumbo(struct sk_buf | ||||||
|  		goto drop; |  		goto drop; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|   | |||||||
| @@ -222,7 +222,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com> | |||||||
|  static inline int mmc_blk_part_switch(struct mmc_card *card, |  static inline int mmc_blk_part_switch(struct mmc_card *card, | ||||||
|  				      unsigned int part_type); |  				      unsigned int part_type); | ||||||
|   |   | ||||||
| @@ -2884,6 +2891,7 @@ static int mmc_blk_probe(struct mmc_card | @@ -2892,6 +2899,7 @@ static int mmc_blk_probe(struct mmc_card | ||||||
|  { |  { | ||||||
|  	struct mmc_blk_data *md, *part_md; |  	struct mmc_blk_data *md, *part_md; | ||||||
|  	char cap_str[10]; |  	char cap_str[10]; | ||||||
| @@ -230,7 +230,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com> | |||||||
|   |   | ||||||
|  	/* |  	/* | ||||||
|  	 * Check that the card supports the command class(es) we need. |  	 * Check that the card supports the command class(es) we need. | ||||||
| @@ -2891,7 +2899,16 @@ static int mmc_blk_probe(struct mmc_card | @@ -2899,7 +2907,16 @@ static int mmc_blk_probe(struct mmc_card | ||||||
|  	if (!(card->csd.cmdclass & CCC_BLOCK_READ)) |  	if (!(card->csd.cmdclass & CCC_BLOCK_READ)) | ||||||
|  		return -ENODEV; |  		return -ENODEV; | ||||||
|   |   | ||||||
| @@ -248,7 +248,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com> | |||||||
|   |   | ||||||
|  	card->complete_wq = alloc_workqueue("mmc_complete", |  	card->complete_wq = alloc_workqueue("mmc_complete", | ||||||
|  					WQ_MEM_RECLAIM | WQ_HIGHPRI, 0); |  					WQ_MEM_RECLAIM | WQ_HIGHPRI, 0); | ||||||
| @@ -2906,9 +2923,14 @@ static int mmc_blk_probe(struct mmc_card | @@ -2914,9 +2931,14 @@ static int mmc_blk_probe(struct mmc_card | ||||||
|   |   | ||||||
|  	string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2, |  	string_get_size((u64)get_capacity(md->disk), 512, STRING_UNITS_2, | ||||||
|  			cap_str, sizeof(cap_str)); |  			cap_str, sizeof(cap_str)); | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> | |||||||
|   |   | ||||||
|  	switch (state->csi_lanes_in_use) { |  	switch (state->csi_lanes_in_use) { | ||||||
|  	case 1: |  	case 1: | ||||||
| @@ -2054,6 +2063,7 @@ static int tc358743_probe(struct i2c_cli | @@ -2055,6 +2064,7 @@ static int tc358743_probe(struct i2c_cli | ||||||
|  	if (pdata) { |  	if (pdata) { | ||||||
|  		state->pdata = *pdata; |  		state->pdata = *pdata; | ||||||
|  		state->bus.flags = V4L2_MBUS_CSI2_CONTINUOUS_CLOCK; |  		state->bus.flags = V4L2_MBUS_CSI2_CONTINUOUS_CLOCK; | ||||||
|   | |||||||
| @@ -21,7 +21,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> | |||||||
|  	 */ |  	 */ | ||||||
|  	bps_pr_lane = 2 * endpoint.link_frequencies[0]; |  	bps_pr_lane = 2 * endpoint.link_frequencies[0]; | ||||||
|  	if (bps_pr_lane < 62500000U || bps_pr_lane > 1000000000U) { |  	if (bps_pr_lane < 62500000U || bps_pr_lane > 1000000000U) { | ||||||
| @@ -1990,23 +1991,41 @@ static int tc358743_probe_of(struct tc35 | @@ -1991,23 +1992,41 @@ static int tc358743_probe_of(struct tc35 | ||||||
|  			       state->pdata.refclk_hz * state->pdata.pll_prd; |  			       state->pdata.refclk_hz * state->pdata.pll_prd; | ||||||
|   |   | ||||||
|  	/* |  	/* | ||||||
|   | |||||||
| @@ -78,7 +78,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> | |||||||
|  static void i2c_wr16(struct v4l2_subdev *sd, u16 reg, u16 val) |  static void i2c_wr16(struct v4l2_subdev *sd, u16 reg, u16 val) | ||||||
|  { |  { | ||||||
|  	i2c_wrreg(sd, reg, val, 2); |  	i2c_wrreg(sd, reg, val, 2); | ||||||
| @@ -2064,6 +2081,7 @@ static int tc358743_probe(struct i2c_cli | @@ -2065,6 +2082,7 @@ static int tc358743_probe(struct i2c_cli | ||||||
|  	struct tc358743_platform_data *pdata = client->dev.platform_data; |  	struct tc358743_platform_data *pdata = client->dev.platform_data; | ||||||
|  	struct v4l2_subdev *sd; |  	struct v4l2_subdev *sd; | ||||||
|  	u16 irq_mask = MASK_HDMI_MSK | MASK_CSI_MSK; |  	u16 irq_mask = MASK_HDMI_MSK | MASK_CSI_MSK; | ||||||
| @@ -86,7 +86,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> | |||||||
|  	int err; |  	int err; | ||||||
|   |   | ||||||
|  	if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA)) |  	if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA)) | ||||||
| @@ -2096,7 +2114,8 @@ static int tc358743_probe(struct i2c_cli | @@ -2097,7 +2115,8 @@ static int tc358743_probe(struct i2c_cli | ||||||
|  	sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS; |  	sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS; | ||||||
|   |   | ||||||
|  	/* i2c access */ |  	/* i2c access */ | ||||||
|   | |||||||
| @@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | |||||||
|  |  | ||||||
| --- a/drivers/usb/host/xhci-mem.c | --- a/drivers/usb/host/xhci-mem.c | ||||||
| +++ b/drivers/usb/host/xhci-mem.c | +++ b/drivers/usb/host/xhci-mem.c | ||||||
| @@ -2512,9 +2512,11 @@ int xhci_mem_init(struct xhci_hcd *xhci, | @@ -2513,9 +2513,11 @@ int xhci_mem_init(struct xhci_hcd *xhci, | ||||||
|  	 * Event ring setup: Allocate a normal ring, but also setup |  	 * Event ring setup: Allocate a normal ring, but also setup | ||||||
|  	 * the event ring segment table (ERST).  Section 4.9.3. |  	 * the event ring segment table (ERST).  Section 4.9.3. | ||||||
|  	 */ |  	 */ | ||||||
| @@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | |||||||
|  	if (!xhci->event_ring) |  	if (!xhci->event_ring) | ||||||
|  		goto fail; |  		goto fail; | ||||||
|  	if (xhci_check_trb_in_td_math(xhci) < 0) |  	if (xhci_check_trb_in_td_math(xhci) < 0) | ||||||
| @@ -2527,7 +2529,7 @@ int xhci_mem_init(struct xhci_hcd *xhci, | @@ -2528,7 +2530,7 @@ int xhci_mem_init(struct xhci_hcd *xhci, | ||||||
|  	/* set ERST count with the number of entries in the segment table */ |  	/* set ERST count with the number of entries in the segment table */ | ||||||
|  	val = readl(&xhci->ir_set->erst_size); |  	val = readl(&xhci->ir_set->erst_size); | ||||||
|  	val &= ERST_SIZE_MASK; |  	val &= ERST_SIZE_MASK; | ||||||
|   | |||||||
| @@ -198,7 +198,7 @@ Signed-off-by: Christoph Hellwig <hch@lst.de> | |||||||
|  		return 0; |  		return 0; | ||||||
| --- a/drivers/iommu/dma-iommu.c | --- a/drivers/iommu/dma-iommu.c | ||||||
| +++ b/drivers/iommu/dma-iommu.c | +++ b/drivers/iommu/dma-iommu.c | ||||||
| @@ -404,8 +404,7 @@ static dma_addr_t iommu_dma_alloc_iova(s | @@ -406,8 +406,7 @@ static dma_addr_t iommu_dma_alloc_iova(s | ||||||
|  	if (iova_len < (1 << (IOVA_RANGE_CACHE_MAX_SIZE - 1))) |  	if (iova_len < (1 << (IOVA_RANGE_CACHE_MAX_SIZE - 1))) | ||||||
|  		iova_len = roundup_pow_of_two(iova_len); |  		iova_len = roundup_pow_of_two(iova_len); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|  |  | ||||||
| --- a/drivers/spi/spi.c | --- a/drivers/spi/spi.c | ||||||
| +++ b/drivers/spi/spi.c | +++ b/drivers/spi/spi.c | ||||||
| @@ -3116,6 +3116,7 @@ static int __spi_validate_bits_per_word( | @@ -3117,6 +3117,7 @@ static int __spi_validate_bits_per_word( | ||||||
|   */ |   */ | ||||||
|  int spi_setup(struct spi_device *spi) |  int spi_setup(struct spi_device *spi) | ||||||
|  { |  { | ||||||
| @@ -31,7 +31,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|  	unsigned	bad_bits, ugly_bits; |  	unsigned	bad_bits, ugly_bits; | ||||||
|  	int		status; |  	int		status; | ||||||
|   |   | ||||||
| @@ -3133,6 +3134,14 @@ int spi_setup(struct spi_device *spi) | @@ -3134,6 +3135,14 @@ int spi_setup(struct spi_device *spi) | ||||||
|  		(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL | |  		(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL | | ||||||
|  		 SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL))) |  		 SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL))) | ||||||
|  		return -EINVAL; |  		return -EINVAL; | ||||||
|   | |||||||
| @@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|  |  | ||||||
| --- a/drivers/spi/spi.c | --- a/drivers/spi/spi.c | ||||||
| +++ b/drivers/spi/spi.c | +++ b/drivers/spi/spi.c | ||||||
| @@ -3128,8 +3128,8 @@ int spi_setup(struct spi_device *spi) | @@ -3129,8 +3129,8 @@ int spi_setup(struct spi_device *spi) | ||||||
|   |   | ||||||
|  	if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods && |  	if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods && | ||||||
|  	    ctlr->cs_gpiods[spi->chip_select] && !(spi->mode & SPI_CS_HIGH)) { |  	    ctlr->cs_gpiods[spi->chip_select] && !(spi->mode & SPI_CS_HIGH)) { | ||||||
|   | |||||||
| @@ -10,7 +10,7 @@ Signed-off-by: Jacko Dirks <jdirks.linuxdev@gmail.com> | |||||||
|  |  | ||||||
| --- a/drivers/media/i2c/tc358743.c | --- a/drivers/media/i2c/tc358743.c | ||||||
| +++ b/drivers/media/i2c/tc358743.c | +++ b/drivers/media/i2c/tc358743.c | ||||||
| @@ -2004,6 +2004,7 @@ static int tc358743_probe_of(struct tc35 | @@ -2005,6 +2005,7 @@ static int tc358743_probe_of(struct tc35 | ||||||
|  	switch (bps_pr_lane) { |  	switch (bps_pr_lane) { | ||||||
|  	default: |  	default: | ||||||
|  		dev_warn(dev, "untested bps per lane: %u bps\n", bps_pr_lane); |  		dev_warn(dev, "untested bps per lane: %u bps\n", bps_pr_lane); | ||||||
|   | |||||||
| @@ -94,7 +94,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|  #include <video/mipi_display.h> |  #include <video/mipi_display.h> | ||||||
|   |   | ||||||
|  #include "fbtft.h" |  #include "fbtft.h" | ||||||
| @@ -1200,6 +1201,7 @@ static struct fbtft_platform_data *fbtft | @@ -1199,6 +1200,7 @@ static struct fbtft_platform_data *fbtft | ||||||
|   * @display: Display properties |   * @display: Display properties | ||||||
|   * @sdev: SPI device |   * @sdev: SPI device | ||||||
|   * @pdev: Platform device |   * @pdev: Platform device | ||||||
| @@ -102,7 +102,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|   * |   * | ||||||
|   * Allocates, initializes and registers a framebuffer |   * Allocates, initializes and registers a framebuffer | ||||||
|   * |   * | ||||||
| @@ -1209,12 +1211,15 @@ static struct fbtft_platform_data *fbtft | @@ -1208,12 +1210,15 @@ static struct fbtft_platform_data *fbtft | ||||||
|   */ |   */ | ||||||
|  int fbtft_probe_common(struct fbtft_display *display, |  int fbtft_probe_common(struct fbtft_display *display, | ||||||
|  		       struct spi_device *sdev, |  		       struct spi_device *sdev, | ||||||
| @@ -119,7 +119,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|  	int ret; |  	int ret; | ||||||
|   |   | ||||||
|  	if (sdev) |  	if (sdev) | ||||||
| @@ -1230,6 +1235,14 @@ int fbtft_probe_common(struct fbtft_disp | @@ -1229,6 +1234,14 @@ int fbtft_probe_common(struct fbtft_disp | ||||||
|  		pdata = fbtft_probe_dt(dev); |  		pdata = fbtft_probe_dt(dev); | ||||||
|  		if (IS_ERR(pdata)) |  		if (IS_ERR(pdata)) | ||||||
|  			return PTR_ERR(pdata); |  			return PTR_ERR(pdata); | ||||||
|   | |||||||
| @@ -23,7 +23,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org> | |||||||
|  	.width			= 2, |  	.width			= 2, | ||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -79,6 +79,7 @@ static int parse_redboot_partitions(stru | @@ -84,6 +84,7 @@ static int parse_redboot_partitions(stru | ||||||
|  	int nulllen = 0; |  	int nulllen = 0; | ||||||
|  	int numslots; |  	int numslots; | ||||||
|  	unsigned long offset; |  	unsigned long offset; | ||||||
| @@ -31,7 +31,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org> | |||||||
|  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED |  #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED | ||||||
|  	static char nullstring[] = "unallocated"; |  	static char nullstring[] = "unallocated"; | ||||||
|  #endif |  #endif | ||||||
| @@ -185,6 +186,16 @@ static int parse_redboot_partitions(stru | @@ -190,6 +191,16 @@ static int parse_redboot_partitions(stru | ||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -48,7 +48,7 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org> | |||||||
|  	for (i = 0; i < numslots; i++) { |  	for (i = 0; i < numslots; i++) { | ||||||
|  		struct fis_list *new_fl, **prev; |  		struct fis_list *new_fl, **prev; | ||||||
|   |   | ||||||
| @@ -205,10 +216,10 @@ static int parse_redboot_partitions(stru | @@ -210,10 +221,10 @@ static int parse_redboot_partitions(stru | ||||||
|  			goto out; |  			goto out; | ||||||
|  		} |  		} | ||||||
|  		new_fl->img = &buf[i]; |  		new_fl->img = &buf[i]; | ||||||
|   | |||||||
| @@ -98,7 +98,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
| --- a/scripts/Makefile.build | --- a/scripts/Makefile.build | ||||||
| +++ b/scripts/Makefile.build | +++ b/scripts/Makefile.build | ||||||
| @@ -349,7 +349,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $( | @@ -350,7 +350,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $( | ||||||
|  # Linker scripts preprocessor (.lds.S -> .lds) |  # Linker scripts preprocessor (.lds.S -> .lds) | ||||||
|  # --------------------------------------------------------------------------- |  # --------------------------------------------------------------------------- | ||||||
|  quiet_cmd_cpp_lds_S = LDS     $@ |  quiet_cmd_cpp_lds_S = LDS     $@ | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  |  | ||||||
| --- a/include/net/sch_generic.h | --- a/include/net/sch_generic.h | ||||||
| +++ b/include/net/sch_generic.h | +++ b/include/net/sch_generic.h | ||||||
| @@ -603,12 +603,13 @@ extern struct Qdisc_ops noop_qdisc_ops; | @@ -615,12 +615,13 @@ extern struct Qdisc_ops noop_qdisc_ops; | ||||||
|  extern struct Qdisc_ops pfifo_fast_ops; |  extern struct Qdisc_ops pfifo_fast_ops; | ||||||
|  extern struct Qdisc_ops mq_qdisc_ops; |  extern struct Qdisc_ops mq_qdisc_ops; | ||||||
|  extern struct Qdisc_ops noqueue_qdisc_ops; |  extern struct Qdisc_ops noqueue_qdisc_ops; | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  |  | ||||||
| --- a/lib/vsprintf.c | --- a/lib/vsprintf.c | ||||||
| +++ b/lib/vsprintf.c | +++ b/lib/vsprintf.c | ||||||
| @@ -914,8 +914,10 @@ char *symbol_string(char *buf, char *end | @@ -940,8 +940,10 @@ char *symbol_string(char *buf, char *end | ||||||
|  		    struct printf_spec spec, const char *fmt) |  		    struct printf_spec spec, const char *fmt) | ||||||
|  { |  { | ||||||
|  	unsigned long value; |  	unsigned long value; | ||||||
| @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  #endif |  #endif | ||||||
|   |   | ||||||
|  	if (fmt[1] == 'R') |  	if (fmt[1] == 'R') | ||||||
| @@ -932,8 +934,14 @@ char *symbol_string(char *buf, char *end | @@ -958,8 +960,14 @@ char *symbol_string(char *buf, char *end | ||||||
|   |   | ||||||
|  	return string_nocheck(buf, end, sym, spec); |  	return string_nocheck(buf, end, sym, spec); | ||||||
|  #else |  #else | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl> | |||||||
|  |  | ||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -300,6 +300,7 @@ static int parse_redboot_partitions(stru | @@ -305,6 +305,7 @@ static int parse_redboot_partitions(stru | ||||||
|   |   | ||||||
|  static const struct of_device_id mtd_parser_redboot_of_match_table[] = { |  static const struct of_device_id mtd_parser_redboot_of_match_table[] = { | ||||||
|  	{ .compatible = "redboot-fis" }, |  	{ .compatible = "redboot-fis" }, | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  |  | ||||||
| --- a/drivers/mtd/parsers/redboot.c | --- a/drivers/mtd/parsers/redboot.c | ||||||
| +++ b/drivers/mtd/parsers/redboot.c | +++ b/drivers/mtd/parsers/redboot.c | ||||||
| @@ -274,14 +274,21 @@ static int parse_redboot_partitions(stru | @@ -279,14 +279,21 @@ static int parse_redboot_partitions(stru | ||||||
|  #endif |  #endif | ||||||
|  		names += strlen(names)+1; |  		names += strlen(names)+1; | ||||||
|   |   | ||||||
|   | |||||||
| @@ -70,7 +70,7 @@ Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com> | |||||||
| +			ret = early_init_dt_alloc_reserved_memory_arch(node, | +			ret = early_init_dt_alloc_reserved_memory_arch(node, | ||||||
| +					size, align, start, end, nomap, &base); | +					size, align, start, end, nomap, &base); | ||||||
|  			if (ret == 0) { |  			if (ret == 0) { | ||||||
|  				pr_debug("allocated memory for '%s' node: base %pa, size %ld MiB\n", |  				pr_debug("allocated memory for '%s' node: base %pa, size %lu MiB\n", | ||||||
|  					uname, &base, |  					uname, &base, | ||||||
| @@ -143,8 +162,8 @@ static int __init __reserved_mem_alloc_s | @@ -143,8 +162,8 @@ static int __init __reserved_mem_alloc_s | ||||||
|  		} |  		} | ||||||
| @@ -81,5 +81,5 @@ Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com> | |||||||
| +		ret = early_init_dt_alloc_reserved_memory_arch(node, | +		ret = early_init_dt_alloc_reserved_memory_arch(node, | ||||||
| +					size, align, 0, 0, nomap, &base); | +					size, align, 0, 0, nomap, &base); | ||||||
|  		if (ret == 0) |  		if (ret == 0) | ||||||
|  			pr_debug("allocated memory for '%s' node: base %pa, size %ld MiB\n", |  			pr_debug("allocated memory for '%s' node: base %pa, size %lu MiB\n", | ||||||
|  				uname, &base, (unsigned long)size / SZ_1M); |  				uname, &base, (unsigned long)(size / SZ_1M)); | ||||||
|   | |||||||
| @@ -56,10 +56,10 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (ret) { |  	if (ret) { | ||||||
| -		DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret); | -		DRM_DEV_ERROR(dp->dev, "Could not write to GRF: %d\n", ret); | ||||||
| +		DRM_DEV_ERROR(dev, "Could not write to GRF: %d\n", ret); | +		DRM_DEV_ERROR(dev, "Could not write to GRF: %d\n", ret); | ||||||
|  |  		clk_disable_unprepare(dp->grf_clk); | ||||||
|  		return ret; |  		return ret; | ||||||
|  	} |  	} | ||||||
|   | @@ -83,24 +83,25 @@ static int cdn_dp_grf_write(struct cdn_d | ||||||
| @@ -82,24 +82,25 @@ static int cdn_dp_grf_write(struct cdn_d |  | ||||||
|   |   | ||||||
|  static int cdn_dp_clk_enable(struct cdn_dp_device *dp) |  static int cdn_dp_clk_enable(struct cdn_dp_device *dp) | ||||||
|  { |  { | ||||||
| @@ -89,7 +89,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		goto err_pm_runtime_get; |  		goto err_pm_runtime_get; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -112,18 +113,18 @@ static int cdn_dp_clk_enable(struct cdn_ | @@ -113,18 +114,18 @@ static int cdn_dp_clk_enable(struct cdn_ | ||||||
|   |   | ||||||
|  	rate = clk_get_rate(dp->core_clk); |  	rate = clk_get_rate(dp->core_clk); | ||||||
|  	if (!rate) { |  	if (!rate) { | ||||||
| @@ -112,7 +112,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  err_pm_runtime_get: |  err_pm_runtime_get: | ||||||
|  	clk_disable_unprepare(dp->core_clk); |  	clk_disable_unprepare(dp->core_clk); | ||||||
|  err_core_clk: |  err_core_clk: | ||||||
| @@ -134,7 +135,7 @@ err_pclk: | @@ -135,7 +136,7 @@ err_pclk: | ||||||
|   |   | ||||||
|  static void cdn_dp_clk_disable(struct cdn_dp_device *dp) |  static void cdn_dp_clk_disable(struct cdn_dp_device *dp) | ||||||
|  { |  { | ||||||
| @@ -121,7 +121,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	clk_disable_unprepare(dp->pclk); |  	clk_disable_unprepare(dp->pclk); | ||||||
|  	clk_disable_unprepare(dp->core_clk); |  	clk_disable_unprepare(dp->core_clk); | ||||||
|  } |  } | ||||||
| @@ -167,7 +168,7 @@ static int cdn_dp_get_sink_count(struct | @@ -168,7 +169,7 @@ static int cdn_dp_get_sink_count(struct | ||||||
|  	u8 value; |  	u8 value; | ||||||
|   |   | ||||||
|  	*sink_count = 0; |  	*sink_count = 0; | ||||||
| @@ -130,7 +130,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (ret) |  	if (ret) | ||||||
|  		return ret; |  		return ret; | ||||||
|   |   | ||||||
| @@ -191,12 +192,13 @@ static struct cdn_dp_port *cdn_dp_connec | @@ -192,12 +193,13 @@ static struct cdn_dp_port *cdn_dp_connec | ||||||
|   |   | ||||||
|  static bool cdn_dp_check_sink_connection(struct cdn_dp_device *dp) |  static bool cdn_dp_check_sink_connection(struct cdn_dp_device *dp) | ||||||
|  { |  { | ||||||
| @@ -145,7 +145,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		return false; |  		return false; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -218,7 +220,7 @@ static bool cdn_dp_check_sink_connection | @@ -219,7 +221,7 @@ static bool cdn_dp_check_sink_connection | ||||||
|  		usleep_range(5000, 10000); |  		usleep_range(5000, 10000); | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -154,7 +154,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	return false; |  	return false; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -260,7 +262,8 @@ static int cdn_dp_connector_get_modes(st | @@ -261,7 +263,8 @@ static int cdn_dp_connector_get_modes(st | ||||||
|  	mutex_lock(&dp->lock); |  	mutex_lock(&dp->lock); | ||||||
|  	edid = dp->edid; |  	edid = dp->edid; | ||||||
|  	if (edid) { |  	if (edid) { | ||||||
| @@ -164,7 +164,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				  edid->width_cm, edid->height_cm); |  				  edid->width_cm, edid->height_cm); | ||||||
|   |   | ||||||
|  		dp->sink_has_audio = drm_detect_monitor_audio(edid); |  		dp->sink_has_audio = drm_detect_monitor_audio(edid); | ||||||
| @@ -278,7 +281,8 @@ static int cdn_dp_connector_mode_valid(s | @@ -279,7 +282,8 @@ static int cdn_dp_connector_mode_valid(s | ||||||
|  				       struct drm_display_mode *mode) |  				       struct drm_display_mode *mode) | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = connector_to_dp(connector); |  	struct cdn_dp_device *dp = connector_to_dp(connector); | ||||||
| @@ -174,7 +174,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	u32 requested, actual, rate, sink_max, source_max = 0; |  	u32 requested, actual, rate, sink_max, source_max = 0; | ||||||
|  	u8 lanes, bpc; |  	u8 lanes, bpc; | ||||||
|   |   | ||||||
| @@ -304,7 +308,7 @@ static int cdn_dp_connector_mode_valid(s | @@ -305,7 +309,7 @@ static int cdn_dp_connector_mode_valid(s | ||||||
|  	sink_max = drm_dp_max_lane_count(dp->dpcd); |  	sink_max = drm_dp_max_lane_count(dp->dpcd); | ||||||
|  	lanes = min(source_max, sink_max); |  	lanes = min(source_max, sink_max); | ||||||
|   |   | ||||||
| @@ -183,7 +183,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	sink_max = drm_dp_max_link_rate(dp->dpcd); |  	sink_max = drm_dp_max_link_rate(dp->dpcd); | ||||||
|  	rate = min(source_max, sink_max); |  	rate = min(source_max, sink_max); | ||||||
|   |   | ||||||
| @@ -314,7 +318,7 @@ static int cdn_dp_connector_mode_valid(s | @@ -315,7 +319,7 @@ static int cdn_dp_connector_mode_valid(s | ||||||
|  	actual = actual * 8 / 10; |  	actual = actual * 8 / 10; | ||||||
|   |   | ||||||
|  	if (requested > actual) { |  	if (requested > actual) { | ||||||
| @@ -192,7 +192,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				  "requested=%d, actual=%d, clock=%d\n", |  				  "requested=%d, actual=%d, clock=%d\n", | ||||||
|  				  requested, actual, mode->clock); |  				  requested, actual, mode->clock); | ||||||
|  		return MODE_CLOCK_HIGH; |  		return MODE_CLOCK_HIGH; | ||||||
| @@ -334,28 +338,29 @@ static int cdn_dp_firmware_init(struct c | @@ -335,28 +339,29 @@ static int cdn_dp_firmware_init(struct c | ||||||
|  	const u32 *iram_data, *dram_data; |  	const u32 *iram_data, *dram_data; | ||||||
|  	const struct firmware *fw = dp->fw; |  	const struct firmware *fw = dp->fw; | ||||||
|  	const struct cdn_firmware_header *hdr; |  	const struct cdn_firmware_header *hdr; | ||||||
| @@ -228,7 +228,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static int cdn_dp_get_sink_capability(struct cdn_dp_device *dp) |  static int cdn_dp_get_sink_capability(struct cdn_dp_device *dp) | ||||||
| @@ -365,28 +370,29 @@ static int cdn_dp_get_sink_capability(st | @@ -366,28 +371,29 @@ static int cdn_dp_get_sink_capability(st | ||||||
|  	if (!cdn_dp_check_sink_connection(dp)) |  	if (!cdn_dp_check_sink_connection(dp)) | ||||||
|  		return -ENODEV; |  		return -ENODEV; | ||||||
|   |   | ||||||
| @@ -264,7 +264,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				      ret); |  				      ret); | ||||||
|  			goto err_phy; |  			goto err_phy; | ||||||
|  		} |  		} | ||||||
| @@ -396,28 +402,28 @@ static int cdn_dp_enable_phy(struct cdn_ | @@ -397,28 +403,28 @@ static int cdn_dp_enable_phy(struct cdn_ | ||||||
|  	ret = cdn_dp_grf_write(dp, GRF_SOC_CON26, |  	ret = cdn_dp_grf_write(dp, GRF_SOC_CON26, | ||||||
|  			       DPTX_HPD_SEL_MASK | DPTX_HPD_SEL); |  			       DPTX_HPD_SEL_MASK | DPTX_HPD_SEL); | ||||||
|  	if (ret) { |  	if (ret) { | ||||||
| @@ -299,7 +299,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  			      ret); |  			      ret); | ||||||
|  		goto err_power_on; |  		goto err_power_on; | ||||||
|  	} |  	} | ||||||
| @@ -427,7 +433,7 @@ static int cdn_dp_enable_phy(struct cdn_ | @@ -428,7 +434,7 @@ static int cdn_dp_enable_phy(struct cdn_ | ||||||
|   |   | ||||||
|  err_power_on: |  err_power_on: | ||||||
|  	if (phy_power_off(port->phy)) |  	if (phy_power_off(port->phy)) | ||||||
| @@ -308,7 +308,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	else |  	else | ||||||
|  		port->phy_enabled = false; |  		port->phy_enabled = false; | ||||||
|   |   | ||||||
| @@ -445,7 +451,8 @@ static int cdn_dp_disable_phy(struct cdn | @@ -446,7 +452,8 @@ static int cdn_dp_disable_phy(struct cdn | ||||||
|  	if (port->phy_enabled) { |  	if (port->phy_enabled) { | ||||||
|  		ret = phy_power_off(port->phy); |  		ret = phy_power_off(port->phy); | ||||||
|  		if (ret) { |  		if (ret) { | ||||||
| @@ -318,7 +318,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  			return ret; |  			return ret; | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
| @@ -469,16 +476,16 @@ static int cdn_dp_disable(struct cdn_dp_ | @@ -470,16 +477,16 @@ static int cdn_dp_disable(struct cdn_dp_ | ||||||
|  	ret = cdn_dp_grf_write(dp, GRF_SOC_CON26, |  	ret = cdn_dp_grf_write(dp, GRF_SOC_CON26, | ||||||
|  			       DPTX_HPD_SEL_MASK | DPTX_HPD_DEL); |  			       DPTX_HPD_SEL_MASK | DPTX_HPD_DEL); | ||||||
|  	if (ret) { |  	if (ret) { | ||||||
| @@ -339,7 +339,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (!dp->connected) { |  	if (!dp->connected) { | ||||||
|  		kfree(dp->edid); |  		kfree(dp->edid); | ||||||
|  		dp->edid = NULL; |  		dp->edid = NULL; | ||||||
| @@ -491,11 +498,11 @@ static int cdn_dp_enable(struct cdn_dp_d | @@ -492,11 +499,11 @@ static int cdn_dp_enable(struct cdn_dp_d | ||||||
|  { |  { | ||||||
|  	int ret, i, lanes; |  	int ret, i, lanes; | ||||||
|  	struct cdn_dp_port *port; |  	struct cdn_dp_port *port; | ||||||
| @@ -353,7 +353,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		return -ENODEV; |  		return -ENODEV; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -508,7 +515,7 @@ static int cdn_dp_enable(struct cdn_dp_d | @@ -509,7 +516,7 @@ static int cdn_dp_enable(struct cdn_dp_d | ||||||
|   |   | ||||||
|  	ret = cdn_dp_firmware_init(dp); |  	ret = cdn_dp_firmware_init(dp); | ||||||
|  	if (ret) { |  	if (ret) { | ||||||
| @@ -362,7 +362,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		goto err_clk_disable; |  		goto err_clk_disable; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -542,8 +549,9 @@ static void cdn_dp_encoder_mode_set(stru | @@ -543,8 +550,9 @@ static void cdn_dp_encoder_mode_set(stru | ||||||
|  				    struct drm_display_mode *adjusted) |  				    struct drm_display_mode *adjusted) | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = encoder_to_dp(encoder); |  	struct cdn_dp_device *dp = encoder_to_dp(encoder); | ||||||
| @@ -374,7 +374,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	switch (display_info->bpc) { |  	switch (display_info->bpc) { | ||||||
|  	case 10: |  	case 10: | ||||||
| @@ -561,7 +569,7 @@ static void cdn_dp_encoder_mode_set(stru | @@ -562,7 +570,7 @@ static void cdn_dp_encoder_mode_set(stru | ||||||
|  	video->v_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NVSYNC); |  	video->v_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NVSYNC); | ||||||
|  	video->h_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NHSYNC); |  	video->h_sync_polarity = !!(mode->flags & DRM_MODE_FLAG_NHSYNC); | ||||||
|   |   | ||||||
| @@ -383,7 +383,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static bool cdn_dp_check_link_status(struct cdn_dp_device *dp) |  static bool cdn_dp_check_link_status(struct cdn_dp_device *dp) | ||||||
| @@ -570,11 +578,11 @@ static bool cdn_dp_check_link_status(str | @@ -571,11 +579,11 @@ static bool cdn_dp_check_link_status(str | ||||||
|  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); |  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); | ||||||
|  	u8 sink_lanes = drm_dp_max_lane_count(dp->dpcd); |  	u8 sink_lanes = drm_dp_max_lane_count(dp->dpcd); | ||||||
|   |   | ||||||
| @@ -398,7 +398,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		DRM_ERROR("Failed to get link status\n"); |  		DRM_ERROR("Failed to get link status\n"); | ||||||
|  		return false; |  		return false; | ||||||
|  	} |  	} | ||||||
| @@ -586,15 +594,16 @@ static bool cdn_dp_check_link_status(str | @@ -587,15 +595,16 @@ static bool cdn_dp_check_link_status(str | ||||||
|  static void cdn_dp_encoder_enable(struct drm_encoder *encoder) |  static void cdn_dp_encoder_enable(struct drm_encoder *encoder) | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = encoder_to_dp(encoder); |  	struct cdn_dp_device *dp = encoder_to_dp(encoder); | ||||||
| @@ -418,7 +418,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  			  (ret) ? "LIT" : "BIG"); |  			  (ret) ? "LIT" : "BIG"); | ||||||
|  	if (ret) |  	if (ret) | ||||||
|  		val = DP_SEL_VOP_LIT | (DP_SEL_VOP_LIT << 16); |  		val = DP_SEL_VOP_LIT | (DP_SEL_VOP_LIT << 16); | ||||||
| @@ -609,33 +618,33 @@ static void cdn_dp_encoder_enable(struct | @@ -610,33 +619,33 @@ static void cdn_dp_encoder_enable(struct | ||||||
|   |   | ||||||
|  	ret = cdn_dp_enable(dp); |  	ret = cdn_dp_enable(dp); | ||||||
|  	if (ret) { |  	if (ret) { | ||||||
| @@ -461,7 +461,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|  out: |  out: | ||||||
| @@ -651,7 +660,8 @@ static void cdn_dp_encoder_disable(struc | @@ -652,7 +661,8 @@ static void cdn_dp_encoder_disable(struc | ||||||
|  	if (dp->active) { |  	if (dp->active) { | ||||||
|  		ret = cdn_dp_disable(dp); |  		ret = cdn_dp_disable(dp); | ||||||
|  		if (ret) { |  		if (ret) { | ||||||
| @@ -471,7 +471,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				      ret); |  				      ret); | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
| @@ -695,7 +705,7 @@ static const struct drm_encoder_funcs cd | @@ -696,7 +706,7 @@ static const struct drm_encoder_funcs cd | ||||||
|   |   | ||||||
|  static int cdn_dp_parse_dt(struct cdn_dp_device *dp) |  static int cdn_dp_parse_dt(struct cdn_dp_device *dp) | ||||||
|  { |  { | ||||||
| @@ -480,7 +480,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	struct device_node *np = dev->of_node; |  	struct device_node *np = dev->of_node; | ||||||
|  	struct platform_device *pdev = to_platform_device(dev); |  	struct platform_device *pdev = to_platform_device(dev); | ||||||
|  	struct resource *res; |  	struct resource *res; | ||||||
| @@ -707,10 +717,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | @@ -708,10 +718,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||||||
| @@ -494,7 +494,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	dp->core_clk = devm_clk_get(dev, "core-clk"); |  	dp->core_clk = devm_clk_get(dev, "core-clk"); | ||||||
| @@ -725,10 +735,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | @@ -726,10 +736,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | ||||||
|  		return PTR_ERR(dp->pclk); |  		return PTR_ERR(dp->pclk); | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -508,7 +508,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	dp->grf_clk = devm_clk_get(dev, "grf"); |  	dp->grf_clk = devm_clk_get(dev, "grf"); | ||||||
| @@ -737,10 +747,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | @@ -738,10 +748,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | ||||||
|  		return PTR_ERR(dp->grf_clk); |  		return PTR_ERR(dp->grf_clk); | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -522,7 +522,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	dp->dptx_rst = devm_reset_control_get(dev, "dptx"); |  	dp->dptx_rst = devm_reset_control_get(dev, "dptx"); | ||||||
| @@ -795,7 +805,7 @@ static int cdn_dp_audio_hw_params(struct | @@ -796,7 +806,7 @@ static int cdn_dp_audio_hw_params(struct | ||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -531,7 +531,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (!ret) |  	if (!ret) | ||||||
|  		dp->audio_info = audio; |  		dp->audio_info = audio; | ||||||
|   |   | ||||||
| @@ -813,7 +823,7 @@ static void cdn_dp_audio_shutdown(struct | @@ -814,7 +824,7 @@ static void cdn_dp_audio_shutdown(struct | ||||||
|  	if (!dp->active) |  	if (!dp->active) | ||||||
|  		goto out; |  		goto out; | ||||||
|   |   | ||||||
| @@ -540,7 +540,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (!ret) |  	if (!ret) | ||||||
|  		dp->audio_info.format = AFMT_UNUSED; |  		dp->audio_info.format = AFMT_UNUSED; | ||||||
|  out: |  out: | ||||||
| @@ -832,7 +842,7 @@ static int cdn_dp_audio_digital_mute(str | @@ -833,7 +843,7 @@ static int cdn_dp_audio_digital_mute(str | ||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -549,7 +549,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  out: |  out: | ||||||
|  	mutex_unlock(&dp->lock); |  	mutex_unlock(&dp->lock); | ||||||
| @@ -844,7 +854,8 @@ static int cdn_dp_audio_get_eld(struct d | @@ -845,7 +855,8 @@ static int cdn_dp_audio_get_eld(struct d | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = dev_get_drvdata(dev); |  	struct cdn_dp_device *dp = dev_get_drvdata(dev); | ||||||
|   |   | ||||||
| @@ -559,7 +559,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
| @@ -878,6 +889,7 @@ static int cdn_dp_request_firmware(struc | @@ -879,6 +890,7 @@ static int cdn_dp_request_firmware(struc | ||||||
|  	int ret; |  	int ret; | ||||||
|  	unsigned long timeout = jiffies + msecs_to_jiffies(CDN_FW_TIMEOUT_MS); |  	unsigned long timeout = jiffies + msecs_to_jiffies(CDN_FW_TIMEOUT_MS); | ||||||
|  	unsigned long sleep = 1000; |  	unsigned long sleep = 1000; | ||||||
| @@ -567,7 +567,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	WARN_ON(!mutex_is_locked(&dp->lock)); |  	WARN_ON(!mutex_is_locked(&dp->lock)); | ||||||
|   |   | ||||||
| @@ -888,13 +900,13 @@ static int cdn_dp_request_firmware(struc | @@ -889,13 +901,13 @@ static int cdn_dp_request_firmware(struc | ||||||
|  	mutex_unlock(&dp->lock); |  	mutex_unlock(&dp->lock); | ||||||
|   |   | ||||||
|  	while (time_before(jiffies, timeout)) { |  	while (time_before(jiffies, timeout)) { | ||||||
| @@ -583,7 +583,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				      "failed to request firmware: %d\n", ret); |  				      "failed to request firmware: %d\n", ret); | ||||||
|  			goto out; |  			goto out; | ||||||
|  		} |  		} | ||||||
| @@ -904,7 +916,7 @@ static int cdn_dp_request_firmware(struc | @@ -905,7 +917,7 @@ static int cdn_dp_request_firmware(struc | ||||||
|  		goto out; |  		goto out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -592,7 +592,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	ret = -ETIMEDOUT; |  	ret = -ETIMEDOUT; | ||||||
|  out: |  out: | ||||||
|  	mutex_lock(&dp->lock); |  	mutex_lock(&dp->lock); | ||||||
| @@ -915,8 +927,9 @@ static void cdn_dp_pd_event_work(struct | @@ -916,8 +928,9 @@ static void cdn_dp_pd_event_work(struct | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = container_of(work, struct cdn_dp_device, |  	struct cdn_dp_device *dp = container_of(work, struct cdn_dp_device, | ||||||
|  						event_work); |  						event_work); | ||||||
| @@ -603,7 +603,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	int ret; |  	int ret; | ||||||
|   |   | ||||||
| @@ -933,44 +946,45 @@ static void cdn_dp_pd_event_work(struct | @@ -934,44 +947,45 @@ static void cdn_dp_pd_event_work(struct | ||||||
|   |   | ||||||
|  	/* Not connected, notify userspace to disable the block */ |  	/* Not connected, notify userspace to disable the block */ | ||||||
|  	if (!cdn_dp_connected_port(dp)) { |  	if (!cdn_dp_connected_port(dp)) { | ||||||
| @@ -662,7 +662,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  					      "Failed to config video %d\n", |  					      "Failed to config video %d\n", | ||||||
|  					      ret); |  					      ret); | ||||||
|  			} |  			} | ||||||
| @@ -1039,7 +1053,7 @@ static int cdn_dp_bind(struct device *de | @@ -1040,7 +1054,7 @@ static int cdn_dp_bind(struct device *de | ||||||
|   |   | ||||||
|  	drm_encoder_helper_add(encoder, &cdn_dp_encoder_helper_funcs); |  	drm_encoder_helper_add(encoder, &cdn_dp_encoder_helper_funcs); | ||||||
|   |   | ||||||
| @@ -671,7 +671,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	connector->polled = DRM_CONNECTOR_POLL_HPD; |  	connector->polled = DRM_CONNECTOR_POLL_HPD; | ||||||
|  	connector->dpms = DRM_MODE_DPMS_OFF; |  	connector->dpms = DRM_MODE_DPMS_OFF; | ||||||
|   |   | ||||||
| @@ -1063,7 +1077,7 @@ static int cdn_dp_bind(struct device *de | @@ -1064,7 +1078,7 @@ static int cdn_dp_bind(struct device *de | ||||||
|  		port = dp->port[i]; |  		port = dp->port[i]; | ||||||
|   |   | ||||||
|  		port->event_nb.notifier_call = cdn_dp_pd_event; |  		port->event_nb.notifier_call = cdn_dp_pd_event; | ||||||
| @@ -680,7 +680,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  						    EXTCON_DISP_DP, |  						    EXTCON_DISP_DP, | ||||||
|  						    &port->event_nb); |  						    &port->event_nb); | ||||||
|  		if (ret) { |  		if (ret) { | ||||||
| @@ -1090,7 +1104,7 @@ static void cdn_dp_unbind(struct device | @@ -1091,7 +1105,7 @@ static void cdn_dp_unbind(struct device | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = dev_get_drvdata(dev); |  	struct cdn_dp_device *dp = dev_get_drvdata(dev); | ||||||
|  	struct drm_encoder *encoder = &dp->encoder; |  	struct drm_encoder *encoder = &dp->encoder; | ||||||
| @@ -689,7 +689,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	cancel_work_sync(&dp->event_work); |  	cancel_work_sync(&dp->event_work); | ||||||
|  	cdn_dp_encoder_disable(encoder); |  	cdn_dp_encoder_disable(encoder); | ||||||
| @@ -1150,7 +1164,7 @@ static int cdn_dp_probe(struct platform_ | @@ -1151,7 +1165,7 @@ static int cdn_dp_probe(struct platform_ | ||||||
|  	dp = devm_kzalloc(dev, sizeof(*dp), GFP_KERNEL); |  	dp = devm_kzalloc(dev, sizeof(*dp), GFP_KERNEL); | ||||||
|  	if (!dp) |  	if (!dp) | ||||||
|  		return -ENOMEM; |  		return -ENOMEM; | ||||||
| @@ -698,7 +698,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	match = of_match_node(cdn_dp_dt_ids, pdev->dev.of_node); |  	match = of_match_node(cdn_dp_dt_ids, pdev->dev.of_node); | ||||||
|  	dp_data = (struct cdn_dp_data *)match->data; |  	dp_data = (struct cdn_dp_data *)match->data; | ||||||
| @@ -1195,7 +1209,7 @@ static int cdn_dp_remove(struct platform | @@ -1196,7 +1210,7 @@ static int cdn_dp_remove(struct platform | ||||||
|  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); |  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); | ||||||
|   |   | ||||||
|  	platform_device_unregister(dp->audio_pdev); |  	platform_device_unregister(dp->audio_pdev); | ||||||
| @@ -707,7 +707,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	component_del(&pdev->dev, &cdn_dp_component_ops); |  	component_del(&pdev->dev, &cdn_dp_component_ops); | ||||||
|   |   | ||||||
|  	return 0; |  	return 0; | ||||||
| @@ -1205,7 +1219,7 @@ static void cdn_dp_shutdown(struct platf | @@ -1206,7 +1220,7 @@ static void cdn_dp_shutdown(struct platf | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); |  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -1794,7 +1794,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  #define encoder_to_dp(c) \ |  #define encoder_to_dp(c) \ | ||||||
|  		container_of(c, struct cdn_dp_device, encoder) |  		container_of(c, struct cdn_dp_device, encoder) | ||||||
| @@ -282,7 +282,7 @@ static int cdn_dp_connector_mode_valid(s | @@ -283,7 +283,7 @@ static int cdn_dp_connector_mode_valid(s | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = connector_to_dp(connector); |  	struct cdn_dp_device *dp = connector_to_dp(connector); | ||||||
|  	struct drm_display_info *display_info = |  	struct drm_display_info *display_info = | ||||||
| @@ -1803,7 +1803,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	u32 requested, actual, rate, sink_max, source_max = 0; |  	u32 requested, actual, rate, sink_max, source_max = 0; | ||||||
|  	u8 lanes, bpc; |  	u8 lanes, bpc; | ||||||
|   |   | ||||||
| @@ -378,7 +378,7 @@ static int cdn_dp_get_sink_capability(st | @@ -379,7 +379,7 @@ static int cdn_dp_get_sink_capability(st | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	kfree(dp->edid); |  	kfree(dp->edid); | ||||||
| @@ -1812,7 +1812,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  				   cdns_mhdp_get_edid_block, &dp->mhdp); |  				   cdns_mhdp_get_edid_block, &dp->mhdp); | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
| @@ -484,8 +484,8 @@ static int cdn_dp_disable(struct cdn_dp_ | @@ -485,8 +485,8 @@ static int cdn_dp_disable(struct cdn_dp_ | ||||||
|  	cdns_mhdp_set_firmware_active(&dp->mhdp, false); |  	cdns_mhdp_set_firmware_active(&dp->mhdp, false); | ||||||
|  	cdn_dp_clk_disable(dp); |  	cdn_dp_clk_disable(dp); | ||||||
|  	dp->active = false; |  	dp->active = false; | ||||||
| @@ -1823,7 +1823,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (!dp->connected) { |  	if (!dp->connected) { | ||||||
|  		kfree(dp->edid); |  		kfree(dp->edid); | ||||||
|  		dp->edid = NULL; |  		dp->edid = NULL; | ||||||
| @@ -550,7 +550,7 @@ static void cdn_dp_encoder_mode_set(stru | @@ -551,7 +551,7 @@ static void cdn_dp_encoder_mode_set(stru | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = encoder_to_dp(encoder); |  	struct cdn_dp_device *dp = encoder_to_dp(encoder); | ||||||
|  	struct drm_display_info *display_info = |  	struct drm_display_info *display_info = | ||||||
| @@ -1832,7 +1832,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	struct video_info *video = &dp->mhdp.video_info; |  	struct video_info *video = &dp->mhdp.video_info; | ||||||
|   |   | ||||||
|  	switch (display_info->bpc) { |  	switch (display_info->bpc) { | ||||||
| @@ -578,7 +578,7 @@ static bool cdn_dp_check_link_status(str | @@ -579,7 +579,7 @@ static bool cdn_dp_check_link_status(str | ||||||
|  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); |  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); | ||||||
|  	u8 sink_lanes = drm_dp_max_lane_count(dp->dpcd); |  	u8 sink_lanes = drm_dp_max_lane_count(dp->dpcd); | ||||||
|   |   | ||||||
| @@ -1841,7 +1841,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		return false; |  		return false; | ||||||
|   |   | ||||||
|  	if (cdns_mhdp_dpcd_read(&dp->mhdp, DP_LANE0_1_STATUS, link_status, |  	if (cdns_mhdp_dpcd_read(&dp->mhdp, DP_LANE0_1_STATUS, link_status, | ||||||
| @@ -807,7 +807,7 @@ static int cdn_dp_audio_hw_params(struct | @@ -808,7 +808,7 @@ static int cdn_dp_audio_hw_params(struct | ||||||
|   |   | ||||||
|  	ret = cdns_mhdp_audio_config(&dp->mhdp, &audio); |  	ret = cdns_mhdp_audio_config(&dp->mhdp, &audio); | ||||||
|  	if (!ret) |  	if (!ret) | ||||||
| @@ -1850,7 +1850,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  out: |  out: | ||||||
|  	mutex_unlock(&dp->lock); |  	mutex_unlock(&dp->lock); | ||||||
| @@ -823,9 +823,9 @@ static void cdn_dp_audio_shutdown(struct | @@ -824,9 +824,9 @@ static void cdn_dp_audio_shutdown(struct | ||||||
|  	if (!dp->active) |  	if (!dp->active) | ||||||
|  		goto out; |  		goto out; | ||||||
|   |   | ||||||
| @@ -1862,7 +1862,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  out: |  out: | ||||||
|  	mutex_unlock(&dp->lock); |  	mutex_unlock(&dp->lock); | ||||||
|  } |  } | ||||||
| @@ -854,8 +854,8 @@ static int cdn_dp_audio_get_eld(struct d | @@ -855,8 +855,8 @@ static int cdn_dp_audio_get_eld(struct d | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = dev_get_drvdata(dev); |  	struct cdn_dp_device *dp = dev_get_drvdata(dev); | ||||||
|   |   | ||||||
| @@ -1873,7 +1873,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
| @@ -877,11 +877,11 @@ static int cdn_dp_audio_codec_init(struc | @@ -878,11 +878,11 @@ static int cdn_dp_audio_codec_init(struc | ||||||
|  		.max_i2s_channels = 8, |  		.max_i2s_channels = 8, | ||||||
|  	}; |  	}; | ||||||
|   |   | ||||||
| @@ -1889,7 +1889,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static int cdn_dp_request_firmware(struct cdn_dp_device *dp) |  static int cdn_dp_request_firmware(struct cdn_dp_device *dp) | ||||||
| @@ -927,7 +927,7 @@ static void cdn_dp_pd_event_work(struct | @@ -928,7 +928,7 @@ static void cdn_dp_pd_event_work(struct | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = container_of(work, struct cdn_dp_device, |  	struct cdn_dp_device *dp = container_of(work, struct cdn_dp_device, | ||||||
|  						event_work); |  						event_work); | ||||||
| @@ -1898,7 +1898,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	enum drm_connector_status old_status; |  	enum drm_connector_status old_status; | ||||||
|  	struct device *dev = dp->mhdp.dev; |  	struct device *dev = dp->mhdp.dev; | ||||||
|   |   | ||||||
| @@ -965,8 +965,8 @@ static void cdn_dp_pd_event_work(struct | @@ -966,8 +966,8 @@ static void cdn_dp_pd_event_work(struct | ||||||
|   |   | ||||||
|  	/* Enabled and connected with a sink, re-train if requested */ |  	/* Enabled and connected with a sink, re-train if requested */ | ||||||
|  	} else if (!cdn_dp_check_link_status(dp)) { |  	} else if (!cdn_dp_check_link_status(dp)) { | ||||||
| @@ -1909,7 +1909,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  		struct drm_display_mode *mode = &dp->mhdp.mode; |  		struct drm_display_mode *mode = &dp->mhdp.mode; | ||||||
|   |   | ||||||
|  		DRM_DEV_INFO(dev, "Connected with sink. Re-train link\n"); |  		DRM_DEV_INFO(dev, "Connected with sink. Re-train link\n"); | ||||||
| @@ -979,8 +979,8 @@ static void cdn_dp_pd_event_work(struct | @@ -980,8 +980,8 @@ static void cdn_dp_pd_event_work(struct | ||||||
|   |   | ||||||
|  		/* If training result is changed, update the video config */ |  		/* If training result is changed, update the video config */ | ||||||
|  		if (mode->clock && |  		if (mode->clock && | ||||||
| @@ -1920,7 +1920,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  			ret = cdns_mhdp_config_video(&dp->mhdp); |  			ret = cdns_mhdp_config_video(&dp->mhdp); | ||||||
|  			if (ret) { |  			if (ret) { | ||||||
|  				dp->connected = false; |  				dp->connected = false; | ||||||
| @@ -1053,7 +1053,7 @@ static int cdn_dp_bind(struct device *de | @@ -1054,7 +1054,7 @@ static int cdn_dp_bind(struct device *de | ||||||
|   |   | ||||||
|  	drm_encoder_helper_add(encoder, &cdn_dp_encoder_helper_funcs); |  	drm_encoder_helper_add(encoder, &cdn_dp_encoder_helper_funcs); | ||||||
|   |   | ||||||
| @@ -1929,7 +1929,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	connector->polled = DRM_CONNECTOR_POLL_HPD; |  	connector->polled = DRM_CONNECTOR_POLL_HPD; | ||||||
|  	connector->dpms = DRM_MODE_DPMS_OFF; |  	connector->dpms = DRM_MODE_DPMS_OFF; | ||||||
|   |   | ||||||
| @@ -1104,7 +1104,7 @@ static void cdn_dp_unbind(struct device | @@ -1105,7 +1105,7 @@ static void cdn_dp_unbind(struct device | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = dev_get_drvdata(dev); |  	struct cdn_dp_device *dp = dev_get_drvdata(dev); | ||||||
|  	struct drm_encoder *encoder = &dp->encoder; |  	struct drm_encoder *encoder = &dp->encoder; | ||||||
| @@ -1938,7 +1938,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	cancel_work_sync(&dp->event_work); |  	cancel_work_sync(&dp->event_work); | ||||||
|  	cdn_dp_encoder_disable(encoder); |  	cdn_dp_encoder_disable(encoder); | ||||||
| @@ -1208,7 +1208,7 @@ static int cdn_dp_remove(struct platform | @@ -1209,7 +1209,7 @@ static int cdn_dp_remove(struct platform | ||||||
|  { |  { | ||||||
|  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); |  	struct cdn_dp_device *dp = platform_get_drvdata(pdev); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  |  | ||||||
| --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| @@ -797,7 +797,7 @@ static int cdn_dp_audio_hw_params(struct | @@ -798,7 +798,7 @@ static int cdn_dp_audio_hw_params(struct | ||||||
|  		audio.format = AFMT_I2S; |  		audio.format = AFMT_I2S; | ||||||
|  		break; |  		break; | ||||||
|  	case HDMI_SPDIF: |  	case HDMI_SPDIF: | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  |  | ||||||
| --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| @@ -717,10 +717,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | @@ -718,10 +718,10 @@ static int cdn_dp_parse_dt(struct cdn_dp | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||||||
|   | |||||||
| @@ -142,7 +142,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	msg[4] = PTS1 | PTS2 | PTS3 | PTS4; |  	msg[4] = PTS1 | PTS2 | PTS3 | PTS4; | ||||||
| --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | --- a/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | +++ b/drivers/gpu/drm/rockchip/cdn-dp-core.c | ||||||
| @@ -305,12 +305,10 @@ static int cdn_dp_connector_mode_valid(s | @@ -306,12 +306,10 @@ static int cdn_dp_connector_mode_valid(s | ||||||
|  	requested = mode->clock * bpc * 3 / 1000; |  	requested = mode->clock * bpc * 3 / 1000; | ||||||
|   |   | ||||||
|  	source_max = dp->lanes; |  	source_max = dp->lanes; | ||||||
| @@ -157,7 +157,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|   |   | ||||||
|  	actual = rate * lanes / 100; |  	actual = rate * lanes / 100; | ||||||
|   |   | ||||||
| @@ -365,21 +363,25 @@ static int cdn_dp_firmware_init(struct c | @@ -366,21 +364,25 @@ static int cdn_dp_firmware_init(struct c | ||||||
|   |   | ||||||
|  static int cdn_dp_get_sink_capability(struct cdn_dp_device *dp) |  static int cdn_dp_get_sink_capability(struct cdn_dp_device *dp) | ||||||
|  { |  { | ||||||
| @@ -188,7 +188,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -421,7 +423,8 @@ static int cdn_dp_enable_phy(struct cdn_ | @@ -422,7 +424,8 @@ static int cdn_dp_enable_phy(struct cdn_ | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	port->lanes = cdn_dp_get_port_lanes(port); |  	port->lanes = cdn_dp_get_port_lanes(port); | ||||||
| @@ -198,7 +198,7 @@ Signed-off-by: Sandor Yu <Sandor.yu@nxp.com> | |||||||
|  	if (ret) { |  	if (ret) { | ||||||
|  		DRM_DEV_ERROR(dev, "set host capabilities failed: %d\n", |  		DRM_DEV_ERROR(dev, "set host capabilities failed: %d\n", | ||||||
|  			      ret); |  			      ret); | ||||||
| @@ -576,9 +579,9 @@ static bool cdn_dp_check_link_status(str | @@ -577,9 +580,9 @@ static bool cdn_dp_check_link_status(str | ||||||
|  { |  { | ||||||
|  	u8 link_status[DP_LINK_STATUS_SIZE]; |  	u8 link_status[DP_LINK_STATUS_SIZE]; | ||||||
|  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); |  	struct cdn_dp_port *port = cdn_dp_connected_port(dp); | ||||||
|   | |||||||
| @@ -109,7 +109,7 @@ Reviewed-by: Jun Li <jun.li@nxp.com> | |||||||
|  	usb_phy_set_suspend(dwc->usb2_phy, 0); |  	usb_phy_set_suspend(dwc->usb2_phy, 0); | ||||||
|  	usb_phy_set_suspend(dwc->usb3_phy, 0); |  	usb_phy_set_suspend(dwc->usb3_phy, 0); | ||||||
|  	ret = phy_power_on(dwc->usb2_generic_phy); |  	ret = phy_power_on(dwc->usb2_generic_phy); | ||||||
| @@ -1931,12 +1983,9 @@ static const struct dev_pm_ops dwc3_dev_ | @@ -1932,12 +1984,9 @@ static const struct dev_pm_ops dwc3_dev_ | ||||||
|   |   | ||||||
|  #ifdef CONFIG_OF |  #ifdef CONFIG_OF | ||||||
|  static const struct of_device_id of_dwc3_match[] = { |  static const struct of_device_id of_dwc3_match[] = { | ||||||
|   | |||||||
| @@ -81,7 +81,7 @@ Signed-off-by: Ran Wang <ran.wang_1@nxp.com> | |||||||
|  	usb_phy_set_suspend(dwc->usb2_phy, 0); |  	usb_phy_set_suspend(dwc->usb2_phy, 0); | ||||||
|  	usb_phy_set_suspend(dwc->usb3_phy, 0); |  	usb_phy_set_suspend(dwc->usb3_phy, 0); | ||||||
|  	ret = phy_power_on(dwc->usb2_generic_phy); |  	ret = phy_power_on(dwc->usb2_generic_phy); | ||||||
| @@ -1983,9 +1931,12 @@ static const struct dev_pm_ops dwc3_dev_ | @@ -1984,9 +1932,12 @@ static const struct dev_pm_ops dwc3_dev_ | ||||||
|   |   | ||||||
|  #ifdef CONFIG_OF |  #ifdef CONFIG_OF | ||||||
|  static const struct of_device_id of_dwc3_match[] = { |  static const struct of_device_id of_dwc3_match[] = { | ||||||
|   | |||||||
| @@ -108,7 +108,7 @@ Reviewed-by: Jun Li <jun.li@nxp.com> | |||||||
|  	usb_phy_set_suspend(dwc->usb2_phy, 0); |  	usb_phy_set_suspend(dwc->usb2_phy, 0); | ||||||
|  	usb_phy_set_suspend(dwc->usb3_phy, 0); |  	usb_phy_set_suspend(dwc->usb3_phy, 0); | ||||||
|  	ret = phy_power_on(dwc->usb2_generic_phy); |  	ret = phy_power_on(dwc->usb2_generic_phy); | ||||||
| @@ -1931,12 +1982,16 @@ static const struct dev_pm_ops dwc3_dev_ | @@ -1932,12 +1983,16 @@ static const struct dev_pm_ops dwc3_dev_ | ||||||
|   |   | ||||||
|  #ifdef CONFIG_OF |  #ifdef CONFIG_OF | ||||||
|  static const struct of_device_id of_dwc3_match[] = { |  static const struct of_device_id of_dwc3_match[] = { | ||||||
|   | |||||||
| @@ -19,7 +19,7 @@ | |||||||
|  	}, |  	}, | ||||||
|  	[PORT_NPCM] = { |  	[PORT_NPCM] = { | ||||||
|  		.name		= "Nuvoton 16550", |  		.name		= "Nuvoton 16550", | ||||||
| @@ -2578,6 +2578,11 @@ serial8250_do_set_termios(struct uart_po | @@ -2591,6 +2591,11 @@ serial8250_do_set_termios(struct uart_po | ||||||
|  	unsigned long flags; |  	unsigned long flags; | ||||||
|  	unsigned int baud, quot, frac = 0; |  	unsigned int baud, quot, frac = 0; | ||||||
|   |   | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/drivers/leds/Kconfig | --- a/drivers/leds/Kconfig | ||||||
| +++ b/drivers/leds/Kconfig | +++ b/drivers/leds/Kconfig | ||||||
| @@ -823,6 +823,16 @@ config LEDS_LM36274 | @@ -824,6 +824,16 @@ config LEDS_LM36274 | ||||||
|  	  Say Y to enable the LM36274 LED driver for TI LMU devices. |  	  Say Y to enable the LM36274 LED driver for TI LMU devices. | ||||||
|  	  This supports the LED device LM36274. |  	  This supports the LED device LM36274. | ||||||
|   |   | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user