mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2025-01-04 13:42:24 +00:00
kernel: bump 5.15 to 5.15.87
Removed upstreamed: generic/hack-5.15/290-net-dsa-mv88e6xxx-depend-on-PTP-conditionally.patch[1] Build system: x86_64 Build-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod Run-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.87&id=945e58bdaf6faf6e3f957d182244fa830acddab4 Signed-off-by: John Audia <therealgraysky@proton.me>
This commit is contained in:
parent
c051693ef4
commit
843e3dace7
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.15 = .86
|
LINUX_VERSION-5.15 = .87
|
||||||
LINUX_KERNEL_HASH-5.15.86 = 80fcd9efa443502de9e2750f6dfb59e8de43a5d87a6d2be09dca748d79b5f2ee
|
LINUX_KERNEL_HASH-5.15.87 = e7359bd2935b54fe8bb821cf748591c36a95bed019e752d3e4d5803d9da1ccb4
|
||||||
|
@ -10,7 +10,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
|||||||
|
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -3096,6 +3096,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3098,6 +3098,7 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
struct device *dev = nor->dev;
|
struct device *dev = nor->dev;
|
||||||
struct mtd_info *mtd = &nor->mtd;
|
struct mtd_info *mtd = &nor->mtd;
|
||||||
struct device_node *np = spi_nor_get_flash_node(nor);
|
struct device_node *np = spi_nor_get_flash_node(nor);
|
||||||
@ -18,7 +18,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
|||||||
int ret;
|
int ret;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@@ -3150,7 +3151,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
@@ -3152,7 +3153,12 @@ int spi_nor_scan(struct spi_nor *nor, co
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
|||||||
#define USB_VENDOR_ID_BELKIN 0x050d
|
#define USB_VENDOR_ID_BELKIN 0x050d
|
||||||
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
||||||
|
|
||||||
@@ -1313,6 +1316,9 @@
|
@@ -1316,6 +1319,9 @@
|
||||||
#define USB_VENDOR_ID_XAT 0x2505
|
#define USB_VENDOR_ID_XAT 0x2505
|
||||||
#define USB_DEVICE_ID_XAT_CSR 0x0220
|
#define USB_DEVICE_ID_XAT_CSR 0x0220
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ Link: https://lore.kernel.org/bpf/d5dc039c3d4123426e7023a488c449181a7bc57f.16469
|
|||||||
|
|
||||||
--- a/drivers/net/veth.c
|
--- a/drivers/net/veth.c
|
||||||
+++ b/drivers/net/veth.c
|
+++ b/drivers/net/veth.c
|
||||||
@@ -1470,9 +1470,14 @@ static int veth_xdp_set(struct net_devic
|
@@ -1471,9 +1471,14 @@ static int veth_xdp_set(struct net_devic
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/rndis_host.c
|
--- a/drivers/net/usb/rndis_host.c
|
||||||
+++ b/drivers/net/usb/rndis_host.c
|
+++ b/drivers/net/usb/rndis_host.c
|
||||||
@@ -485,10 +485,14 @@ EXPORT_SYMBOL_GPL(rndis_unbind);
|
@@ -486,10 +486,14 @@ EXPORT_SYMBOL_GPL(rndis_unbind);
|
||||||
*/
|
*/
|
||||||
int rndis_rx_fixup(struct usbnet *dev, struct sk_buff *skb)
|
int rndis_rx_fixup(struct usbnet *dev, struct sk_buff *skb)
|
||||||
{
|
{
|
||||||
@ -53,7 +53,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
/* peripheral may have batched packets to us... */
|
/* peripheral may have batched packets to us... */
|
||||||
while (likely(skb->len)) {
|
while (likely(skb->len)) {
|
||||||
struct rndis_data_hdr *hdr = (void *)skb->data;
|
struct rndis_data_hdr *hdr = (void *)skb->data;
|
||||||
@@ -523,10 +527,17 @@ int rndis_rx_fixup(struct usbnet *dev, s
|
@@ -524,10 +528,17 @@ int rndis_rx_fixup(struct usbnet *dev, s
|
||||||
break;
|
break;
|
||||||
skb_pull(skb, msg_len - sizeof *hdr);
|
skb_pull(skb, msg_len - sizeof *hdr);
|
||||||
skb_trim(skb2, data_len);
|
skb_trim(skb2, data_len);
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(rndis_rx_fixup);
|
EXPORT_SYMBOL_GPL(rndis_rx_fixup);
|
||||||
@@ -600,6 +611,17 @@ static const struct driver_info rndis_po
|
@@ -601,6 +612,17 @@ static const struct driver_info rndis_po
|
||||||
.tx_fixup = rndis_tx_fixup,
|
.tx_fixup = rndis_tx_fixup,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -89,7 +89,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
|
||||||
static const struct usb_device_id products [] = {
|
static const struct usb_device_id products [] = {
|
||||||
@@ -614,6 +636,16 @@ static const struct usb_device_id produc
|
@@ -615,6 +637,16 @@ static const struct usb_device_id produc
|
||||||
USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
|
USB_CLASS_COMM, 2 /* ACM */, 0x0ff),
|
||||||
.driver_info = (unsigned long)&rndis_info,
|
.driver_info = (unsigned long)&rndis_info,
|
||||||
}, {
|
}, {
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/net/usb/rndis_host.c
|
--- a/drivers/net/usb/rndis_host.c
|
||||||
+++ b/drivers/net/usb/rndis_host.c
|
+++ b/drivers/net/usb/rndis_host.c
|
||||||
@@ -418,10 +418,7 @@ generic_rndis_bind(struct usbnet *dev, s
|
@@ -419,10 +419,7 @@ generic_rndis_bind(struct usbnet *dev, s
|
||||||
goto halt_fail_and_release;
|
goto halt_fail_and_release;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
|
|
||||||
/* set a nonzero filter to enable data transfers */
|
/* set a nonzero filter to enable data transfers */
|
||||||
memset(u.set, 0, sizeof *u.set);
|
memset(u.set, 0, sizeof *u.set);
|
||||||
@@ -463,6 +460,16 @@ static int rndis_bind(struct usbnet *dev
|
@@ -464,6 +461,16 @@ static int rndis_bind(struct usbnet *dev
|
||||||
return generic_rndis_bind(dev, intf, FLAG_RNDIS_PHYM_NOT_WIRELESS);
|
return generic_rndis_bind(dev, intf, FLAG_RNDIS_PHYM_NOT_WIRELESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
|
|||||||
void rndis_unbind(struct usbnet *dev, struct usb_interface *intf)
|
void rndis_unbind(struct usbnet *dev, struct usb_interface *intf)
|
||||||
{
|
{
|
||||||
struct rndis_halt *halt;
|
struct rndis_halt *halt;
|
||||||
@@ -615,7 +622,7 @@ static const struct driver_info zte_rndi
|
@@ -616,7 +623,7 @@ static const struct driver_info zte_rndi
|
||||||
.description = "ZTE RNDIS device",
|
.description = "ZTE RNDIS device",
|
||||||
.flags = FLAG_ETHER | FLAG_POINTTOPOINT | FLAG_FRAMING_RN | FLAG_NO_SETINT,
|
.flags = FLAG_ETHER | FLAG_POINTTOPOINT | FLAG_FRAMING_RN | FLAG_NO_SETINT,
|
||||||
.data = RNDIS_DRIVER_DATA_DST_MAC_FIXUP,
|
.data = RNDIS_DRIVER_DATA_DST_MAC_FIXUP,
|
||||||
|
@ -1,44 +0,0 @@
|
|||||||
From e6866ed4219b8c7754dcd3eb1a654f6f524b0e56 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Johnny S. Lee" <foss@jsl.io>
|
|
||||||
Date: Thu, 15 Dec 2022 17:49:04 +0800
|
|
||||||
Subject: [PATCH] net: dsa: mv88e6xxx: depend on PTP conditionally
|
|
||||||
|
|
||||||
PTP hardware timestamping related objects are not linked when PTP
|
|
||||||
support for MV88E6xxx (NET_DSA_MV88E6XXX_PTP) is disabled, therefore
|
|
||||||
NET_DSA_MV88E6XXX should not depend on PTP_1588_CLOCK_OPTIONAL
|
|
||||||
regardless of NET_DSA_MV88E6XXX_PTP.
|
|
||||||
|
|
||||||
Instead, condition more strictly on how NET_DSA_MV88E6XXX_PTP's
|
|
||||||
dependencies are met, making sure that it cannot be enabled when
|
|
||||||
NET_DSA_MV88E6XXX=y and PTP_1588_CLOCK=m.
|
|
||||||
|
|
||||||
In other words, this commit allows NET_DSA_MV88E6XXX to be built-in
|
|
||||||
while PTP_1588_CLOCK is a module, as long as NET_DSA_MV88E6XXX_PTP is
|
|
||||||
prevented from being enabled.
|
|
||||||
|
|
||||||
Fixes: e5f31552674e ("ethernet: fix PTP_1588_CLOCK dependencies")
|
|
||||||
Signed-off-by: Johnny S. Lee <foss@jsl.io>
|
|
||||||
---
|
|
||||||
drivers/net/dsa/mv88e6xxx/Kconfig | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
--- a/drivers/net/dsa/mv88e6xxx/Kconfig
|
|
||||||
+++ b/drivers/net/dsa/mv88e6xxx/Kconfig
|
|
||||||
@@ -2,7 +2,6 @@
|
|
||||||
config NET_DSA_MV88E6XXX
|
|
||||||
tristate "Marvell 88E6xxx Ethernet switch fabric support"
|
|
||||||
depends on NET_DSA
|
|
||||||
- depends on PTP_1588_CLOCK_OPTIONAL
|
|
||||||
select IRQ_DOMAIN
|
|
||||||
select NET_DSA_TAG_EDSA
|
|
||||||
select NET_DSA_TAG_DSA
|
|
||||||
@@ -13,7 +12,8 @@ config NET_DSA_MV88E6XXX
|
|
||||||
config NET_DSA_MV88E6XXX_PTP
|
|
||||||
bool "PTP support for Marvell 88E6xxx"
|
|
||||||
default n
|
|
||||||
- depends on NET_DSA_MV88E6XXX && PTP_1588_CLOCK
|
|
||||||
+ depends on (NET_DSA_MV88E6XXX = y && PTP_1588_CLOCK = y) || \
|
|
||||||
+ (NET_DSA_MV88E6XXX = m && PTP_1588_CLOCK)
|
|
||||||
help
|
|
||||||
Say Y to enable PTP hardware timestamping on Marvell 88E6xxx switch
|
|
||||||
chips that support it.
|
|
@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/fs/locks.c
|
--- a/fs/locks.c
|
||||||
+++ b/fs/locks.c
|
+++ b/fs/locks.c
|
||||||
@@ -2929,6 +2929,8 @@ static const struct seq_operations locks
|
@@ -2952,6 +2952,8 @@ static const struct seq_operations locks
|
||||||
|
|
||||||
static int __init proc_locks_init(void)
|
static int __init proc_locks_init(void)
|
||||||
{
|
{
|
||||||
|
@ -202,7 +202,7 @@ Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
|
|||||||
return !!nor->params->erase_map.uniform_erase_type;
|
return !!nor->params->erase_map.uniform_erase_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2389,6 +2391,7 @@ static int spi_nor_select_erase(struct s
|
@@ -2391,6 +2393,7 @@ static int spi_nor_select_erase(struct s
|
||||||
{
|
{
|
||||||
struct spi_nor_erase_map *map = &nor->params->erase_map;
|
struct spi_nor_erase_map *map = &nor->params->erase_map;
|
||||||
const struct spi_nor_erase_type *erase = NULL;
|
const struct spi_nor_erase_type *erase = NULL;
|
||||||
@ -210,7 +210,7 @@ Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
|
|||||||
struct mtd_info *mtd = &nor->mtd;
|
struct mtd_info *mtd = &nor->mtd;
|
||||||
u32 wanted_size = nor->info->sector_size;
|
u32 wanted_size = nor->info->sector_size;
|
||||||
int i;
|
int i;
|
||||||
@@ -2421,8 +2424,9 @@ static int spi_nor_select_erase(struct s
|
@@ -2423,8 +2426,9 @@ static int spi_nor_select_erase(struct s
|
||||||
*/
|
*/
|
||||||
for (i = SNOR_ERASE_TYPE_MAX - 1; i >= 0; i--) {
|
for (i = SNOR_ERASE_TYPE_MAX - 1; i >= 0; i--) {
|
||||||
if (map->erase_type[i].size) {
|
if (map->erase_type[i].size) {
|
||||||
@ -222,7 +222,7 @@ Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2430,6 +2434,9 @@ static int spi_nor_select_erase(struct s
|
@@ -2432,6 +2436,9 @@ static int spi_nor_select_erase(struct s
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
mtd->erasesize = erase->size;
|
mtd->erasesize = erase->size;
|
||||||
|
@ -59,7 +59,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
+};
|
+};
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -1857,6 +1857,7 @@ static const struct spi_nor_manufacturer
|
@@ -1859,6 +1859,7 @@ static const struct spi_nor_manufacturer
|
||||||
&spi_nor_winbond,
|
&spi_nor_winbond,
|
||||||
&spi_nor_xilinx,
|
&spi_nor_xilinx,
|
||||||
&spi_nor_xmc,
|
&spi_nor_xmc,
|
||||||
|
@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
@@ -2082,12 +2084,12 @@ static int packet_rcv(struct sk_buff *sk
|
@@ -2092,12 +2094,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||||
unsigned int snaplen, res;
|
unsigned int snaplen, res;
|
||||||
bool is_drop_n_account = false;
|
bool is_drop_n_account = false;
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -2213,12 +2215,12 @@ static int tpacket_rcv(struct sk_buff *s
|
@@ -2223,12 +2225,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
||||||
|
|
||||||
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -3329,6 +3331,7 @@ static int packet_create(struct net *net
|
@@ -3339,6 +3341,7 @@ static int packet_create(struct net *net
|
||||||
mutex_init(&po->pg_vec_lock);
|
mutex_init(&po->pg_vec_lock);
|
||||||
po->rollover = NULL;
|
po->rollover = NULL;
|
||||||
po->prot_hook.func = packet_rcv;
|
po->prot_hook.func = packet_rcv;
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
if (sock->type == SOCK_PACKET)
|
if (sock->type == SOCK_PACKET)
|
||||||
po->prot_hook.func = packet_rcv_spkt;
|
po->prot_hook.func = packet_rcv_spkt;
|
||||||
@@ -3969,6 +3972,16 @@ packet_setsockopt(struct socket *sock, i
|
@@ -3979,6 +3982,16 @@ packet_setsockopt(struct socket *sock, i
|
||||||
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
|
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
default:
|
default:
|
||||||
return -ENOPROTOOPT;
|
return -ENOPROTOOPT;
|
||||||
}
|
}
|
||||||
@@ -4025,6 +4038,13 @@ static int packet_getsockopt(struct sock
|
@@ -4035,6 +4048,13 @@ static int packet_getsockopt(struct sock
|
||||||
case PACKET_VNET_HDR:
|
case PACKET_VNET_HDR:
|
||||||
val = po->has_vnet_hdr;
|
val = po->has_vnet_hdr;
|
||||||
break;
|
break;
|
||||||
|
@ -12,7 +12,7 @@ Subject: SoC: add qualcomm syscon
|
|||||||
obj-$(CONFIG_QCOM_RPMHPD) += rpmhpd.o
|
obj-$(CONFIG_QCOM_RPMHPD) += rpmhpd.o
|
||||||
--- a/drivers/soc/qcom/Kconfig
|
--- a/drivers/soc/qcom/Kconfig
|
||||||
+++ b/drivers/soc/qcom/Kconfig
|
+++ b/drivers/soc/qcom/Kconfig
|
||||||
@@ -191,6 +191,13 @@ config QCOM_SOCINFO
|
@@ -192,6 +192,13 @@ config QCOM_SOCINFO
|
||||||
Say yes here to support the Qualcomm socinfo driver, providing
|
Say yes here to support the Qualcomm socinfo driver, providing
|
||||||
information about the SoC to user space.
|
information about the SoC to user space.
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
|
|
||||||
if (freq < min_freq) {
|
if (freq < min_freq) {
|
||||||
freq = min_freq;
|
freq = min_freq;
|
||||||
@@ -785,6 +786,7 @@ struct devfreq *devfreq_add_device(struc
|
@@ -784,6 +785,7 @@ struct devfreq *devfreq_add_device(struc
|
||||||
{
|
{
|
||||||
struct devfreq *devfreq;
|
struct devfreq *devfreq;
|
||||||
struct devfreq_governor *governor;
|
struct devfreq_governor *governor;
|
||||||
@ -64,7 +64,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
int err = 0;
|
int err = 0;
|
||||||
|
|
||||||
if (!dev || !profile || !governor_name) {
|
if (!dev || !profile || !governor_name) {
|
||||||
@@ -849,6 +851,8 @@ struct devfreq *devfreq_add_device(struc
|
@@ -848,6 +850,8 @@ struct devfreq *devfreq_add_device(struc
|
||||||
goto err_dev;
|
goto err_dev;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
devfreq->suspend_freq = dev_pm_opp_get_suspend_opp_freq(dev);
|
devfreq->suspend_freq = dev_pm_opp_get_suspend_opp_freq(dev);
|
||||||
devfreq->opp_table = dev_pm_opp_get_opp_table(dev);
|
devfreq->opp_table = dev_pm_opp_get_opp_table(dev);
|
||||||
if (IS_ERR(devfreq->opp_table))
|
if (IS_ERR(devfreq->opp_table))
|
||||||
@@ -1561,7 +1565,7 @@ static ssize_t min_freq_show(struct devi
|
@@ -1559,7 +1563,7 @@ static ssize_t min_freq_show(struct devi
|
||||||
unsigned long min_freq, max_freq;
|
unsigned long min_freq, max_freq;
|
||||||
|
|
||||||
mutex_lock(&df->lock);
|
mutex_lock(&df->lock);
|
||||||
@ -82,7 +82,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
mutex_unlock(&df->lock);
|
mutex_unlock(&df->lock);
|
||||||
|
|
||||||
return sprintf(buf, "%lu\n", min_freq);
|
return sprintf(buf, "%lu\n", min_freq);
|
||||||
@@ -1615,7 +1619,7 @@ static ssize_t max_freq_show(struct devi
|
@@ -1613,7 +1617,7 @@ static ssize_t max_freq_show(struct devi
|
||||||
unsigned long min_freq, max_freq;
|
unsigned long min_freq, max_freq;
|
||||||
|
|
||||||
mutex_lock(&df->lock);
|
mutex_lock(&df->lock);
|
||||||
@ -91,7 +91,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
mutex_unlock(&df->lock);
|
mutex_unlock(&df->lock);
|
||||||
|
|
||||||
return sprintf(buf, "%lu\n", max_freq);
|
return sprintf(buf, "%lu\n", max_freq);
|
||||||
@@ -1929,7 +1933,7 @@ static int devfreq_summary_show(struct s
|
@@ -1927,7 +1931,7 @@ static int devfreq_summary_show(struct s
|
||||||
|
|
||||||
mutex_lock(&devfreq->lock);
|
mutex_lock(&devfreq->lock);
|
||||||
cur_freq = devfreq->previous_freq;
|
cur_freq = devfreq->previous_freq;
|
||||||
|
@ -419,7 +419,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
struct thermal_cooling_device;
|
struct thermal_cooling_device;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -288,6 +289,11 @@ struct devfreq_simple_ondemand_data {
|
@@ -289,6 +290,11 @@ struct devfreq_simple_ondemand_data {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if IS_ENABLED(CONFIG_DEVFREQ_GOV_PASSIVE)
|
#if IS_ENABLED(CONFIG_DEVFREQ_GOV_PASSIVE)
|
||||||
@ -431,7 +431,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
/**
|
/**
|
||||||
* struct devfreq_passive_data - ``void *data`` fed to struct devfreq
|
* struct devfreq_passive_data - ``void *data`` fed to struct devfreq
|
||||||
* and devfreq_add_device
|
* and devfreq_add_device
|
||||||
@@ -299,8 +305,11 @@ struct devfreq_simple_ondemand_data {
|
@@ -300,8 +306,11 @@ struct devfreq_simple_ondemand_data {
|
||||||
* using governors except for passive governor.
|
* using governors except for passive governor.
|
||||||
* If the devfreq device has the specific method to decide
|
* If the devfreq device has the specific method to decide
|
||||||
* the next frequency, should use this callback.
|
* the next frequency, should use this callback.
|
||||||
@ -445,7 +445,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
*
|
*
|
||||||
* The devfreq_passive_data have to set the devfreq instance of parent
|
* The devfreq_passive_data have to set the devfreq instance of parent
|
||||||
* device with governors except for the passive governor. But, don't need to
|
* device with governors except for the passive governor. But, don't need to
|
||||||
@@ -314,9 +323,13 @@ struct devfreq_passive_data {
|
@@ -315,9 +324,13 @@ struct devfreq_passive_data {
|
||||||
/* Optional callback to decide the next frequency of passvice device */
|
/* Optional callback to decide the next frequency of passvice device */
|
||||||
int (*get_target_freq)(struct devfreq *this, unsigned long *freq);
|
int (*get_target_freq)(struct devfreq *this, unsigned long *freq);
|
||||||
|
|
||||||
|
@ -212,7 +212,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
|
|
||||||
--- a/include/linux/devfreq.h
|
--- a/include/linux/devfreq.h
|
||||||
+++ b/include/linux/devfreq.h
|
+++ b/include/linux/devfreq.h
|
||||||
@@ -309,7 +309,7 @@ enum devfreq_parent_dev_type {
|
@@ -310,7 +310,7 @@ enum devfreq_parent_dev_type {
|
||||||
* @this: the devfreq instance of own device.
|
* @this: the devfreq instance of own device.
|
||||||
* @nb: the notifier block for DEVFREQ_TRANSITION_NOTIFIER or
|
* @nb: the notifier block for DEVFREQ_TRANSITION_NOTIFIER or
|
||||||
* CPUFREQ_TRANSITION_NOTIFIER list.
|
* CPUFREQ_TRANSITION_NOTIFIER list.
|
||||||
@ -221,7 +221,7 @@ Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|||||||
*
|
*
|
||||||
* The devfreq_passive_data have to set the devfreq instance of parent
|
* The devfreq_passive_data have to set the devfreq instance of parent
|
||||||
* device with governors except for the passive governor. But, don't need to
|
* device with governors except for the passive governor. But, don't need to
|
||||||
@@ -329,7 +329,7 @@ struct devfreq_passive_data {
|
@@ -330,7 +330,7 @@ struct devfreq_passive_data {
|
||||||
/* For passive governor's internal use. Don't need to set them */
|
/* For passive governor's internal use. Don't need to set them */
|
||||||
struct devfreq *this;
|
struct devfreq *this;
|
||||||
struct notifier_block nb;
|
struct notifier_block nb;
|
||||||
|
@ -126,7 +126,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
devfreq->stats.total_trans++;
|
devfreq->stats.total_trans++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -835,6 +831,9 @@ struct devfreq *devfreq_add_device(struc
|
@@ -834,6 +830,9 @@ struct devfreq *devfreq_add_device(struc
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
goto err_dev;
|
goto err_dev;
|
||||||
mutex_lock(&devfreq->lock);
|
mutex_lock(&devfreq->lock);
|
||||||
@ -136,7 +136,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
devfreq->scaling_min_freq = find_available_min_freq(devfreq);
|
devfreq->scaling_min_freq = find_available_min_freq(devfreq);
|
||||||
@@ -870,8 +869,8 @@ struct devfreq *devfreq_add_device(struc
|
@@ -869,8 +868,8 @@ struct devfreq *devfreq_add_device(struc
|
||||||
|
|
||||||
devfreq->stats.trans_table = devm_kzalloc(&devfreq->dev,
|
devfreq->stats.trans_table = devm_kzalloc(&devfreq->dev,
|
||||||
array3_size(sizeof(unsigned int),
|
array3_size(sizeof(unsigned int),
|
||||||
@ -147,7 +147,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
if (!devfreq->stats.trans_table) {
|
if (!devfreq->stats.trans_table) {
|
||||||
mutex_unlock(&devfreq->lock);
|
mutex_unlock(&devfreq->lock);
|
||||||
@@ -880,7 +879,7 @@ struct devfreq *devfreq_add_device(struc
|
@@ -879,7 +878,7 @@ struct devfreq *devfreq_add_device(struc
|
||||||
}
|
}
|
||||||
|
|
||||||
devfreq->stats.time_in_state = devm_kcalloc(&devfreq->dev,
|
devfreq->stats.time_in_state = devm_kcalloc(&devfreq->dev,
|
||||||
@ -156,7 +156,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
sizeof(*devfreq->stats.time_in_state),
|
sizeof(*devfreq->stats.time_in_state),
|
||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
if (!devfreq->stats.time_in_state) {
|
if (!devfreq->stats.time_in_state) {
|
||||||
@@ -1639,9 +1638,9 @@ static ssize_t available_frequencies_sho
|
@@ -1637,9 +1636,9 @@ static ssize_t available_frequencies_sho
|
||||||
|
|
||||||
mutex_lock(&df->lock);
|
mutex_lock(&df->lock);
|
||||||
|
|
||||||
@ -168,7 +168,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
mutex_unlock(&df->lock);
|
mutex_unlock(&df->lock);
|
||||||
/* Truncate the trailing space */
|
/* Truncate the trailing space */
|
||||||
@@ -1664,7 +1663,7 @@ static ssize_t trans_stat_show(struct de
|
@@ -1662,7 +1661,7 @@ static ssize_t trans_stat_show(struct de
|
||||||
|
|
||||||
if (!df->profile)
|
if (!df->profile)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
@ -177,7 +177,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
if (max_state == 0)
|
if (max_state == 0)
|
||||||
return sprintf(buf, "Not Supported.\n");
|
return sprintf(buf, "Not Supported.\n");
|
||||||
@@ -1681,19 +1680,17 @@ static ssize_t trans_stat_show(struct de
|
@@ -1679,19 +1678,17 @@ static ssize_t trans_stat_show(struct de
|
||||||
len += sprintf(buf + len, " :");
|
len += sprintf(buf + len, " :");
|
||||||
for (i = 0; i < max_state; i++)
|
for (i = 0; i < max_state; i++)
|
||||||
len += sprintf(buf + len, "%10lu",
|
len += sprintf(buf + len, "%10lu",
|
||||||
@ -202,7 +202,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
for (j = 0; j < max_state; j++)
|
for (j = 0; j < max_state; j++)
|
||||||
len += sprintf(buf + len, "%10u",
|
len += sprintf(buf + len, "%10u",
|
||||||
df->stats.trans_table[(i * max_state) + j]);
|
df->stats.trans_table[(i * max_state) + j]);
|
||||||
@@ -1717,7 +1714,7 @@ static ssize_t trans_stat_store(struct d
|
@@ -1715,7 +1712,7 @@ static ssize_t trans_stat_store(struct d
|
||||||
if (!df->profile)
|
if (!df->profile)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
@ -211,7 +211,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
return count;
|
return count;
|
||||||
|
|
||||||
err = kstrtoint(buf, 10, &value);
|
err = kstrtoint(buf, 10, &value);
|
||||||
@@ -1725,11 +1722,11 @@ static ssize_t trans_stat_store(struct d
|
@@ -1723,11 +1720,11 @@ static ssize_t trans_stat_store(struct d
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
mutex_lock(&df->lock);
|
mutex_lock(&df->lock);
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/devfreq/devfreq.c
|
--- a/drivers/devfreq/devfreq.c
|
||||||
+++ b/drivers/devfreq/devfreq.c
|
+++ b/drivers/devfreq/devfreq.c
|
||||||
@@ -931,8 +931,9 @@ struct devfreq *devfreq_add_device(struc
|
@@ -930,8 +930,9 @@ struct devfreq *devfreq_add_device(struc
|
||||||
err = devfreq->governor->event_handler(devfreq, DEVFREQ_GOV_START,
|
err = devfreq->governor->event_handler(devfreq, DEVFREQ_GOV_START,
|
||||||
NULL);
|
NULL);
|
||||||
if (err) {
|
if (err) {
|
||||||
|
@ -12,7 +12,7 @@ Subject: SoC: add qualcomm syscon
|
|||||||
obj-$(CONFIG_QCOM_RPMHPD) += rpmhpd.o
|
obj-$(CONFIG_QCOM_RPMHPD) += rpmhpd.o
|
||||||
--- a/drivers/soc/qcom/Kconfig
|
--- a/drivers/soc/qcom/Kconfig
|
||||||
+++ b/drivers/soc/qcom/Kconfig
|
+++ b/drivers/soc/qcom/Kconfig
|
||||||
@@ -191,6 +191,13 @@ config QCOM_SOCINFO
|
@@ -192,6 +192,13 @@ config QCOM_SOCINFO
|
||||||
Say yes here to support the Qualcomm socinfo driver, providing
|
Say yes here to support the Qualcomm socinfo driver, providing
|
||||||
information about the SoC to user space.
|
information about the SoC to user space.
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
|||||||
+};
|
+};
|
||||||
--- a/drivers/mtd/spi-nor/core.c
|
--- a/drivers/mtd/spi-nor/core.c
|
||||||
+++ b/drivers/mtd/spi-nor/core.c
|
+++ b/drivers/mtd/spi-nor/core.c
|
||||||
@@ -1841,6 +1841,7 @@ int spi_nor_sr2_bit7_quad_enable(struct
|
@@ -1843,6 +1843,7 @@ int spi_nor_sr2_bit7_quad_enable(struct
|
||||||
|
|
||||||
static const struct spi_nor_manufacturer *manufacturers[] = {
|
static const struct spi_nor_manufacturer *manufacturers[] = {
|
||||||
&spi_nor_atmel,
|
&spi_nor_atmel,
|
||||||
|
Loading…
Reference in New Issue
Block a user