kernel: bump 5.10 to 5.10.110
Removed upstreamed: generic/backport-5.10/350-v5.18-MIPS-pgalloc-fix-memory-leak-caused-by-pgd_free.patch generic/pending-5.10/850-0014-PCI-aardvark-Fix-reading-PCI_EXP_RTSTA_PME-bit-on-em.patch ipq40xx/patches-5.10/105-ipq40xx-fix-sleep-clock.patch All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Compile-/run-tested: ath79/generic (Archer C7 v2). 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
						
							be381a7ac7
						
					
				
				
					commit
					b92ec82235
				
			| @@ -1,2 +1,2 @@ | ||||
| LINUX_VERSION-5.10 = .109 | ||||
| LINUX_KERNEL_HASH-5.10.109 = 18fb22ecb249669ea775474aee614dcb0697cab299068074fd9f0bafa32113dc | ||||
| LINUX_VERSION-5.10 = .110 | ||||
| LINUX_KERNEL_HASH-5.10.110 = dbef6a06325433481551cb8cfca9254d908d0ae950bc809f3da8ade00c485693 | ||||
|   | ||||
| @@ -23,7 +23,7 @@ produce a noisy warning. | ||||
|  		xhci->quirks |= XHCI_RESET_ON_RESUME; | ||||
| --- a/drivers/usb/host/xhci.c | ||||
| +++ b/drivers/usb/host/xhci.c | ||||
| @@ -427,10 +427,14 @@ static int xhci_try_enable_msi(struct us | ||||
| @@ -425,10 +425,14 @@ static int xhci_try_enable_msi(struct us | ||||
|  		free_irq(hcd->irq, hcd); | ||||
|  	hcd->irq = 0; | ||||
|   | ||||
| @@ -43,7 +43,7 @@ produce a noisy warning. | ||||
|  		hcd->msi_enabled = 1; | ||||
| --- a/drivers/usb/host/xhci.h | ||||
| +++ b/drivers/usb/host/xhci.h | ||||
| @@ -1892,6 +1892,7 @@ struct xhci_hcd { | ||||
| @@ -1895,6 +1895,7 @@ struct xhci_hcd { | ||||
|  	struct xhci_hub		usb2_rhub; | ||||
|  	struct xhci_hub		usb3_rhub; | ||||
|  	/* support xHCI 1.0 spec USB2 hardware LPM */ | ||||
|   | ||||
| @@ -17,7 +17,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> | ||||
|  | ||||
| --- a/sound/soc/codecs/Kconfig | ||||
| +++ b/sound/soc/codecs/Kconfig | ||||
| @@ -1003,7 +1003,7 @@ config SND_SOC_PCM3168A_SPI | ||||
| @@ -1008,7 +1008,7 @@ config SND_SOC_PCM3168A_SPI | ||||
|  	select REGMAP_SPI | ||||
|   | ||||
|  config SND_SOC_PCM5102A | ||||
|   | ||||
| @@ -78,7 +78,7 @@ Link: https://lore.kernel.org/r/1611061165-30180-1-git-send-email-claudiu.beznea | ||||
|  static u64 mchp_pit64b_clksrc_read(struct clocksource *cs) | ||||
|  { | ||||
|  	return mchp_pit64b_cnt_read(mchp_pit64b_cs_base); | ||||
| @@ -128,7 +172,7 @@ static u64 mchp_pit64b_sched_read_clk(vo | ||||
| @@ -128,7 +172,7 @@ static u64 notrace mchp_pit64b_sched_rea | ||||
|   | ||||
|  static int mchp_pit64b_clkevt_shutdown(struct clock_event_device *cedev) | ||||
|  { | ||||
|   | ||||
| @@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net> | ||||
|  | ||||
| --- a/mm/page_alloc.c | ||||
| +++ b/mm/page_alloc.c | ||||
| @@ -8596,8 +8596,6 @@ int alloc_contig_range(unsigned long sta | ||||
| @@ -8603,8 +8603,6 @@ int alloc_contig_range(unsigned long sta | ||||
|   | ||||
|  	/* Make sure the range is really isolated. */ | ||||
|  	if (test_pages_isolated(outer_start, end, 0)) { | ||||
|   | ||||
| @@ -12442,7 +12442,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com | ||||
|  	depends on I2C | ||||
|  	select SND_SOC_AD193X | ||||
|   | ||||
| @@ -804,7 +808,7 @@ config SND_SOC_HDAC_HDA | ||||
| @@ -809,7 +813,7 @@ config SND_SOC_HDAC_HDA | ||||
|  	select SND_HDA | ||||
|   | ||||
|  config SND_SOC_ICS43432 | ||||
| @@ -12451,7 +12451,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com | ||||
|   | ||||
|  config SND_SOC_INNO_RK3036 | ||||
|  	tristate "Inno codec driver for RK3036 SoC" | ||||
| @@ -825,6 +829,13 @@ config SND_SOC_LOCHNAGAR_SC | ||||
| @@ -830,6 +834,13 @@ config SND_SOC_LOCHNAGAR_SC | ||||
|  	  This driver support the sound card functionality of the Cirrus | ||||
|  	  Logic Lochnagar audio development board. | ||||
|   | ||||
| @@ -12465,7 +12465,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com | ||||
|  config SND_SOC_MADERA | ||||
|  	tristate | ||||
|  	default y if SND_SOC_CS47L15=y | ||||
| @@ -1125,6 +1136,10 @@ config SND_SOC_RT5616 | ||||
| @@ -1130,6 +1141,10 @@ config SND_SOC_RT5616 | ||||
|  	tristate "Realtek RT5616 CODEC" | ||||
|  	depends on I2C | ||||
|   | ||||
| @@ -12476,7 +12476,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com | ||||
|  config SND_SOC_RT5631 | ||||
|  	tristate "Realtek ALC5631/RT5631 CODEC" | ||||
|  	depends on I2C | ||||
| @@ -1346,6 +1361,9 @@ config SND_SOC_TFA9879 | ||||
| @@ -1351,6 +1366,9 @@ config SND_SOC_TFA9879 | ||||
|  	tristate "NXP Semiconductors TFA9879 amplifier" | ||||
|  	depends on I2C | ||||
|   | ||||
| @@ -12486,7 +12486,7 @@ Signed-off-by: Joerg Schambacher joerg@i2audio.com | ||||
|  config SND_SOC_TLV320AIC23 | ||||
|  	tristate | ||||
|   | ||||
| @@ -1784,4 +1802,8 @@ config SND_SOC_TPA6130A2 | ||||
| @@ -1789,4 +1807,8 @@ config SND_SOC_TPA6130A2 | ||||
|  	tristate "Texas Instruments TPA6130A2 headphone amplifier" | ||||
|  	depends on I2C | ||||
|   | ||||
|   | ||||
| @@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|  | ||||
| --- a/drivers/usb/host/xhci.c | ||||
| +++ b/drivers/usb/host/xhci.c | ||||
| @@ -1474,6 +1474,103 @@ command_cleanup: | ||||
| @@ -1472,6 +1472,103 @@ command_cleanup: | ||||
|  } | ||||
|   | ||||
|  /* | ||||
| @@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|   * non-error returns are a promise to giveback() the urb later | ||||
|   * we drop ownership so next owner (or urb unlink) can get it | ||||
|   */ | ||||
| @@ -5380,6 +5477,7 @@ static const struct hc_driver xhci_hc_dr | ||||
| @@ -5378,6 +5475,7 @@ static const struct hc_driver xhci_hc_dr | ||||
|  	.endpoint_reset =	xhci_endpoint_reset, | ||||
|  	.check_bandwidth =	xhci_check_bandwidth, | ||||
|  	.reset_bandwidth =	xhci_reset_bandwidth, | ||||
|   | ||||
| @@ -47,7 +47,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|  			val); | ||||
| --- a/drivers/usb/host/xhci.h | ||||
| +++ b/drivers/usb/host/xhci.h | ||||
| @@ -1653,8 +1653,8 @@ struct urb_priv { | ||||
| @@ -1656,8 +1656,8 @@ struct urb_priv { | ||||
|   * Each segment table entry is 4*32bits long.  1K seems like an ok size: | ||||
|   * (1K bytes * 8bytes/bit) / (4*32 bits) = 64 segment entries in the table, | ||||
|   * meaning 64 ring segments. | ||||
|   | ||||
| @@ -14,7 +14,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org> | ||||
|  | ||||
| --- a/drivers/net/phy/broadcom.c | ||||
| +++ b/drivers/net/phy/broadcom.c | ||||
| @@ -313,6 +313,9 @@ static void bcm54xx_adjust_rxrefclk(stru | ||||
| @@ -314,6 +314,9 @@ static void bcm54xx_adjust_rxrefclk(stru | ||||
|  static int bcm54xx_config_init(struct phy_device *phydev) | ||||
|  { | ||||
|  	int reg, err, val; | ||||
| @@ -24,7 +24,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org> | ||||
|   | ||||
|  	reg = phy_read(phydev, MII_BCM54XX_ECR); | ||||
|  	if (reg < 0) | ||||
| @@ -368,6 +371,8 @@ static int bcm54xx_config_init(struct ph | ||||
| @@ -369,6 +372,8 @@ static int bcm54xx_config_init(struct ph | ||||
|   | ||||
|  	bcm54xx_phydsp_config(phydev); | ||||
|   | ||||
| @@ -33,7 +33,7 @@ Signed-off-by: James Hughes <james.hughes@raspberrypi.org> | ||||
|  	/* Encode link speed into LED1 and LED3 pair (green/amber). | ||||
|  	 * Also flash these two LEDs on activity. This means configuring | ||||
|  	 * them for MULTICOLOR and encoding link/activity into them. | ||||
| @@ -377,8 +382,8 @@ static int bcm54xx_config_init(struct ph | ||||
| @@ -378,8 +383,8 @@ static int bcm54xx_config_init(struct ph | ||||
|  	bcm_phy_write_shadow(phydev, BCM5482_SHD_LEDS1, val); | ||||
|   | ||||
|  	val = BCM_LED_MULTICOLOR_IN_PHASE | | ||||
|   | ||||
| @@ -11,7 +11,7 @@ releases. | ||||
|  | ||||
| --- a/drivers/net/phy/broadcom.c | ||||
| +++ b/drivers/net/phy/broadcom.c | ||||
| @@ -314,7 +314,7 @@ static int bcm54xx_config_init(struct ph | ||||
| @@ -315,7 +315,7 @@ static int bcm54xx_config_init(struct ph | ||||
|  { | ||||
|  	int reg, err, val; | ||||
|  	u32 led_modes[] = {BCM_LED_MULTICOLOR_LINK_ACT, | ||||
| @@ -20,7 +20,7 @@ releases. | ||||
|  	struct device_node *np = phydev->mdio.dev.of_node; | ||||
|   | ||||
|  	reg = phy_read(phydev, MII_BCM54XX_ECR); | ||||
| @@ -373,10 +373,6 @@ static int bcm54xx_config_init(struct ph | ||||
| @@ -374,10 +374,6 @@ static int bcm54xx_config_init(struct ph | ||||
|   | ||||
|  	of_property_read_u32_array(np, "led-modes", led_modes, 2); | ||||
|   | ||||
|   | ||||
| @@ -51,7 +51,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com> | ||||
|   | ||||
| --- a/drivers/usb/host/xhci.h | ||||
| +++ b/drivers/usb/host/xhci.h | ||||
| @@ -1885,6 +1885,7 @@ struct xhci_hcd { | ||||
| @@ -1888,6 +1888,7 @@ struct xhci_hcd { | ||||
|  #define XHCI_SG_TRB_CACHE_SIZE_QUIRK	BIT_ULL(39) | ||||
|  #define XHCI_NO_SOFT_RETRY	BIT_ULL(40) | ||||
|  #define XHCI_EP_CTX_BROKEN_DCS	BIT_ULL(42) | ||||
|   | ||||
| @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/bcm2711.dtsi | ||||
| +++ b/arch/arm/boot/dts/bcm2711.dtsi | ||||
| @@ -510,8 +510,8 @@ | ||||
| @@ -560,8 +560,8 @@ | ||||
|  			msi-controller; | ||||
|  			msi-parent = <&pcie0>; | ||||
|   | ||||
|   | ||||
| @@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|  | ||||
| --- a/drivers/net/phy/broadcom.c | ||||
| +++ b/drivers/net/phy/broadcom.c | ||||
| @@ -252,7 +252,8 @@ static void bcm54xx_adjust_rxrefclk(stru | ||||
| @@ -253,7 +253,8 @@ static void bcm54xx_adjust_rxrefclk(stru | ||||
|  	    BRCM_PHY_MODEL(phydev) != PHY_ID_BCM50610 && | ||||
|  	    BRCM_PHY_MODEL(phydev) != PHY_ID_BCM50610M && | ||||
|  	    BRCM_PHY_MODEL(phydev) != PHY_ID_BCM54810 && | ||||
| @@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|  		return; | ||||
|   | ||||
|  	val = bcm_phy_read_shadow(phydev, BCM54XX_SHD_SCR3); | ||||
| @@ -763,13 +764,21 @@ static struct phy_driver broadcom_driver | ||||
| @@ -784,13 +785,21 @@ static struct phy_driver broadcom_driver | ||||
|  	.config_intr	= bcm_phy_config_intr, | ||||
|  }, { | ||||
|  	.phy_id		= PHY_ID_BCM54210E, | ||||
| @@ -49,7 +49,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org> | ||||
|  	.phy_id		= PHY_ID_BCM5461, | ||||
|  	.phy_id_mask	= 0xfffffff0, | ||||
|  	.name		= "Broadcom BCM5461", | ||||
| @@ -925,7 +934,8 @@ module_phy_driver(broadcom_drivers); | ||||
| @@ -946,7 +955,8 @@ module_phy_driver(broadcom_drivers); | ||||
|  static struct mdio_device_id __maybe_unused broadcom_tbl[] = { | ||||
|  	{ PHY_ID_BCM5411, 0xfffffff0 }, | ||||
|  	{ PHY_ID_BCM5421, 0xfffffff0 }, | ||||
|   | ||||
| @@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | ||||
|  | ||||
| --- a/drivers/net/phy/broadcom.c | ||||
| +++ b/drivers/net/phy/broadcom.c | ||||
| @@ -82,6 +82,11 @@ static int bcm54210e_config_init(struct | ||||
| @@ -83,6 +83,11 @@ static int bcm54210e_config_init(struct | ||||
|  	return 0; | ||||
|  } | ||||
|   | ||||
| @@ -22,7 +22,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | ||||
|  static int bcm54612e_config_init(struct phy_device *phydev) | ||||
|  { | ||||
|  	int reg; | ||||
| @@ -357,6 +362,9 @@ static int bcm54xx_config_init(struct ph | ||||
| @@ -358,6 +363,9 @@ static int bcm54xx_config_init(struct ph | ||||
|  	case PHY_ID_BCM54616S: | ||||
|  		err = bcm54616s_config_init(phydev); | ||||
|  		break; | ||||
|   | ||||
| @@ -13,7 +13,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/bcm2711.dtsi | ||||
| +++ b/arch/arm/boot/dts/bcm2711.dtsi | ||||
| @@ -561,6 +561,7 @@ | ||||
| @@ -611,6 +611,7 @@ | ||||
|   | ||||
|  &dsi1 { | ||||
|  	interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; | ||||
|   | ||||
| @@ -22,7 +22,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech> | ||||
|  | ||||
| --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | ||||
| +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | ||||
| @@ -6528,9 +6528,7 @@ void amdgpu_dm_connector_init_helper(str | ||||
| @@ -6531,9 +6531,7 @@ void amdgpu_dm_connector_init_helper(str | ||||
|  	if (connector_type == DRM_MODE_CONNECTOR_HDMIA || | ||||
|  	    connector_type == DRM_MODE_CONNECTOR_DisplayPort || | ||||
|  	    connector_type == DRM_MODE_CONNECTOR_eDP) { | ||||
|   | ||||
| @@ -254,7 +254,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech> | ||||
|   * clk_get_parent - return the parent of a clk | ||||
|   * @clk: the clk whose parent gets returned | ||||
|   * | ||||
| @@ -3838,6 +3958,7 @@ __clk_register(struct device *dev, struc | ||||
| @@ -3851,6 +3971,7 @@ __clk_register(struct device *dev, struc | ||||
|  		goto fail_parents; | ||||
|   | ||||
|  	INIT_HLIST_HEAD(&core->clks); | ||||
|   | ||||
| @@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | ||||
|  			status = "disabled"; | ||||
|  		}; | ||||
|   | ||||
| @@ -1115,7 +1115,3 @@ | ||||
| @@ -1165,7 +1165,3 @@ | ||||
|  &usb { | ||||
|  	interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; | ||||
|  }; | ||||
|   | ||||
| @@ -90,7 +90,7 @@ it on BCM4708 family. | ||||
|  /* | ||||
|   * Reset a halted HC. | ||||
|   * | ||||
| @@ -608,10 +651,20 @@ static int xhci_init(struct usb_hcd *hcd | ||||
| @@ -606,10 +649,20 @@ static int xhci_init(struct usb_hcd *hcd | ||||
|   | ||||
|  static int xhci_run_finished(struct xhci_hcd *xhci) | ||||
|  { | ||||
| @@ -114,7 +114,7 @@ it on BCM4708 family. | ||||
|  	xhci->shared_hcd->state = HC_STATE_RUNNING; | ||||
|  	xhci->cmd_ring_state = CMD_RING_STATE_RUNNING; | ||||
|   | ||||
| @@ -621,6 +674,10 @@ static int xhci_run_finished(struct xhci | ||||
| @@ -619,6 +672,10 @@ static int xhci_run_finished(struct xhci | ||||
|  	xhci_dbg_trace(xhci, trace_xhci_dbg_init, | ||||
|  			"Finished xhci_run for USB3 roothub"); | ||||
|  	return 0; | ||||
| @@ -127,7 +127,7 @@ it on BCM4708 family. | ||||
|  /* | ||||
| --- a/drivers/usb/host/xhci.h | ||||
| +++ b/drivers/usb/host/xhci.h | ||||
| @@ -1885,6 +1885,7 @@ struct xhci_hcd { | ||||
| @@ -1888,6 +1888,7 @@ struct xhci_hcd { | ||||
|  #define XHCI_SG_TRB_CACHE_SIZE_QUIRK	BIT_ULL(39) | ||||
|  #define XHCI_NO_SOFT_RETRY	BIT_ULL(40) | ||||
|  #define XHCI_EP_CTX_BROKEN_DCS	BIT_ULL(42) | ||||
|   | ||||
| @@ -1,48 +0,0 @@ | ||||
| From e852442da56f43795cb6255d90b9fd0c84b209bb Mon Sep 17 00:00:00 2001 | ||||
| From: Yaliang Wang <Yaliang.Wang@windriver.com> | ||||
| Date: Thu, 10 Mar 2022 19:31:16 +0800 | ||||
| Subject: [PATCH] MIPS: pgalloc: fix memory leak caused by pgd_free() | ||||
|  | ||||
| pgd page is freed by generic implementation pgd_free() since commit | ||||
| f9cb654cb550 ("asm-generic: pgalloc: provide generic pgd_free()"), | ||||
| however, there are scenarios that the system uses more than one page as | ||||
| the pgd table, in such cases the generic implementation pgd_free() won't | ||||
| be applicable anymore. For example, when PAGE_SIZE_4KB is enabled and | ||||
| MIPS_VA_BITS_48 is not enabled in a 64bit system, the macro "PGD_ORDER" | ||||
| will be set as "1", which will cause allocating two pages as the pgd | ||||
| table. Well, at the same time, the generic implementation pgd_free() | ||||
| just free one pgd page, which will result in the memory leak. | ||||
|  | ||||
| The memory leak can be easily detected by executing shell command: | ||||
| "while true; do ls > /dev/null; grep MemFree /proc/meminfo; done" | ||||
|  | ||||
| Fixes: f9cb654cb550 ("asm-generic: pgalloc: provide generic pgd_free()") | ||||
| Signed-off-by: Yaliang Wang <Yaliang.Wang@windriver.com> | ||||
| Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> | ||||
| (cherry picked from commit 2bc5bab9a763d520937e4f3fe8df51c6a1eceb97) | ||||
| --- | ||||
|  arch/mips/include/asm/pgalloc.h | 6 ++++++ | ||||
|  1 file changed, 6 insertions(+) | ||||
|  | ||||
| --- a/arch/mips/include/asm/pgalloc.h | ||||
| +++ b/arch/mips/include/asm/pgalloc.h | ||||
| @@ -15,6 +15,7 @@ | ||||
|   | ||||
|  #define __HAVE_ARCH_PMD_ALLOC_ONE | ||||
|  #define __HAVE_ARCH_PUD_ALLOC_ONE | ||||
| +#define __HAVE_ARCH_PGD_FREE | ||||
|  #include <asm-generic/pgalloc.h> | ||||
|   | ||||
|  static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, | ||||
| @@ -49,6 +50,11 @@ static inline void pud_populate(struct m | ||||
|  extern void pgd_init(unsigned long page); | ||||
|  extern pgd_t *pgd_alloc(struct mm_struct *mm); | ||||
|   | ||||
| +static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) | ||||
| +{ | ||||
| +	free_pages((unsigned long)pgd, PGD_ORDER); | ||||
| +} | ||||
| + | ||||
|  #define __pte_free_tlb(tlb,pte,address)			\ | ||||
|  do {							\ | ||||
|  	pgtable_pte_page_dtor(pte);			\ | ||||
| @@ -33,7 +33,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> | ||||
|  enum udp_conntrack { | ||||
| --- a/net/netfilter/nf_conntrack_proto_tcp.c | ||||
| +++ b/net/netfilter/nf_conntrack_proto_tcp.c | ||||
| @@ -1438,6 +1438,11 @@ void nf_conntrack_tcp_init_net(struct ne | ||||
| @@ -1447,6 +1447,11 @@ void nf_conntrack_tcp_init_net(struct ne | ||||
|  	tn->tcp_loose = nf_ct_tcp_loose; | ||||
|  	tn->tcp_be_liberal = nf_ct_tcp_be_liberal; | ||||
|  	tn->tcp_max_retrans = nf_ct_tcp_max_retrans; | ||||
|   | ||||
| @@ -1608,7 +1608,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  		} | ||||
| --- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c | ||||
| +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c | ||||
| @@ -1831,8 +1831,8 @@ static int axienet_probe(struct platform | ||||
| @@ -1843,8 +1843,8 @@ static int axienet_probe(struct platform | ||||
|  	struct device_node *np; | ||||
|  	struct axienet_local *lp; | ||||
|  	struct net_device *ndev; | ||||
| @@ -1618,7 +1618,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	int addr_width = 32; | ||||
|  	u32 value; | ||||
|   | ||||
| @@ -2032,13 +2032,14 @@ static int axienet_probe(struct platform | ||||
| @@ -2044,13 +2044,14 @@ static int axienet_probe(struct platform | ||||
|  		dev_info(&pdev->dev, "Ethernet core IRQ not defined\n"); | ||||
|   | ||||
|  	/* Retrieve the MAC address */ | ||||
|   | ||||
| @@ -14,7 +14,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com> | ||||
|  | ||||
| --- a/drivers/net/dsa/mt7530.c | ||||
| +++ b/drivers/net/dsa/mt7530.c | ||||
| @@ -1000,9 +1000,6 @@ mt753x_cpu_port_enable(struct dsa_switch | ||||
| @@ -998,9 +998,6 @@ mt753x_cpu_port_enable(struct dsa_switch | ||||
|  	mt7530_write(priv, MT7530_PVC_P(port), | ||||
|  		     PORT_SPEC_TAG); | ||||
|   | ||||
| @@ -24,7 +24,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com> | ||||
|  	/* Set CPU port number */ | ||||
|  	if (priv->id == ID_MT7621) | ||||
|  		mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port)); | ||||
| @@ -1138,6 +1135,20 @@ mt7530_stp_state_set(struct dsa_switch * | ||||
| @@ -1131,6 +1128,20 @@ mt7530_stp_state_set(struct dsa_switch * | ||||
|  } | ||||
|   | ||||
|  static int | ||||
| @@ -45,7 +45,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com> | ||||
|  mt7530_port_bridge_join(struct dsa_switch *ds, int port, | ||||
|  			struct net_device *bridge) | ||||
|  { | ||||
| @@ -1357,6 +1368,63 @@ err: | ||||
| @@ -1331,6 +1342,63 @@ err: | ||||
|  } | ||||
|   | ||||
|  static int | ||||
| @@ -109,7 +109,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com> | ||||
|  mt7530_vlan_cmd(struct mt7530_priv *priv, enum mt7530_vlan_cmd cmd, u16 vid) | ||||
|  { | ||||
|  	struct mt7530_dummy_poll p; | ||||
| @@ -2794,11 +2862,15 @@ static const struct dsa_switch_ops mt753 | ||||
| @@ -2745,11 +2813,15 @@ static const struct dsa_switch_ops mt753 | ||||
|  	.port_change_mtu	= mt7530_port_change_mtu, | ||||
|  	.port_max_mtu		= mt7530_port_max_mtu, | ||||
|  	.port_stp_state_set	= mt7530_stp_state_set, | ||||
|   | ||||
| @@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  #include <linux/of_mdio.h> | ||||
|  #include <linux/of_net.h> | ||||
|  #include <linux/of_platform.h> | ||||
| @@ -602,18 +603,14 @@ mt7530_mib_reset(struct dsa_switch *ds) | ||||
| @@ -600,18 +601,14 @@ mt7530_mib_reset(struct dsa_switch *ds) | ||||
|  	mt7530_write(priv, MT7530_MIB_CCR, CCR_MIB_ACTIVATE); | ||||
|  } | ||||
|   | ||||
| @@ -48,7 +48,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	return mdiobus_write_nested(priv->bus, port, regnum, val); | ||||
|  } | ||||
|   | ||||
| @@ -791,9 +788,8 @@ out: | ||||
| @@ -789,9 +786,8 @@ out: | ||||
|  } | ||||
|   | ||||
|  static int | ||||
| @@ -59,7 +59,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	int devad; | ||||
|  	int ret; | ||||
|   | ||||
| @@ -809,10 +805,9 @@ mt7531_ind_phy_read(struct dsa_switch *d | ||||
| @@ -807,10 +803,9 @@ mt7531_ind_phy_read(struct dsa_switch *d | ||||
|  } | ||||
|   | ||||
|  static int | ||||
| @@ -71,7 +71,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	int devad; | ||||
|  	int ret; | ||||
|   | ||||
| @@ -828,6 +823,22 @@ mt7531_ind_phy_write(struct dsa_switch * | ||||
| @@ -826,6 +821,22 @@ mt7531_ind_phy_write(struct dsa_switch * | ||||
|  	return ret; | ||||
|  } | ||||
|   | ||||
| @@ -94,7 +94,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  static void | ||||
|  mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset, | ||||
|  		   uint8_t *data) | ||||
| @@ -1824,6 +1835,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr | ||||
| @@ -1793,6 +1804,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr | ||||
|  	return devm_gpiochip_add_data(dev, gc, priv); | ||||
|  } | ||||
|   | ||||
| @@ -305,7 +305,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  static int | ||||
|  mt7530_setup(struct dsa_switch *ds) | ||||
|  { | ||||
| @@ -2798,24 +3013,20 @@ static int | ||||
| @@ -2749,24 +2964,20 @@ static int | ||||
|  mt753x_setup(struct dsa_switch *ds) | ||||
|  { | ||||
|  	struct mt7530_priv *priv = ds->priv; | ||||
| @@ -340,7 +340,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  } | ||||
|   | ||||
|  static int mt753x_get_mac_eee(struct dsa_switch *ds, int port, | ||||
| @@ -2852,8 +3063,6 @@ static const struct dsa_switch_ops mt753 | ||||
| @@ -2803,8 +3014,6 @@ static const struct dsa_switch_ops mt753 | ||||
|  	.get_tag_protocol	= mtk_get_tag_protocol, | ||||
|  	.setup			= mt753x_setup, | ||||
|  	.get_strings		= mt7530_get_strings, | ||||
| @@ -349,7 +349,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	.get_ethtool_stats	= mt7530_get_ethtool_stats, | ||||
|  	.get_sset_count		= mt7530_get_sset_count, | ||||
|  	.set_ageing_time	= mt7530_set_ageing_time, | ||||
| @@ -3036,6 +3245,9 @@ mt7530_remove(struct mdio_device *mdiode | ||||
| @@ -2987,6 +3196,9 @@ mt7530_remove(struct mdio_device *mdiode | ||||
|  		dev_err(priv->dev, "Failed to disable io pwr: %d\n", | ||||
|  			ret); | ||||
|   | ||||
| @@ -369,7 +369,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  #define MT7530_CPU_PORT			6 | ||||
|  #define MT7530_NUM_FDB_RECORDS		2048 | ||||
|  #define MT7530_ALL_MEMBERS		0xff | ||||
| @@ -401,6 +402,12 @@ enum mt7531_sgmii_force_duplex { | ||||
| @@ -392,6 +393,12 @@ enum mt7531_sgmii_force_duplex { | ||||
|  #define  SYS_CTRL_SW_RST		BIT(1) | ||||
|  #define  SYS_CTRL_REG_RST		BIT(0) | ||||
|   | ||||
| @@ -382,7 +382,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  /* Register for PHY Indirect Access Control */ | ||||
|  #define MT7531_PHY_IAC			0x701C | ||||
|  #define  MT7531_PHY_ACS_ST		BIT(31) | ||||
| @@ -722,6 +729,8 @@ static const char *p5_intf_modes(unsigne | ||||
| @@ -713,6 +720,8 @@ static const char *p5_intf_modes(unsigne | ||||
|  	} | ||||
|  } | ||||
|   | ||||
| @@ -391,7 +391,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  /* struct mt753x_info -	This is the main data structure for holding the specific | ||||
|   *			part for each supported device | ||||
|   * @sw_setup:		Holding the handler to a device initialization | ||||
| @@ -746,8 +755,8 @@ struct mt753x_info { | ||||
| @@ -737,8 +746,8 @@ struct mt753x_info { | ||||
|  	enum mt753x_id id; | ||||
|   | ||||
|  	int (*sw_setup)(struct dsa_switch *ds); | ||||
| @@ -402,7 +402,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|  	int (*pad_setup)(struct dsa_switch *ds, phy_interface_t interface); | ||||
|  	int (*cpu_port_config)(struct dsa_switch *ds, int port); | ||||
|  	bool (*phy_mode_supported)(struct dsa_switch *ds, int port, | ||||
| @@ -781,6 +790,10 @@ struct mt753x_info { | ||||
| @@ -772,6 +781,10 @@ struct mt753x_info { | ||||
|   *			registers | ||||
|   * @p6_interface	Holding the current port 6 interface | ||||
|   * @p5_intf_sel:	Holding the current port 5 interface select | ||||
| @@ -413,7 +413,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | ||||
|   */ | ||||
|  struct mt7530_priv { | ||||
|  	struct device		*dev; | ||||
| @@ -802,6 +815,9 @@ struct mt7530_priv { | ||||
| @@ -793,6 +806,9 @@ struct mt7530_priv { | ||||
|  	struct mt7530_port	ports[MT7530_NUM_PORTS]; | ||||
|  	/* protect among processes for registers access*/ | ||||
|  	struct mutex reg_mutex; | ||||
|   | ||||
| @@ -21,7 +21,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -881,8 +881,13 @@ advk_pci_bridge_emul_pcie_conf_read(stru | ||||
| @@ -883,8 +883,13 @@ advk_pci_bridge_emul_pcie_conf_read(stru | ||||
|   | ||||
|  	case PCI_EXP_DEVCAP: | ||||
|  	case PCI_EXP_DEVCTL: | ||||
| @@ -35,7 +35,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  	default: | ||||
|  		return PCI_BRIDGE_EMUL_NOT_HANDLED; | ||||
|  	} | ||||
| @@ -896,10 +901,6 @@ advk_pci_bridge_emul_pcie_conf_write(str | ||||
| @@ -898,10 +903,6 @@ advk_pci_bridge_emul_pcie_conf_write(str | ||||
|  	struct advk_pcie *pcie = bridge->data; | ||||
|   | ||||
|  	switch (reg) { | ||||
| @@ -46,7 +46,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  	case PCI_EXP_LNKCTL: | ||||
|  		advk_writel(pcie, new, PCIE_CORE_PCIEXP_CAP + reg); | ||||
|  		if (new & PCI_EXP_LNKCTL_RL) | ||||
| @@ -921,6 +922,12 @@ advk_pci_bridge_emul_pcie_conf_write(str | ||||
| @@ -923,6 +924,12 @@ advk_pci_bridge_emul_pcie_conf_write(str | ||||
|  		advk_writel(pcie, new, PCIE_ISR0_REG); | ||||
|  		break; | ||||
|   | ||||
|   | ||||
| @@ -48,7 +48,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|   | ||||
|  	/* Enable summary interrupt for GIC SPI source */ | ||||
|  	reg = PCIE_IRQ_ALL_MASK & (~PCIE_IRQ_ENABLE_INTS_MASK); | ||||
| @@ -1399,7 +1401,7 @@ static void advk_pcie_handle_msi(struct | ||||
| @@ -1401,7 +1403,7 @@ static void advk_pcie_handle_msi(struct | ||||
|   | ||||
|  	msi_mask = advk_readl(pcie, PCIE_MSI_MASK_REG); | ||||
|  	msi_val = advk_readl(pcie, PCIE_MSI_STATUS_REG); | ||||
|   | ||||
| @@ -18,7 +18,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1698,11 +1698,13 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1700,11 +1700,13 @@ static int advk_pcie_remove(struct platf | ||||
|  	struct pci_host_bridge *bridge = pci_host_bridge_from_priv(pcie); | ||||
|  	int i; | ||||
|   | ||||
|   | ||||
| @@ -19,7 +19,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1696,6 +1696,7 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1698,6 +1698,7 @@ static int advk_pcie_remove(struct platf | ||||
|  { | ||||
|  	struct advk_pcie *pcie = platform_get_drvdata(pdev); | ||||
|  	struct pci_host_bridge *bridge = pci_host_bridge_from_priv(pcie); | ||||
| @@ -27,7 +27,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  	int i; | ||||
|   | ||||
|  	/* Remove PCI bus with all devices */ | ||||
| @@ -1704,6 +1705,11 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1706,6 +1707,11 @@ static int advk_pcie_remove(struct platf | ||||
|  	pci_remove_root_bus(bridge->bus); | ||||
|  	pci_unlock_rescan_remove(); | ||||
|   | ||||
|   | ||||
| @@ -18,7 +18,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1710,6 +1710,27 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1712,6 +1712,27 @@ static int advk_pcie_remove(struct platf | ||||
|  	val &= ~(PCI_COMMAND_IO | PCI_COMMAND_MEMORY | PCI_COMMAND_MASTER); | ||||
|  	advk_writel(pcie, val, PCIE_CORE_CMD_STATUS_REG); | ||||
|   | ||||
|   | ||||
| @@ -21,7 +21,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1735,6 +1735,9 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1737,6 +1737,9 @@ static int advk_pcie_remove(struct platf | ||||
|  	advk_pcie_remove_msi_irq_domain(pcie); | ||||
|  	advk_pcie_remove_irq_domain(pcie); | ||||
|   | ||||
|   | ||||
| @@ -20,7 +20,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1738,6 +1738,10 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1740,6 +1740,10 @@ static int advk_pcie_remove(struct platf | ||||
|  	/* Free config space for emulated root bridge */ | ||||
|  	pci_bridge_emul_cleanup(&pcie->bridge); | ||||
|   | ||||
|   | ||||
| @@ -20,7 +20,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1742,6 +1742,11 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1744,6 +1744,11 @@ static int advk_pcie_remove(struct platf | ||||
|  	if (pcie->reset_gpio) | ||||
|  		gpiod_set_value_cansleep(pcie->reset_gpio, 1); | ||||
|   | ||||
|   | ||||
| @@ -18,7 +18,7 @@ Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1751,6 +1751,9 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1753,6 +1753,9 @@ static int advk_pcie_remove(struct platf | ||||
|  	for (i = 0; i < OB_WIN_COUNT; i++) | ||||
|  		advk_pcie_disable_ob_win(pcie, i); | ||||
|   | ||||
|   | ||||
| @@ -72,7 +72,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| +MODULE_LICENSE("GPL"); | ||||
| --- a/kernel/sched/core.c | ||||
| +++ b/kernel/sched/core.c | ||||
| @@ -3065,6 +3065,7 @@ int wake_up_state(struct task_struct *p, | ||||
| @@ -3066,6 +3066,7 @@ int wake_up_state(struct task_struct *p, | ||||
|  { | ||||
|  	return try_to_wake_up(p, state, 0); | ||||
|  } | ||||
|   | ||||
| @@ -8,7 +8,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> | ||||
|  | ||||
| --- a/drivers/mtd/ubi/build.c | ||||
| +++ b/drivers/mtd/ubi/build.c | ||||
| @@ -1192,6 +1192,73 @@ static struct mtd_info * __init open_mtd | ||||
| @@ -1185,6 +1185,73 @@ static struct mtd_info * __init open_mtd | ||||
|  	return mtd; | ||||
|  } | ||||
|   | ||||
| @@ -82,7 +82,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> | ||||
|  static int __init ubi_init(void) | ||||
|  { | ||||
|  	int err, i, k; | ||||
| @@ -1275,6 +1342,12 @@ static int __init ubi_init(void) | ||||
| @@ -1268,6 +1335,12 @@ static int __init ubi_init(void) | ||||
|  		} | ||||
|  	} | ||||
|   | ||||
|   | ||||
| @@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
|   | ||||
|  		if (ret < 0) | ||||
|  			goto out; | ||||
| @@ -565,6 +571,17 @@ full_scan: | ||||
| @@ -567,6 +573,17 @@ full_scan: | ||||
|  			return err; | ||||
|  	} | ||||
|   | ||||
|   | ||||
| @@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
|  	/* | ||||
|  	 * Get the required data from the packet. | ||||
|  	 */ | ||||
| @@ -1130,7 +1136,7 @@ int nf_conntrack_tcp_packet(struct nf_co | ||||
| @@ -1139,7 +1145,7 @@ int nf_conntrack_tcp_packet(struct nf_co | ||||
|  		 IP_CT_TCP_FLAG_DATA_UNACKNOWLEDGED && | ||||
|  		 timeouts[new_state] > timeouts[TCP_CONNTRACK_UNACK]) | ||||
|  		timeout = timeouts[TCP_CONNTRACK_UNACK]; | ||||
|   | ||||
| @@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> | ||||
|  | ||||
| --- a/drivers/net/dsa/mv88e6xxx/chip.c | ||||
| +++ b/drivers/net/dsa/mv88e6xxx/chip.c | ||||
| @@ -5484,6 +5484,7 @@ static int mv88e6xxx_register_switch(str | ||||
| @@ -5485,6 +5485,7 @@ static int mv88e6xxx_register_switch(str | ||||
|  	ds->ops = &mv88e6xxx_switch_ops; | ||||
|  	ds->ageing_time_min = chip->info->age_time_coeff; | ||||
|  	ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX; | ||||
|   | ||||
| @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> | ||||
|  /* | ||||
|   * The Mellanox Tavor device gives false positive parity errors.  Mark this | ||||
|   * device with a broken_parity_status to allow PCI scanning code to "skip" | ||||
| @@ -3323,6 +3324,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I | ||||
| @@ -3335,6 +3336,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I | ||||
|  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata); | ||||
|  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata); | ||||
|   | ||||
| @@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> | ||||
|  /* | ||||
|   * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. | ||||
|   * To work around this, query the size it should be configured to by the | ||||
| @@ -3348,6 +3351,8 @@ static void quirk_intel_ntb(struct pci_d | ||||
| @@ -3360,6 +3363,8 @@ static void quirk_intel_ntb(struct pci_d | ||||
|  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb); | ||||
|  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb); | ||||
|   | ||||
| @@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> | ||||
|  /* | ||||
|   * Some BIOS implementations leave the Intel GPU interrupts enabled, even | ||||
|   * though no one is handling them (e.g., if the i915 driver is never | ||||
| @@ -3386,6 +3391,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN | ||||
| @@ -3398,6 +3403,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN | ||||
|  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq); | ||||
|  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq); | ||||
|   | ||||
|   | ||||
| @@ -29,7 +29,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  /* PIO registers base address and register offsets */ | ||||
|  #define PIO_BASE_ADDR				0x4000 | ||||
|  #define PIO_CTRL				(PIO_BASE_ADDR + 0x0) | ||||
| @@ -966,7 +962,7 @@ static int advk_sw_pci_bridge_init(struc | ||||
| @@ -968,7 +964,7 @@ static int advk_sw_pci_bridge_init(struc | ||||
|  	bridge->conf.pref_mem_limit = cpu_to_le16(PCI_PREF_RANGE_TYPE_64); | ||||
|   | ||||
|  	/* Support interrupt A for MSI feature */ | ||||
|   | ||||
| @@ -27,7 +27,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1393,7 +1393,7 @@ static void advk_pcie_remove_irq_domain( | ||||
| @@ -1395,7 +1395,7 @@ static void advk_pcie_remove_irq_domain( | ||||
|  static void advk_pcie_handle_msi(struct advk_pcie *pcie) | ||||
|  { | ||||
|  	u32 msi_val, msi_mask, msi_status, msi_idx; | ||||
| @@ -36,7 +36,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|   | ||||
|  	msi_mask = advk_readl(pcie, PCIE_MSI_MASK_REG); | ||||
|  	msi_val = advk_readl(pcie, PCIE_MSI_STATUS_REG); | ||||
| @@ -1403,13 +1403,12 @@ static void advk_pcie_handle_msi(struct | ||||
| @@ -1405,13 +1405,12 @@ static void advk_pcie_handle_msi(struct | ||||
|  		if (!(BIT(msi_idx) & msi_status)) | ||||
|  			continue; | ||||
|   | ||||
|   | ||||
| @@ -32,7 +32,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1189,7 +1189,7 @@ static void advk_msi_irq_compose_msi_msg | ||||
| @@ -1191,7 +1191,7 @@ static void advk_msi_irq_compose_msi_msg | ||||
|   | ||||
|  	msg->address_lo = lower_32_bits(msi_msg); | ||||
|  	msg->address_hi = upper_32_bits(msi_msg); | ||||
| @@ -41,7 +41,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  } | ||||
|   | ||||
|  static int advk_msi_set_affinity(struct irq_data *irq_data, | ||||
| @@ -1206,15 +1206,11 @@ static int advk_msi_irq_domain_alloc(str | ||||
| @@ -1208,15 +1208,11 @@ static int advk_msi_irq_domain_alloc(str | ||||
|  	int hwirq, i; | ||||
|   | ||||
|  	mutex_lock(&pcie->msi_used_lock); | ||||
| @@ -61,7 +61,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|   | ||||
|  	for (i = 0; i < nr_irqs; i++) | ||||
|  		irq_domain_set_info(domain, virq + i, hwirq + i, | ||||
| @@ -1232,7 +1228,7 @@ static void advk_msi_irq_domain_free(str | ||||
| @@ -1234,7 +1230,7 @@ static void advk_msi_irq_domain_free(str | ||||
|  	struct advk_pcie *pcie = domain->host_data; | ||||
|   | ||||
|  	mutex_lock(&pcie->msi_used_lock); | ||||
|   | ||||
| @@ -31,7 +31,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  	struct irq_domain *irq_domain; | ||||
|  	struct irq_chip irq_chip; | ||||
|  	raw_spinlock_t irq_lock; | ||||
| @@ -1442,21 +1443,26 @@ static void advk_pcie_handle_int(struct | ||||
| @@ -1444,21 +1445,26 @@ static void advk_pcie_handle_int(struct | ||||
|  	} | ||||
|  } | ||||
|   | ||||
| @@ -68,7 +68,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  } | ||||
|   | ||||
|  static void __maybe_unused advk_pcie_disable_phy(struct advk_pcie *pcie) | ||||
| @@ -1523,7 +1529,7 @@ static int advk_pcie_probe(struct platfo | ||||
| @@ -1525,7 +1531,7 @@ static int advk_pcie_probe(struct platfo | ||||
|  	struct advk_pcie *pcie; | ||||
|  	struct pci_host_bridge *bridge; | ||||
|  	struct resource_entry *entry; | ||||
| @@ -77,7 +77,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|   | ||||
|  	bridge = devm_pci_alloc_host_bridge(dev, sizeof(struct advk_pcie)); | ||||
|  	if (!bridge) | ||||
| @@ -1611,17 +1617,9 @@ static int advk_pcie_probe(struct platfo | ||||
| @@ -1613,17 +1619,9 @@ static int advk_pcie_probe(struct platfo | ||||
|  	if (IS_ERR(pcie->base)) | ||||
|  		return PTR_ERR(pcie->base); | ||||
|   | ||||
| @@ -98,7 +98,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|   | ||||
|  	pcie->reset_gpio = devm_gpiod_get_from_of_node(dev, dev->of_node, | ||||
|  						       "reset-gpios", 0, | ||||
| @@ -1670,11 +1668,14 @@ static int advk_pcie_probe(struct platfo | ||||
| @@ -1672,11 +1670,14 @@ static int advk_pcie_probe(struct platfo | ||||
|  		return ret; | ||||
|  	} | ||||
|   | ||||
| @@ -113,7 +113,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  		advk_pcie_remove_msi_irq_domain(pcie); | ||||
|  		advk_pcie_remove_irq_domain(pcie); | ||||
|  		return ret; | ||||
| @@ -1722,6 +1723,9 @@ static int advk_pcie_remove(struct platf | ||||
| @@ -1724,6 +1725,9 @@ static int advk_pcie_remove(struct platf | ||||
|  	advk_writel(pcie, PCIE_ISR1_ALL_MASK, PCIE_ISR1_REG); | ||||
|  	advk_writel(pcie, PCIE_IRQ_ALL_MASK, HOST_CTRL_INT_STATUS_REG); | ||||
|   | ||||
|   | ||||
| @@ -18,7 +18,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1439,7 +1439,9 @@ static void advk_pcie_handle_int(struct | ||||
| @@ -1441,7 +1441,9 @@ static void advk_pcie_handle_int(struct | ||||
|  			    PCIE_ISR1_REG); | ||||
|   | ||||
|  		virq = irq_find_mapping(pcie->irq_domain, i); | ||||
|   | ||||
| @@ -34,7 +34,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  	struct msi_domain_info msi_domain_info; | ||||
|  	DECLARE_BITMAP(msi_used, MSI_IRQ_NUM); | ||||
|  	struct mutex msi_used_lock; | ||||
| @@ -1199,6 +1197,12 @@ static int advk_msi_set_affinity(struct | ||||
| @@ -1201,6 +1199,12 @@ static int advk_msi_set_affinity(struct | ||||
|  	return -EINVAL; | ||||
|  } | ||||
|   | ||||
| @@ -47,7 +47,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  static int advk_msi_irq_domain_alloc(struct irq_domain *domain, | ||||
|  				     unsigned int virq, | ||||
|  				     unsigned int nr_irqs, void *args) | ||||
| @@ -1215,7 +1219,7 @@ static int advk_msi_irq_domain_alloc(str | ||||
| @@ -1217,7 +1221,7 @@ static int advk_msi_irq_domain_alloc(str | ||||
|   | ||||
|  	for (i = 0; i < nr_irqs; i++) | ||||
|  		irq_domain_set_info(domain, virq + i, hwirq + i, | ||||
| @@ -56,7 +56,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  				    domain->host_data, handle_simple_irq, | ||||
|  				    NULL, NULL); | ||||
|   | ||||
| @@ -1285,29 +1289,23 @@ static const struct irq_domain_ops advk_ | ||||
| @@ -1287,29 +1291,23 @@ static const struct irq_domain_ops advk_ | ||||
|  	.xlate = irq_domain_xlate_onecell, | ||||
|  }; | ||||
|   | ||||
|   | ||||
| @@ -25,7 +25,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  	DECLARE_BITMAP(msi_used, MSI_IRQ_NUM); | ||||
|  	struct mutex msi_used_lock; | ||||
|  	u16 msi_msg; | ||||
| @@ -1293,20 +1292,20 @@ static struct irq_chip advk_msi_irq_chip | ||||
| @@ -1295,20 +1294,20 @@ static struct irq_chip advk_msi_irq_chip | ||||
|  	.name = "advk-MSI", | ||||
|  }; | ||||
|   | ||||
| @@ -52,7 +52,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  	msi_msg_phys = virt_to_phys(&pcie->msi_msg); | ||||
|   | ||||
|  	advk_writel(pcie, lower_32_bits(msi_msg_phys), | ||||
| @@ -1322,7 +1321,8 @@ static int advk_pcie_init_msi_irq_domain | ||||
| @@ -1324,7 +1323,8 @@ static int advk_pcie_init_msi_irq_domain | ||||
|   | ||||
|  	pcie->msi_domain = | ||||
|  		pci_msi_create_irq_domain(of_node_to_fwnode(node), | ||||
|   | ||||
| @@ -21,7 +21,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1301,7 +1301,6 @@ static struct msi_domain_info advk_msi_d | ||||
| @@ -1303,7 +1303,6 @@ static struct msi_domain_info advk_msi_d | ||||
|  static int advk_pcie_init_msi_irq_domain(struct advk_pcie *pcie) | ||||
|  { | ||||
|  	struct device *dev = &pcie->pdev->dev; | ||||
| @@ -29,7 +29,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  	phys_addr_t msi_msg_phys; | ||||
|   | ||||
|  	mutex_init(&pcie->msi_used_lock); | ||||
| @@ -1320,7 +1319,7 @@ static int advk_pcie_init_msi_irq_domain | ||||
| @@ -1322,7 +1321,7 @@ static int advk_pcie_init_msi_irq_domain | ||||
|  		return -ENOMEM; | ||||
|   | ||||
|  	pcie->msi_domain = | ||||
|   | ||||
| @@ -43,7 +43,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|   | ||||
|  	/* Unmask summary MSI interrupt */ | ||||
|  	reg = advk_readl(pcie, PCIE_ISR0_MASK_REG); | ||||
| @@ -1198,10 +1197,52 @@ static int advk_msi_set_affinity(struct | ||||
| @@ -1200,10 +1199,52 @@ static int advk_msi_set_affinity(struct | ||||
|  	return -EINVAL; | ||||
|  } | ||||
|   | ||||
| @@ -96,7 +96,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  }; | ||||
|   | ||||
|  static int advk_msi_irq_domain_alloc(struct irq_domain *domain, | ||||
| @@ -1291,7 +1332,9 @@ static const struct irq_domain_ops advk_ | ||||
| @@ -1293,7 +1334,9 @@ static const struct irq_domain_ops advk_ | ||||
|  }; | ||||
|   | ||||
|  static struct irq_chip advk_msi_irq_chip = { | ||||
| @@ -107,7 +107,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  }; | ||||
|   | ||||
|  static struct msi_domain_info advk_msi_domain_info = { | ||||
| @@ -1305,6 +1348,7 @@ static int advk_pcie_init_msi_irq_domain | ||||
| @@ -1307,6 +1350,7 @@ static int advk_pcie_init_msi_irq_domain | ||||
|  	struct device *dev = &pcie->pdev->dev; | ||||
|  	phys_addr_t msi_msg_phys; | ||||
|   | ||||
|   | ||||
| @@ -56,7 +56,7 @@ Cc: stable@vger.kernel.org # f21a8b1b6837 ("PCI: aardvark: Move to MSI handling | ||||
|  	/* Enable MSI */ | ||||
|  	reg = advk_readl(pcie, PCIE_CORE_CTRL2_REG); | ||||
|  	reg |= PCIE_CORE_CTRL2_MSI_ENABLE; | ||||
| @@ -1184,10 +1189,10 @@ static void advk_msi_irq_compose_msi_msg | ||||
| @@ -1186,10 +1191,10 @@ static void advk_msi_irq_compose_msi_msg | ||||
|  					 struct msi_msg *msg) | ||||
|  { | ||||
|  	struct advk_pcie *pcie = irq_data_get_irq_chip_data(data); | ||||
| @@ -70,7 +70,7 @@ Cc: stable@vger.kernel.org # f21a8b1b6837 ("PCI: aardvark: Move to MSI handling | ||||
|  	msg->data = data->hwirq; | ||||
|  } | ||||
|   | ||||
| @@ -1346,18 +1351,10 @@ static struct msi_domain_info advk_msi_d | ||||
| @@ -1348,18 +1353,10 @@ static struct msi_domain_info advk_msi_d | ||||
|  static int advk_pcie_init_msi_irq_domain(struct advk_pcie *pcie) | ||||
|  { | ||||
|  	struct device *dev = &pcie->pdev->dev; | ||||
|   | ||||
| @@ -27,7 +27,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -1344,7 +1344,7 @@ static struct irq_chip advk_msi_irq_chip | ||||
| @@ -1346,7 +1346,7 @@ static struct irq_chip advk_msi_irq_chip | ||||
|   | ||||
|  static struct msi_domain_info advk_msi_domain_info = { | ||||
|  	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS | | ||||
|   | ||||
| @@ -78,7 +78,7 @@ Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
|  		if (mask & (PCI_BRIDGE_CTL_BUS_RESET << 16)) { | ||||
|  			u32 val = advk_readl(pcie, PCIE_CORE_CTRL1_REG); | ||||
|  			if (new & (PCI_BRIDGE_CTL_BUS_RESET << 16)) | ||||
| @@ -1466,6 +1487,19 @@ static void advk_pcie_handle_int(struct | ||||
| @@ -1468,6 +1489,19 @@ static void advk_pcie_handle_int(struct | ||||
|  	isr1_mask = advk_readl(pcie, PCIE_ISR1_MASK_REG); | ||||
|  	isr1_status = isr1_val & ((~isr1_mask) & PCIE_ISR1_ALL_MASK); | ||||
|   | ||||
|   | ||||
| @@ -1,44 +0,0 @@ | ||||
| From 5f354992eeef9a51c67796dc9f7f578d3584baa2 Mon Sep 17 00:00:00 2001 | ||||
| From: =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali@kernel.org> | ||||
| Date: Wed, 8 Dec 2021 05:57:54 +0100 | ||||
| Subject: [PATCH] PCI: aardvark: Fix reading PCI_EXP_RTSTA_PME bit on emulated | ||||
|  bridge | ||||
| MIME-Version: 1.0 | ||||
| Content-Type: text/plain; charset=UTF-8 | ||||
| Content-Transfer-Encoding: 8bit | ||||
|  | ||||
| The emulated bridge returns incorrect value for PCI_EXP_RTSTA register | ||||
| during readout in advk_pci_bridge_emul_pcie_conf_read() function: the | ||||
| correct bit is BIT(16), but we are setting BIT(23), because the code | ||||
| does | ||||
|   *value = (isr0 & PCIE_MSG_PM_PME_MASK) << 16 | ||||
| where | ||||
|   PCIE_MSG_PM_PME_MASK | ||||
| is | ||||
|   BIT(7). | ||||
|  | ||||
| The code should probably have been something like | ||||
|   *value = (!!(isr0 & PCIE_MSG_PM_PME_MASK)) << 16, | ||||
| but we are better of using an if() and using the proper macro for this | ||||
| bit. | ||||
|  | ||||
| Fixes: 8a3ebd8de328 ("PCI: aardvark: Implement emulated root PCI bridge config space") | ||||
| Signed-off-by: Pali Rohár <pali@kernel.org> | ||||
| Signed-off-by: Marek Behún <kabel@kernel.org> | ||||
| --- | ||||
|  drivers/pci/controller/pci-aardvark.c | 4 +++- | ||||
|  1 file changed, 3 insertions(+), 1 deletion(-) | ||||
|  | ||||
| --- a/drivers/pci/controller/pci-aardvark.c | ||||
| +++ b/drivers/pci/controller/pci-aardvark.c | ||||
| @@ -874,7 +874,9 @@ advk_pci_bridge_emul_pcie_conf_read(stru | ||||
|  	case PCI_EXP_RTSTA: { | ||||
|  		u32 isr0 = advk_readl(pcie, PCIE_ISR0_REG); | ||||
|  		u32 msglog = advk_readl(pcie, PCIE_MSG_LOG_REG); | ||||
| -		*value = (isr0 & PCIE_MSG_PM_PME_MASK) << 16 | (msglog >> 16); | ||||
| +		*value = msglog >> 16; | ||||
| +		if (isr0 & PCIE_MSG_PM_PME_MASK) | ||||
| +			*value |= PCI_EXP_RTSTA_PME; | ||||
|  		return PCI_BRIDGE_EMUL_HANDLED; | ||||
|  	} | ||||
|   | ||||
| @@ -17,7 +17,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| @@ -605,5 +605,79 @@ | ||||
| @@ -606,5 +606,79 @@ | ||||
|  				reg = <4>; | ||||
|  			}; | ||||
|  		}; | ||||
|   | ||||
| @@ -15,7 +15,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| @@ -190,7 +190,7 @@ | ||||
| @@ -191,7 +191,7 @@ | ||||
|  			reg = <0x1800000 0x60000>; | ||||
|  		}; | ||||
|   | ||||
| @@ -24,7 +24,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> | ||||
|  			compatible = "qcom,prng"; | ||||
|  			reg = <0x22000 0x140>; | ||||
|  			clocks = <&gcc GCC_PRNG_AHB_CLK>; | ||||
| @@ -300,7 +300,7 @@ | ||||
| @@ -301,7 +301,7 @@ | ||||
|  			status = "disabled"; | ||||
|  		}; | ||||
|   | ||||
| @@ -33,7 +33,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> | ||||
|  			compatible = "qcom,crypto-v5.1"; | ||||
|  			reg = <0x08e3a000 0x6000>; | ||||
|  			clocks = <&gcc GCC_CRYPTO_AHB_CLK>, | ||||
| @@ -386,7 +386,7 @@ | ||||
| @@ -387,7 +387,7 @@ | ||||
|  			dma-names = "rx", "tx"; | ||||
|  		}; | ||||
|   | ||||
|   | ||||
| @@ -16,7 +16,7 @@ Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| @@ -209,6 +209,16 @@ | ||||
| @@ -210,6 +210,16 @@ | ||||
|  			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; | ||||
|  		}; | ||||
|   | ||||
|   | ||||
| @@ -1,26 +0,0 @@ | ||||
| From a63c7162a1dae9f1185897641dc3e47e295563d6 Mon Sep 17 00:00:00 2001 | ||||
| From: Pavel Kubelun <be.dissent@gmail.com> | ||||
| Date: Mon, 6 May 2019 20:55:16 +0300 | ||||
| Subject: [PATCH] ARM: dts: qcom: ipq4019: fix sleep clock | ||||
|  | ||||
| It seems like sleep_clk was copied from ipq806x. | ||||
| Fix ipq40xx sleep_clk to the value QSDK defines. | ||||
|  | ||||
| Link: https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?id=d92ec59973484acc86dd24b67f10f8911b4b4b7d | ||||
| Link: https://patchwork.kernel.org/comment/22721613/ | ||||
| Suggested-by: Bjorn Andersson <bjorn.andersson@linaro.org> [clock-output-names] | ||||
| Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> | ||||
| Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [just fixed the value] | ||||
| --- | ||||
| --- a/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| +++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi | ||||
| @@ -142,7 +142,8 @@ | ||||
|  	clocks { | ||||
|  		sleep_clk: sleep_clk { | ||||
|  			compatible = "fixed-clock"; | ||||
| -			clock-frequency = <32768>; | ||||
| +			clock-frequency = <32000>; | ||||
| +			clock-output-names = "gcc_sleep_clk_src"; | ||||
|  			#clock-cells = <0>; | ||||
|  		}; | ||||
|   | ||||
| @@ -21,7 +21,7 @@ | ||||
|  static void qcom_scm_set_download_mode(bool enable) | ||||
|  { | ||||
|  	bool avail; | ||||
| @@ -1256,6 +1270,13 @@ static int qcom_scm_probe(struct platfor | ||||
| @@ -1250,6 +1264,13 @@ static int qcom_scm_probe(struct platfor | ||||
|  	if (download_mode) | ||||
|  		qcom_scm_set_download_mode(true); | ||||
|   | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| --- a/drivers/firmware/qcom_scm.c | ||||
| +++ b/drivers/firmware/qcom_scm.c | ||||
| @@ -1275,6 +1275,7 @@ static const struct of_device_id qcom_sc | ||||
| @@ -1269,6 +1269,7 @@ static const struct of_device_id qcom_sc | ||||
|  							     SCM_HAS_BUS_CLK) | ||||
|  	}, | ||||
|  	{ .compatible = "qcom,scm-ipq4019" }, | ||||
|   | ||||
| @@ -5481,7 +5481,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> | ||||
|  	  (transaction layer end-to-end CRC checking). | ||||
| --- a/include/linux/pci.h | ||||
| +++ b/include/linux/pci.h | ||||
| @@ -1419,6 +1419,8 @@ void pci_walk_bus(struct pci_bus *top, i | ||||
| @@ -1420,6 +1420,8 @@ void pci_walk_bus(struct pci_bus *top, i | ||||
|  		  void *userdata); | ||||
|  int pci_cfg_space_size(struct pci_dev *dev); | ||||
|  unsigned char pci_bus_max_busnr(struct pci_bus *bus); | ||||
|   | ||||
| @@ -19,7 +19,7 @@ | ||||
|  	}, | ||||
|  	[PORT_NPCM] = { | ||||
|  		.name		= "Nuvoton 16550", | ||||
| @@ -2725,6 +2725,11 @@ serial8250_do_set_termios(struct uart_po | ||||
| @@ -2735,6 +2735,11 @@ serial8250_do_set_termios(struct uart_po | ||||
|  	unsigned long flags; | ||||
|  	unsigned int baud, quot, frac = 0; | ||||
|   | ||||
|   | ||||
| @@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com> | ||||
|  #include <linux/platform_data/x86/apple.h> | ||||
|  #include <linux/pm_runtime.h> | ||||
|  #include <linux/suspend.h> | ||||
| @@ -5772,3 +5773,34 @@ static void nvidia_ion_ahci_fixup(struct | ||||
| @@ -5784,3 +5785,34 @@ static void nvidia_ion_ahci_fixup(struct | ||||
|  	pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING; | ||||
|  } | ||||
|  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user