+++ /dev/null
-From: Shiji Yang <yangshiji66@outlook.com>
-Date: Thu, 1 May 2025 01:59:06 +0800
-Subject: [PATCH] irqchip/ath79-misc: fix missing prototypes warnings
-
-ath79_misc_irq_init() was defined but unused since commit
-51fa4f8912c0 ("MIPS: ath79: drop legacy IRQ code"), so it's time
-to drop it. This patch also adds the missing header "asm/time.h"
-which defines the prototype of get_c0_perfcount_int().
-
-Fix the following warnings:
-
-drivers/irqchip/irq-ath79-misc.c:26:5: error: no previous prototype for 'get_c0_perfcount_int' [-Werror=missing-prototypes]
- 26 | int get_c0_perfcount_int(void)
- | ^~~~~~~~~~~~~~~~~~~~
-drivers/irqchip/irq-ath79-misc.c:181:13: error: no previous prototype for 'ath79_misc_irq_init' [-Werror=missing-prototypes]
- 181 | void __init ath79_misc_irq_init(void __iomem *regs, int irq,
- | ^~~~~~~~~~~~~~~~~~~
-
-Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
----
- drivers/irqchip/irq-ath79-misc.c | 19 +------------------
- 1 file changed, 1 insertion(+), 18 deletions(-)
-
---- a/drivers/irqchip/irq-ath79-misc.c
-+++ b/drivers/irqchip/irq-ath79-misc.c
-@@ -10,6 +10,7 @@
- * Parts of this file are based on Atheros' 2.6.15/2.6.31 BSP
- */
-
-+#include <asm/time.h>
- #include <linux/irqchip.h>
- #include <linux/irqchip/chained_irq.h>
- #include <linux/of_address.h>
-@@ -177,21 +178,3 @@ static int __init ar7240_misc_intc_of_in
-
- IRQCHIP_DECLARE(ar7240_misc_intc, "qca,ar7240-misc-intc",
- ar7240_misc_intc_of_init);
--
--void __init ath79_misc_irq_init(void __iomem *regs, int irq,
-- int irq_base, bool is_ar71xx)
--{
-- struct irq_domain *domain;
--
-- if (is_ar71xx)
-- ath79_misc_irq_chip.irq_mask_ack = ar71xx_misc_irq_mask;
-- else
-- ath79_misc_irq_chip.irq_ack = ar724x_misc_irq_ack;
--
-- domain = irq_domain_add_legacy(NULL, ATH79_MISC_IRQ_COUNT,
-- irq_base, 0, &misc_irq_domain_ops, regs);
-- if (!domain)
-- panic("Failed to create MISC irqdomain");
--
-- ath79_misc_intc_domain_init(domain, irq);
--}
--- a/drivers/gpio/gpio-ath79.c
+++ b/drivers/gpio/gpio-ath79.c
-@@ -291,7 +291,11 @@ static struct platform_driver ath79_gpio
+@@ -287,7 +287,11 @@ static struct platform_driver ath79_gpio
.probe = ath79_gpio_probe,
};
--- a/drivers/gpio/gpio-ath79.c
+++ b/drivers/gpio/gpio-ath79.c
-@@ -10,6 +10,7 @@
-
+@@ -11,6 +11,7 @@
#include <linux/device.h>
#include <linux/gpio/driver.h>
+ #include <linux/gpio/generic.h>
+#include <linux/gpio/machine.h> /* For WLAN GPIOs */
#include <linux/interrupt.h>
#include <linux/irq.h>
#include <linux/mod_devicetable.h>
-@@ -222,6 +223,37 @@ static const struct of_device_id ath79_g
+@@ -214,6 +215,37 @@ static const struct of_device_id ath79_g
};
MODULE_DEVICE_TABLE(of, ath79_gpio_of_match);
+
static int ath79_gpio_probe(struct platform_device *pdev)
{
- struct device *dev = &pdev->dev;
-@@ -280,7 +312,11 @@ static int ath79_gpio_probe(struct platf
+ struct gpio_generic_chip_config config;
+@@ -276,7 +308,11 @@ static int ath79_gpio_probe(struct platf
girq->handler = handle_simple_irq;
}
-- return devm_gpiochip_add_data(dev, &ctrl->gc, ctrl);
-+ err = devm_gpiochip_add_data(dev, &ctrl->gc, ctrl);
+- return devm_gpiochip_add_data(dev, &ctrl->chip.gc, ctrl);
++ err = devm_gpiochip_add_data(dev, &ctrl->chip.gc, ctrl);
+ if (err)
+ return err;
+
-+ return ath79_gpio_register_wifi_descriptors(dev, ctrl->gc.label);
++ return ath79_gpio_register_wifi_descriptors(dev, ctrl->chip.gc.label);
}
static struct platform_driver ath79_gpio_driver = {
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -242,6 +242,8 @@ config ATH79
+@@ -243,6 +243,8 @@ config ATH79
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_MIPS16
select SYS_SUPPORTS_ZBOOT_UART_PROM
--- a/drivers/mtd/spi-nor/core.c
+++ b/drivers/mtd/spi-nor/core.c
-@@ -3526,12 +3526,19 @@ static int spi_nor_set_mtd_info(struct s
+@@ -3503,12 +3503,19 @@ static int spi_nor_set_mtd_info(struct s
{
struct mtd_info *mtd = &nor->mtd;
struct device *dev = nor->dev;
mtd->flags = MTD_CAP_NORFLASH;
--- a/drivers/mtd/mtdcore.c
+++ b/drivers/mtd/mtdcore.c
-@@ -849,6 +849,17 @@ out_error:
+@@ -902,6 +902,17 @@ out_error:
*/
static void mtd_set_dev_defaults(struct mtd_info *mtd)
{
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
-@@ -548,4 +548,12 @@ config MTD_NAND_DISKONCHIP_BBTWRITE
+@@ -537,4 +537,12 @@ config MTD_NAND_DISKONCHIP_BBTWRITE
load time (assuming you build diskonchip as a module) with the module
parameter "inftl_bbt_write=1".
endif # MTD_RAW_NAND
--- a/drivers/mtd/nand/raw/Makefile
+++ b/drivers/mtd/nand/raw/Makefile
-@@ -58,6 +58,7 @@ obj-$(CONFIG_MTD_NAND_INTEL_LGM) += inte
- obj-$(CONFIG_MTD_NAND_ROCKCHIP) += rockchip-nand-controller.o
- obj-$(CONFIG_MTD_NAND_PL35X) += pl35x-nand-controller.o
+@@ -59,6 +59,7 @@ obj-$(CONFIG_MTD_NAND_PL35X) += pl35x-n
obj-$(CONFIG_MTD_NAND_RENESAS) += renesas-nand-controller.o
+ obj-$(CONFIG_MTD_NAND_NUVOTON_MA35) += nuvoton-ma35d1-nand-controller.o
+ obj-$(CONFIG_MTD_NAND_LOONGSON) += loongson-nand-controller.o
+obj-$(CONFIG_MTD_NAND_AR934X) += ar934x_nand.o
nand-objs := nand_base.o nand_legacy.o nand_bbt.o nand_timings.o nand_ids.o
--- a/drivers/mtd/spi-nor/macronix.c
+++ b/drivers/mtd/spi-nor/macronix.c
-@@ -8,6 +8,11 @@
-
- #include "core.h"
+@@ -25,6 +25,11 @@
+ SPI_MEM_OP_NO_DUMMY, \
+ SPI_MEM_OP_DATA_OUT(ndata, buf, 0))
+static void macronix_no_16bit_sr_default_init(struct spi_nor *nor)
+{
static int
mx25l25635_post_bfpt_fixups(struct spi_nor *nor,
const struct sfdp_parameter_header *bfpt_header,
-@@ -28,6 +33,10 @@ mx25l25635_post_bfpt_fixups(struct spi_n
+@@ -83,6 +88,10 @@ mx25l3255e_late_init_fixups(struct spi_n
return 0;
}
+
static const struct spi_nor_fixups mx25l25635_fixups = {
.post_bfpt = mx25l25635_post_bfpt_fixups,
- };
-@@ -66,7 +75,9 @@ static const struct flash_info macronix_
+ .post_sfdp = macronix_qpp4b_post_sfdp_fixups,
+@@ -128,7 +137,9 @@ static const struct flash_info macronix_
.id = SNOR_ID(0xc2, 0x20, 0x17),
.name = "mx25l6405d",
.size = SZ_8M,
.no_sfdp_flags = SECT_4K,
+ .fixups = &mx25l64_fixups,
}, {
+ /* MX25L12805D */
.id = SNOR_ID(0xc2, 0x20, 0x18),
- .name = "mx25l12805d",
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
-@@ -274,6 +274,11 @@ static int ehci_platform_probe(struct pl
+@@ -275,6 +275,11 @@ static int ehci_platform_probe(struct pl
ehci = hcd_to_ehci(hcd);
if (pdata == &ehci_platform_defaults && dev->dev.of_node) {
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -977,6 +977,17 @@ source "drivers/leds/flash/Kconfig"
+@@ -1028,6 +1028,17 @@ source "drivers/leds/flash/Kconfig"
comment "RGB LED drivers"
source "drivers/leds/rgb/Kconfig"
+MODULE_ALIAS("platform:leds-reset");
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -93,6 +93,7 @@ obj-$(CONFIG_LEDS_TURRIS_OMNIA) += leds
+@@ -98,6 +98,7 @@ obj-$(CONFIG_LEDS_UPBOARD) += leds-upbo
obj-$(CONFIG_LEDS_WM831X_STATUS) += leds-wm831x-status.o
obj-$(CONFIG_LEDS_WM8350) += leds-wm8350.o
obj-$(CONFIG_LEDS_WRAP) += leds-wrap.o
--- a/drivers/mfd/syscon.c
+++ b/drivers/mfd/syscon.c
-@@ -53,7 +53,7 @@ static struct syscon *of_syscon_register
+@@ -46,7 +46,7 @@ static struct syscon *of_syscon_register
int ret;
struct regmap_config syscon_config = syscon_regmap_config;
struct resource res;
- struct reset_control *reset;
+ struct reset_control *reset = NULL;
+ resource_size_t res_size;
WARN_ON(!mutex_is_locked(&syscon_list_lock));
-
-@@ -133,7 +133,8 @@ static struct syscon *of_syscon_register
+@@ -135,7 +135,8 @@ static struct syscon *of_syscon_register
goto err_attach_clk;
}
/* index values for the variables in ipv6_devconf */
--- a/include/uapi/linux/tcp.h
+++ b/include/uapi/linux/tcp.h
-@@ -55,7 +55,7 @@ struct tcphdr {
+@@ -57,7 +57,7 @@ struct tcphdr {
__be16 window;
__sum16 check;
__be16 urg_ptr;
/*
* The union cast uses a gcc extension to avoid aliasing problems
-@@ -65,7 +65,7 @@ struct tcphdr {
+@@ -67,7 +67,7 @@ struct tcphdr {
union tcp_word_hdr {
struct tcphdr hdr;
__be32 words[5];
#include <linux/uaccess.h>
#include <linux/ipv6.h>
#include <linux/icmpv6.h>
-@@ -915,10 +916,10 @@ static void tcp_v6_send_response(const s
+@@ -917,10 +918,10 @@ static void tcp_v6_send_response(const s
topt = (__be32 *)(t1 + 1);
if (tsecr) {
case IPV6_2292HOPOPTS:
--- a/net/ipv6/exthdrs.c
+++ b/net/ipv6/exthdrs.c
-@@ -986,7 +986,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
+@@ -984,7 +984,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
goto drop;
}
SKB_DROP_REASON_IP_INHDR);
--- a/include/linux/types.h
+++ b/include/linux/types.h
-@@ -248,5 +248,11 @@ typedef void (*swap_func_t)(void *a, voi
- typedef int (*cmp_r_func_t)(const void *a, const void *b, const void *priv);
- typedef int (*cmp_func_t)(const void *a, const void *b);
+@@ -265,5 +265,11 @@ struct rcuwait {
+ struct task_struct __rcu *task;
+ };
+struct net_hdr_word {
+ u32 words[1];
#endif /* _LINUX_TYPES_H */
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
-@@ -1507,7 +1507,7 @@ struct sk_buff *inet_gro_receive(struct
+@@ -1492,7 +1492,7 @@ struct sk_buff *inet_gro_receive(struct
goto out;
NAPI_GRO_CB(skb)->proto = proto;
struct iphdr *iph2;
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
-@@ -668,8 +668,9 @@ static void tcp_options_write(struct tcp
+@@ -638,8 +638,9 @@ static void tcp_options_write(struct tcp
u16 options = opts->options; /* mungable copy */
if (tcp_key_is_md5(key)) {
/* overload cookie hash location */
opts->hash_location = (__u8 *)ptr;
ptr += 4;
-@@ -677,40 +678,44 @@ static void tcp_options_write(struct tcp
+@@ -647,26 +648,28 @@ static void tcp_options_write(struct tcp
ptr = process_tcp_ao_options(tp, tcprsk, opts, key, ptr);
}
if (unlikely(opts->mss)) {
+ net_hdr_word(ptr++) = htonl(opts->tsecr);
}
+ if (OPTION_ACCECN & options) {
+@@ -717,10 +720,11 @@ static void tcp_options_write(struct tcp
+ }
+
if (unlikely(OPTION_SACK_ADVERTISE & options)) {
-- *ptr++ = htonl((TCPOPT_NOP << 24) |
-- (TCPOPT_NOP << 16) |
+- *ptr++ = htonl((leftover_highbyte << 24) |
+- (leftover_lowbyte << 16) |
- (TCPOPT_SACK_PERM << 8) |
- TCPOLEN_SACK_PERM);
+ net_hdr_word(ptr++) =
-+ htonl((TCPOPT_NOP << 24) |
-+ (TCPOPT_NOP << 16) |
++ htonl((leftover_highbyte << 24) |
++ (leftover_lowbyte << 16) |
+ (TCPOPT_SACK_PERM << 8) |
+ TCPOLEN_SACK_PERM);
+ leftover_highbyte = TCPOPT_NOP;
+ leftover_lowbyte = TCPOPT_NOP;
}
-
- if (unlikely(OPTION_WSCALE & options)) {
-- *ptr++ = htonl((TCPOPT_NOP << 24) |
+@@ -737,10 +741,11 @@ static void tcp_options_write(struct tcp
+ highbyte = leftover_highbyte;
+ leftover_highbyte = TCPOPT_NOP;
+ }
+- *ptr++ = htonl((highbyte << 24) |
- (TCPOPT_WINDOW << 16) |
- (TCPOLEN_WINDOW << 8) |
- opts->ws);
+ net_hdr_word(ptr++) =
-+ htonl((TCPOPT_NOP << 24) |
++ htonl((highbyte << 24) |
+ (TCPOPT_WINDOW << 16) |
+ (TCPOLEN_WINDOW << 8) |
+ opts->ws);
}
if (unlikely(opts->num_sack_blocks)) {
-@@ -718,16 +723,17 @@ static void tcp_options_write(struct tcp
+@@ -748,18 +753,19 @@ static void tcp_options_write(struct tcp
tp->duplicate_sack : tp->selective_acks;
int this_sack;
-- *ptr++ = htonl((TCPOPT_NOP << 24) |
-- (TCPOPT_NOP << 16) |
+- *ptr++ = htonl((leftover_highbyte << 24) |
+- (leftover_lowbyte << 16) |
- (TCPOPT_SACK << 8) |
- (TCPOLEN_SACK_BASE + (opts->num_sack_blocks *
+ net_hdr_word(ptr++) =
-+ htonl((TCPOPT_NOP << 24) |
-+ (TCPOPT_NOP << 16) |
++ htonl((leftover_highbyte << 24) |
++ (leftover_lowbyte << 16) |
+ (TCPOPT_SACK << 8) |
+ (TCPOLEN_SACK_BASE + (opts->num_sack_blocks *
TCPOLEN_SACK_PERBLOCK)));
+ leftover_highbyte = TCPOPT_NOP;
+ leftover_lowbyte = TCPOPT_NOP;
for (this_sack = 0; this_sack < opts->num_sack_blocks;
++this_sack) {
}
tp->rx_opt.dsack = 0;
-@@ -740,13 +746,14 @@ static void tcp_options_write(struct tcp
+@@ -780,13 +786,14 @@ static void tcp_options_write(struct tcp
if (foc->exp) {
len = TCPOLEN_EXP_FASTOPEN_BASE + foc->len;
#define IGMP_HOST_MEMBERSHIP_REPORT 0x12 /* Ditto */
--- a/net/core/flow_dissector.c
+++ b/net/core/flow_dissector.c
-@@ -132,7 +132,7 @@ __be32 __skb_flow_get_ports(const struct
+@@ -132,7 +132,7 @@ __be32 skb_flow_get_ports(const struct s
ports = __skb_header_pointer(skb, thoff + poff,
sizeof(_ports), data, hlen, &_ports);
if (ports)
#define ICMPV6_ROUTER_PREF_LOW 0x3
--- a/include/net/ndisc.h
+++ b/include/net/ndisc.h
-@@ -93,7 +93,7 @@ struct ra_msg {
+@@ -84,7 +84,7 @@ struct ra_msg {
struct icmp6hdr icmph;
__be32 reachable_time;
__be32 retrans_timer;
struct rd_msg {
struct icmp6hdr icmph;
-@@ -357,10 +357,10 @@ static inline u32 ndisc_hashfn(const voi
+@@ -348,10 +348,10 @@ static inline u32 ndisc_hashfn(const voi
{
const u32 *p32 = pkey;
static_assert(sizeof(struct prefix_info) == 32);
--- a/include/net/inet_ecn.h
+++ b/include/net/inet_ecn.h
-@@ -138,9 +138,9 @@ static inline int IP6_ECN_set_ce(struct
+@@ -152,9 +152,9 @@ static inline int IP6_ECN_set_ce(struct
if (INET_ECN_is_not_ect(ipv6_get_dsfield(iph)))
return 0;
/*
* Jumbo payload option, as described in RFC 2675 2.
-@@ -642,8 +642,8 @@ static inline void __ipv6_addr_set_half(
+@@ -650,8 +650,8 @@ static inline void __ipv6_addr_set_half(
}
#endif
#endif
}
static inline void ipv6_addr_set(struct in6_addr *addr,
-@@ -702,6 +702,8 @@ static inline bool ipv6_prefix_equal(con
+@@ -710,6 +710,8 @@ static inline bool ipv6_prefix_equal(con
const __be32 *a1 = addr1->s6_addr32;
const __be32 *a2 = addr2->s6_addr32;
unsigned int pdw, pbi;
/* check complete u32 in prefix */
pdw = prefixlen >> 5;
-@@ -710,7 +712,9 @@ static inline bool ipv6_prefix_equal(con
+@@ -718,7 +720,9 @@ static inline bool ipv6_prefix_equal(con
/* check incomplete u32 in prefix */
pbi = prefixlen & 0x1f;
return false;
return true;
-@@ -827,13 +831,13 @@ static inline void ipv6_addr_set_v4mappe
+@@ -835,13 +839,13 @@ static inline void ipv6_addr_set_v4mappe
*/
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
{
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
-@@ -1028,17 +1032,18 @@ static inline u32 ip6_multipath_hash_fie
+@@ -1036,17 +1040,18 @@ static inline u32 ip6_multipath_hash_fie
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
+#include <linux/in6.h>
struct net;
-
+ extern struct net init_net;
--- a/include/uapi/linux/in.h
+++ b/include/uapi/linux/in.h
-@@ -93,7 +93,7 @@ enum {
+@@ -95,7 +95,7 @@ enum {
/* Internet address. */
struct in_addr {
__be32 s_addr;
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -4337,14 +4337,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -4413,14 +4413,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);
--- a/include/net/neighbour.h
+++ b/include/net/neighbour.h
-@@ -287,8 +287,10 @@ static inline bool neigh_key_eq128(const
+@@ -294,8 +294,10 @@ static inline bool neigh_key_eq128(const
const u32 *n32 = (const u32 *)n->primary_key;
const u32 *p32 = pkey;
iph->daddr == iph2->daddr && iph->saddr == iph2->saddr)
return segs;
-@@ -268,7 +268,7 @@ struct sk_buff *tcp_gro_lookup(struct li
+@@ -272,7 +272,7 @@ struct sk_buff *tcp_gro_lookup(struct li
continue;
th2 = tcp_hdr(p);
NAPI_GRO_CB(p)->same_flow = 0;
continue;
}
-@@ -332,8 +332,8 @@ struct sk_buff *tcp_gro_receive(struct l
- ~(TCP_FLAG_CWR | TCP_FLAG_FIN | TCP_FLAG_PSH));
+@@ -336,8 +336,8 @@ struct sk_buff *tcp_gro_receive(struct l
+ ~(TCP_FLAG_FIN | TCP_FLAG_PSH));
flush |= (__force int)(th->ack_seq ^ th2->ack_seq);
for (i = sizeof(*th); i < thlen; i += 4)
- flush |= *(u32 *)((u8 *)th + i) ^
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
-@@ -2354,6 +2354,14 @@ config RAVE_SP_CORE
+@@ -2436,6 +2436,14 @@ config RAVE_SP_CORE
Select this to get support for the Supervisory Processor
device found on several devices in RAVE line of hardware.
depends on PCI && MIPS && 64BIT
--- a/drivers/mfd/Makefile
+++ b/drivers/mfd/Makefile
-@@ -276,6 +276,7 @@ obj-$(CONFIG_MFD_KHADAS_MCU) += khadas-
+@@ -282,6 +282,7 @@ obj-$(CONFIG_MFD_KHADAS_MCU) += khadas-
obj-$(CONFIG_MFD_ACER_A500_EC) += acer-ec-a500.o
obj-$(CONFIG_MFD_QCOM_PM8008) += qcom-pm8008.o
obj-$(CONFIG_MFD_SMPRO) += smpro-core.o
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
-@@ -1772,6 +1772,12 @@ config GPIO_SODAVILLE
+@@ -1872,6 +1872,12 @@ config GPIO_SODAVILLE
help
Say Y here to support Intel Sodaville GPIO.
menu "SPI GPIO expanders"
--- a/drivers/gpio/Makefile
+++ b/drivers/gpio/Makefile
-@@ -137,6 +137,7 @@ obj-$(CONFIG_GPIO_PL061) += gpio-pl061.
- obj-$(CONFIG_GPIO_PMIC_EIC_SPRD) += gpio-pmic-eic-sprd.o
+@@ -148,6 +148,7 @@ obj-$(CONFIG_GPIO_PMIC_EIC_SPRD) += gpio
+ obj-$(CONFIG_GPIO_POLARFIRE_SOC) += gpio-mpfs.o
obj-$(CONFIG_GPIO_PXA) += gpio-pxa.o
obj-$(CONFIG_GPIO_RASPBERRYPI_EXP) += gpio-raspberrypi-exp.o
+obj-$(CONFIG_GPIO_RB4XX) += gpio-rb4xx.o
obj-$(CONFIG_GPIO_RDA) += gpio-rda.o
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
-@@ -556,4 +556,11 @@ config MTD_NAND_AR934X
+@@ -545,4 +545,11 @@ config MTD_NAND_AR934X
Enables support for NAND controller on Qualcomm Atheros SoCs.
This controller is found on AR934x and QCA955x SoCs.
endif # MTD_RAW_NAND
--- a/drivers/mtd/nand/raw/Makefile
+++ b/drivers/mtd/nand/raw/Makefile
-@@ -59,6 +59,7 @@ obj-$(CONFIG_MTD_NAND_ROCKCHIP) += rock
- obj-$(CONFIG_MTD_NAND_PL35X) += pl35x-nand-controller.o
- obj-$(CONFIG_MTD_NAND_RENESAS) += renesas-nand-controller.o
+@@ -60,6 +60,7 @@ obj-$(CONFIG_MTD_NAND_RENESAS) += renes
+ obj-$(CONFIG_MTD_NAND_NUVOTON_MA35) += nuvoton-ma35d1-nand-controller.o
+ obj-$(CONFIG_MTD_NAND_LOONGSON) += loongson-nand-controller.o
obj-$(CONFIG_MTD_NAND_AR934X) += ar934x_nand.o
+obj-$(CONFIG_MTD_NAND_RB4XX) += nand_rb4xx.o
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
-@@ -398,6 +398,12 @@ config GPIO_IXP4XX
+@@ -418,6 +418,12 @@ config GPIO_IXP4XX
If unsure, say N.
config GPIO_LOGICVC
tristate "Xylon LogiCVC GPIO support"
depends on MFD_SYSCON && OF
-@@ -555,6 +561,10 @@ config GPIO_PXA
+@@ -583,6 +589,10 @@ config GPIO_PXA
help
Say yes here to support the PXA GPIO device.
depends on ARCH_RENESAS || COMPILE_TEST
--- a/drivers/gpio/Makefile
+++ b/drivers/gpio/Makefile
-@@ -84,6 +84,7 @@ obj-$(CONFIG_GPIO_IXP4XX) += gpio-ixp4x
+@@ -89,6 +89,7 @@ obj-$(CONFIG_GPIO_IXP4XX) += gpio-ixp4x
obj-$(CONFIG_GPIO_JANZ_TTL) += gpio-janz-ttl.o
obj-$(CONFIG_GPIO_KEMPLD) += gpio-kempld.o
obj-$(CONFIG_GPIO_LATCH) += gpio-latch.o
obj-$(CONFIG_GPIO_LINE_MUX) += gpio-line-mux.o
obj-$(CONFIG_GPIO_LJCA) += gpio-ljca.o
obj-$(CONFIG_GPIO_LOGICVC) += gpio-logicvc.o
-@@ -138,6 +139,7 @@ obj-$(CONFIG_GPIO_PMIC_EIC_SPRD) += gpio
+@@ -149,6 +150,7 @@ obj-$(CONFIG_GPIO_POLARFIRE_SOC) += gpio
obj-$(CONFIG_GPIO_PXA) += gpio-pxa.o
obj-$(CONFIG_GPIO_RASPBERRYPI_EXP) += gpio-raspberrypi-exp.o
obj-$(CONFIG_GPIO_RB4XX) += gpio-rb4xx.o
obj-$(CONFIG_GPIO_RDA) += gpio-rda.o
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
-@@ -563,4 +563,10 @@ config MTD_NAND_RB4XX
+@@ -552,4 +552,10 @@ config MTD_NAND_RB4XX
Enables support for the NAND flash chip on Mikrotik Routerboard
RB4xx series.
endif # MTD_RAW_NAND
--- a/drivers/mtd/nand/raw/Makefile
+++ b/drivers/mtd/nand/raw/Makefile
-@@ -60,6 +60,7 @@ obj-$(CONFIG_MTD_NAND_PL35X) += pl35x-n
- obj-$(CONFIG_MTD_NAND_RENESAS) += renesas-nand-controller.o
+@@ -61,6 +61,7 @@ obj-$(CONFIG_MTD_NAND_NUVOTON_MA35) += n
+ obj-$(CONFIG_MTD_NAND_LOONGSON) += loongson-nand-controller.o
obj-$(CONFIG_MTD_NAND_AR934X) += ar934x_nand.o
obj-$(CONFIG_MTD_NAND_RB4XX) += nand_rb4xx.o
+obj-$(CONFIG_MTD_NAND_RB91X) += rb91x_nand.o