[ANNOUNCE] v6.15-rt2

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
diff --git a/patches/0001-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch b/patches/0001-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
index 344218d..6b9dd26d1 100644
--- a/patches/0001-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
+++ b/patches/0001-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
@@ -33,7 +33,7 @@
 
 --- a/drivers/gpu/drm/i915/display/intel_vblank.c
 +++ b/drivers/gpu/drm/i915/display/intel_vblank.c
-@@ -309,6 +309,20 @@ static void intel_vblank_section_exit(st
+@@ -311,6 +311,20 @@ static void intel_vblank_section_exit(st
  	struct drm_i915_private *i915 = to_i915(display->drm);
  	spin_unlock(&i915->uncore.lock);
  }
@@ -54,7 +54,7 @@
  #else
  static void intel_vblank_section_enter(struct intel_display *display)
  {
-@@ -317,6 +331,17 @@ static void intel_vblank_section_enter(s
+@@ -319,6 +333,17 @@ static void intel_vblank_section_enter(s
  static void intel_vblank_section_exit(struct intel_display *display)
  {
  }
@@ -72,7 +72,7 @@
  #endif
  
  static bool i915_get_crtc_scanoutpos(struct drm_crtc *_crtc,
-@@ -353,10 +378,10 @@ static bool i915_get_crtc_scanoutpos(str
+@@ -355,10 +380,10 @@ static bool i915_get_crtc_scanoutpos(str
  	 * timing critical raw register reads, potentially with
  	 * preemption disabled, so the following code must not block.
  	 */
@@ -86,7 +86,7 @@
  
  	/* Get optional system timestamp before query. */
  	if (stime)
-@@ -420,10 +445,10 @@ static bool i915_get_crtc_scanoutpos(str
+@@ -422,10 +447,10 @@ static bool i915_get_crtc_scanoutpos(str
  	if (etime)
  		*etime = ktime_get();
  
@@ -100,7 +100,7 @@
  
  	/*
  	 * While in vblank, position will be negative
-@@ -461,13 +486,11 @@ int intel_get_crtc_scanline(struct intel
+@@ -463,13 +488,11 @@ int intel_get_crtc_scanline(struct intel
  	unsigned long irqflags;
  	int position;
  
diff --git a/patches/0002-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch b/patches/0002-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
index 0b3a286..43a00cd 100644
--- a/patches/0002-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
+++ b/patches/0002-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
@@ -100,7 +100,7 @@
  
 --- a/drivers/gpu/drm/i915/display/intel_vblank.c
 +++ b/drivers/gpu/drm/i915/display/intel_vblank.c
-@@ -750,11 +750,13 @@ int intel_vblank_evade(struct intel_vbla
+@@ -752,11 +752,13 @@ int intel_vblank_evade(struct intel_vbla
  			break;
  		}
  
diff --git a/patches/0004-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch b/patches/0004-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
index 7370552..55d48b6 100644
--- a/patches/0004-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
+++ b/patches/0004-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
@@ -34,7 +34,7 @@
 
 --- a/drivers/gpu/drm/i915/display/intel_display_trace.h
 +++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
-@@ -9,6 +9,10 @@
+@@ -13,6 +13,10 @@
  #if !defined(__INTEL_DISPLAY_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
  #define __INTEL_DISPLAY_TRACE_H__
  
diff --git a/patches/0006-drm-i915-Drop-the-irqs_disabled-check.patch b/patches/0006-drm-i915-Drop-the-irqs_disabled-check.patch
index b7d7128..0c2018e 100644
--- a/patches/0006-drm-i915-Drop-the-irqs_disabled-check.patch
+++ b/patches/0006-drm-i915-Drop-the-irqs_disabled-check.patch
@@ -21,7 +21,7 @@
 
 --- a/drivers/gpu/drm/i915/i915_request.c
 +++ b/drivers/gpu/drm/i915/i915_request.c
-@@ -609,7 +609,6 @@ bool __i915_request_submit(struct i915_r
+@@ -608,7 +608,6 @@ bool __i915_request_submit(struct i915_r
  
  	RQ_TRACE(request, "\n");
  
@@ -29,7 +29,7 @@
  	lockdep_assert_held(&engine->sched_engine->lock);
  
  	/*
-@@ -718,7 +717,6 @@ void __i915_request_unsubmit(struct i915
+@@ -717,7 +716,6 @@ void __i915_request_unsubmit(struct i915
  	 */
  	RQ_TRACE(request, "\n");
  
diff --git a/patches/Add_localversion_for_-RT_release.patch b/patches/Add_localversion_for_-RT_release.patch
index 0e6dbb0..d960d51 100644
--- a/patches/Add_localversion_for_-RT_release.patch
+++ b/patches/Add_localversion_for_-RT_release.patch
@@ -15,4 +15,4 @@
 --- /dev/null
 +++ b/localversion-rt
 @@ -0,0 +1 @@
-+-rt1
++-rt2
diff --git a/patches/POWERPC__Allow_to_enable_RT.patch b/patches/POWERPC__Allow_to_enable_RT.patch
index 15e0fb5..afe3c6d 100644
--- a/patches/POWERPC__Allow_to_enable_RT.patch
+++ b/patches/POWERPC__Allow_to_enable_RT.patch
@@ -16,7 +16,7 @@
 ---
 --- a/arch/powerpc/Kconfig
 +++ b/arch/powerpc/Kconfig
-@@ -171,6 +171,7 @@ config PPC
+@@ -173,6 +173,7 @@ config PPC
  	select ARCH_STACKWALK
  	select ARCH_SUPPORTS_ATOMIC_RMW
  	select ARCH_SUPPORTS_DEBUG_PAGEALLOC	if PPC_BOOK3S || PPC_8xx
@@ -24,7 +24,7 @@
  	select ARCH_USE_BUILTIN_BSWAP
  	select ARCH_USE_CMPXCHG_LOCKREF		if PPC64
  	select ARCH_USE_MEMTEST
-@@ -275,6 +276,7 @@ config PPC
+@@ -277,6 +278,7 @@ config PPC
  	select HAVE_PERF_EVENTS_NMI		if PPC64
  	select HAVE_PERF_REGS
  	select HAVE_PERF_USER_STACK_DUMP
diff --git a/patches/Reapply-serial-8250-Revert-drop-lockdep-annotation-f.patch b/patches/Reapply-serial-8250-Revert-drop-lockdep-annotation-f.patch
index 800fdad..446c167 100644
--- a/patches/Reapply-serial-8250-Revert-drop-lockdep-annotation-f.patch
+++ b/patches/Reapply-serial-8250-Revert-drop-lockdep-annotation-f.patch
@@ -12,7 +12,7 @@
 
 --- a/drivers/tty/serial/8250/8250_port.c
 +++ b/drivers/tty/serial/8250/8250_port.c
-@@ -726,6 +726,9 @@ static void __serial8250_clear_IER(struc
+@@ -724,6 +724,9 @@ static void __serial8250_clear_IER(struc
  
  static inline void serial8250_clear_IER(struct uart_8250_port *up)
  {
diff --git a/patches/Reapply-serial-8250-Switch-to-nbcon-console.patch b/patches/Reapply-serial-8250-Switch-to-nbcon-console.patch
index 46e1799a..6644d22 100644
--- a/patches/Reapply-serial-8250-Switch-to-nbcon-console.patch
+++ b/patches/Reapply-serial-8250-Switch-to-nbcon-console.patch
@@ -71,7 +71,7 @@
  };
 --- a/drivers/tty/serial/8250/8250_port.c
 +++ b/drivers/tty/serial/8250/8250_port.c
-@@ -711,7 +711,12 @@ static void serial8250_set_sleep(struct
+@@ -709,7 +709,12 @@ static void serial8250_set_sleep(struct
  	serial8250_rpm_put(p);
  }
  
@@ -85,7 +85,7 @@
  {
  	if (up->capabilities & UART_CAP_UUE)
  		serial_out(up, UART_IER, UART_IER_UUE);
-@@ -719,6 +724,11 @@ static void serial8250_clear_IER(struct
+@@ -717,6 +722,11 @@ static void serial8250_clear_IER(struct
  		serial_out(up, UART_IER, 0);
  }
  
@@ -97,7 +97,7 @@
  #ifdef CONFIG_SERIAL_8250_RSA
  /*
   * Attempts to turn on the RSA FIFO.  Returns zero on failure.
-@@ -1406,9 +1416,6 @@ void serial8250_em485_stop_tx(struct uar
+@@ -1404,9 +1414,6 @@ void serial8250_em485_stop_tx(struct uar
  {
  	unsigned char mcr = serial8250_in_MCR(p);
  
@@ -107,7 +107,7 @@
  	if (p->port.rs485.flags & SER_RS485_RTS_AFTER_SEND)
  		mcr |= UART_MCR_RTS;
  	else
-@@ -1424,6 +1431,16 @@ void serial8250_em485_stop_tx(struct uar
+@@ -1422,6 +1429,16 @@ void serial8250_em485_stop_tx(struct uar
  		serial8250_clear_and_reinit_fifos(p);
  
  		if (toggle_ier) {
@@ -124,7 +124,7 @@
  			p->ier |= UART_IER_RLSI | UART_IER_RDI;
  			serial_port_out(&p->port, UART_IER, p->ier);
  		}
-@@ -3312,7 +3329,11 @@ EXPORT_SYMBOL_GPL(serial8250_set_default
+@@ -3303,7 +3320,11 @@ EXPORT_SYMBOL_GPL(serial8250_set_default
  
  static void serial8250_console_putchar(struct uart_port *port, unsigned char ch)
  {
@@ -136,7 +136,7 @@
  }
  
  static void serial8250_console_wait_putchar(struct uart_port *port, unsigned char ch)
-@@ -3349,11 +3370,22 @@ static void serial8250_console_restore(s
+@@ -3340,11 +3361,22 @@ static void serial8250_console_restore(s
  	serial8250_out_MCR(up, up->mcr | UART_MCR_DTR | UART_MCR_RTS);
  }
  
@@ -160,7 +160,7 @@
  		if (wait_for_lsr(up, UART_LSR_THRE))
  			return;
  	}
-@@ -3366,20 +3398,29 @@ static void fifo_wait_for_lsr(struct uar
+@@ -3357,20 +3389,29 @@ static void fifo_wait_for_lsr(struct uar
   * to get empty.
   */
  static void serial8250_console_fifo_write(struct uart_8250_port *up,
@@ -193,7 +193,7 @@
  			if (*s == '\n' && !cr_sent) {
  				serial8250_console_putchar(port, '\r');
  				cr_sent = true;
-@@ -3387,6 +3428,8 @@ static void serial8250_console_fifo_writ
+@@ -3378,6 +3419,8 @@ static void serial8250_console_fifo_writ
  				serial8250_console_putchar(port, *s++);
  				cr_sent = false;
  			}
@@ -202,7 +202,7 @@
  		}
  		tx_count = i;
  	}
-@@ -3395,39 +3438,57 @@ static void serial8250_console_fifo_writ
+@@ -3386,39 +3429,57 @@ static void serial8250_console_fifo_writ
  	 * Allow timeout for each byte written since the caller will only wait
  	 * for UART_LSR_BOTH_EMPTY using the timeout of a single character
  	 */
@@ -280,7 +280,7 @@
  
  	/* check scratch reg to see if port powered off during system sleep */
  	if (up->canary && (up->canary != serial_port_in(port, UART_SCR))) {
-@@ -3441,6 +3502,18 @@ void serial8250_console_write(struct uar
+@@ -3432,6 +3493,18 @@ void serial8250_console_write(struct uar
  		mdelay(port->rs485.delay_rts_before_send);
  	}
  
@@ -299,7 +299,7 @@
  	use_fifo = (up->capabilities & UART_CAP_FIFO) &&
  		/*
  		 * BCM283x requires to check the fifo
-@@ -3461,10 +3534,23 @@ void serial8250_console_write(struct uar
+@@ -3452,10 +3525,23 @@ void serial8250_console_write(struct uar
  		 */
  		!(up->port.flags & UPF_CONS_FLOW);
  
@@ -325,7 +325,7 @@
  
  	/*
  	 *	Finally, wait for transmitter to become empty
-@@ -3487,11 +3573,18 @@ void serial8250_console_write(struct uar
+@@ -3478,11 +3564,18 @@ void serial8250_console_write(struct uar
  	 *	call it if we have saved something in the saved flags
  	 *	while processing with interrupts off.
  	 */
@@ -348,7 +348,7 @@
  }
  
  static unsigned int probe_baud(struct uart_port *port)
-@@ -3509,8 +3602,24 @@ static unsigned int probe_baud(struct ua
+@@ -3500,8 +3593,24 @@ static unsigned int probe_baud(struct ua
  	return (port->uartclk / 16) / quot;
  }
  
@@ -373,7 +373,7 @@
  	int baud = 9600;
  	int bits = 8;
  	int parity = 'n';
-@@ -3520,6 +3629,9 @@ int serial8250_console_setup(struct uart
+@@ -3511,6 +3620,9 @@ int serial8250_console_setup(struct uart
  	if (!port->iobase && !port->membase)
  		return -ENODEV;
  
diff --git a/patches/powerpc_pseries_iommu__Use_a_locallock_instead_local_irq_save.patch b/patches/powerpc_pseries_iommu__Use_a_locallock_instead_local_irq_save.patch
index 55d1fdd..561c242 100644
--- a/patches/powerpc_pseries_iommu__Use_a_locallock_instead_local_irq_save.patch
+++ b/patches/powerpc_pseries_iommu__Use_a_locallock_instead_local_irq_save.patch
@@ -29,7 +29,7 @@
  #include <asm/io.h>
  #include <asm/prom.h>
  #include <asm/rtas.h>
-@@ -244,7 +245,13 @@ static int tce_build_pSeriesLP(unsigned
+@@ -245,7 +246,13 @@ static int tce_build_pSeriesLP(unsigned
  	return ret;
  }
  
@@ -44,7 +44,7 @@
  
  static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum,
  				     long npages, unsigned long uaddr,
-@@ -267,9 +274,10 @@ static int tce_buildmulti_pSeriesLP(stru
+@@ -268,9 +275,10 @@ static int tce_buildmulti_pSeriesLP(stru
  		                           direction, attrs);
  	}
  
@@ -57,7 +57,7 @@
  
  	/* This is safe to do since interrupts are off when we're called
  	 * from iommu_alloc{,_sg}()
-@@ -278,12 +286,12 @@ static int tce_buildmulti_pSeriesLP(stru
+@@ -279,12 +287,12 @@ static int tce_buildmulti_pSeriesLP(stru
  		tcep = (__be64 *)__get_free_page(GFP_ATOMIC);
  		/* If allocation fails, fall back to the loop implementation */
  		if (!tcep) {
@@ -72,7 +72,7 @@
  	}
  
  	rpn = __pa(uaddr) >> tceshift;
-@@ -313,7 +321,7 @@ static int tce_buildmulti_pSeriesLP(stru
+@@ -314,7 +322,7 @@ static int tce_buildmulti_pSeriesLP(stru
  		tcenum += limit;
  	} while (npages > 0 && !rc);
  
@@ -81,7 +81,7 @@
  
  	if (unlikely(rc == H_NOT_ENOUGH_RESOURCES)) {
  		ret = (int)rc;
-@@ -497,16 +505,17 @@ static int tce_setrange_multi_pSeriesLP(
+@@ -498,16 +506,17 @@ static int tce_setrange_multi_pSeriesLP(
  				DMA_BIDIRECTIONAL, 0);
  	}
  
@@ -103,7 +103,7 @@
  	}
  
  	proto_tce = TCE_PCI_READ | TCE_PCI_WRITE;
-@@ -549,7 +558,7 @@ static int tce_setrange_multi_pSeriesLP(
+@@ -550,7 +559,7 @@ static int tce_setrange_multi_pSeriesLP(
  
  	/* error cleanup: caller will clear whole range */