Re: [linux-yocto] [PATCH] kernel/sched: Fix uninitialized read in nohz_full/isolcpus setup
On Mon, Aug 14, 2023 at 10:07 PM Paul Gortmaker wrote: > > [Re: [linux-yocto] [PATCH] kernel/sched: Fix uninitialized read in > nohz_full/isolcpus setup] On 26/06/2023 (Mon 11:05) Paul Gortmaker wrote: > > > [[linux-yocto] [PATCH] kernel/sched: Fix uninitialized read in > > nohz_full/isolcpus setup] On 25/06/2023 (Sun 18:50) Adrian Cinal via > > lists.yoctoproject.org wrote: > > > > > Fix reading uninitialized cpumask and using it to validate the nohz_full= > > > and isolcpus= kernel command line parameters. > > > > > > An older version of a patch from lkml was incorporated into linux-yocto, > > > whereas a newer, rebased version was later published. See: > > > https://lore.kernel.org/lkml/20220221182009.1283-1-paul.gortma...@windriver.com/ > > > > Let me remind myself of what got merged upstream and what didn't and > > why, and I'll follow up shortly with a Yocto specific update. > > Sorry for the delayed reply. The commit log kind of confused me for a > while until I had a quiet moment to get the cobwebs out of my head and > realize what happened. > > Your fix is correct. The v6.1 (and v6.4) kernels are performing the > sanity tests on uninitialized memory and hence isolcpus= can randomly > reject perfectly valid inputs. Same for nohz_full= it seems. > > I'd suggest we augment the commit log with this: > > -- > PG: To be more clear as to what happened here - it isn't a broken older > patch from lkml integrated into linux-yocto. It is a carry forward of > a correct commit from the v5.15 linux-yocto kernel: > > https://git.yoctoproject.org/linux-yocto/commit/?id=97c96388922 > > ...in which case the sanity checks are properly *after* the allocation > and processing of the bootargs into the cpumask. > > However, it seems patch (or wiggle?) apparently decided to put the > sanity checks *before* the population of the cpumask during the > carry-forward and generation of the new v6.1 kernel. Meaning they are > validating uninitialized memory and hence nohz_full= and isolcpus= are > subject to random failures even for valid input ranges. > > Acked-by: Paul Gortmaker > -- > > Bruce - both carry-forwards -- the v6.1 [d81fac6e842] and v6.4 kernels > [23b162bc3058] have this issue. The commit IDs above are in their > respective standard/base version and hence this fix will have to also > land there and be merged out to -rt and and all BSPs etc etc. > > The copies in the yocto-kernel-cache also have the sanity checks above > the actual cpulist_parse(str, non_housekeeping_mask) which populates the > cpumask with the data to be validated and hence are also broken. > > https://git.yoctoproject.org/yocto-kernel-cache/tree/features/clear_warn_once/sched-isolation-really-align-nohz_full-with-rcu_nocb.patch?h=yocto-6.1 > https://git.yoctoproject.org/yocto-kernel-cache/tree/features/clear_warn_once/sched-isolation-really-align-nohz_full-with-rcu_nocb.patch?h=yocto-6.4 > > Thanks to Adrian for tracking this down and sending the fix! And thanks for the excellent detail Paul! I've updated the kernel-cache commits, and have merged Adrian's patches to the kernel branches. My next series will include the SRCREV bumps for the change. Bruce > > Paul. > -- > > > > > Thanks, > > Paul. > > -- > > > > > > > > Signed-off-by: Adrian Cinal > > > --- > > > kernel/sched/isolation.c | 12 ++-- > > > 1 file changed, 6 insertions(+), 6 deletions(-) > > > > > > diff --git a/kernel/sched/isolation.c b/kernel/sched/isolation.c > > > index 73386019efcb..b97d6e05013d 100644 > > > --- a/kernel/sched/isolation.c > > > +++ b/kernel/sched/isolation.c > > > @@ -119,6 +119,12 @@ static int __init housekeeping_setup(char *str, > > > unsigned long flags) > > > } > > > } > > > > > > + alloc_bootmem_cpumask_var(_housekeeping_mask); > > > + if (cpulist_parse(str, non_housekeeping_mask) < 0) { > > > + pr_warn("Housekeeping: nohz_full= or isolcpus= incorrect CPU > > > range\n"); > > > + goto free_non_housekeeping_mask; > > > + } > > > + > > > if (!cpumask_subset(non_housekeeping_mask, cpu_possible_mask)) { > > > pr_info("housekeeping: kernel parameter 'nohz_full=' or > > > 'isolcpus=' contains nonexistent CPUs.\n"); > > > cpumask_and(non_housekeeping_mask, cpu_possible_mask, > > > @@ -128,12 +134,6 @@ static int __init housekeeping_setup(char *str, > > > unsigned long flags) > > > if (cpumask_empty(non_housekeeping_mask)) { > > > pr_info("housekeeping: kernel parameter 'nohz_full=' or > > > 'isolcpus=' has no valid CPUs.\n"); > > > free_bootmem_cpumask_var(non_housekeeping_mask); > > > - return 0; > > > - } > > > - > > > - alloc_bootmem_cpumask_var(_housekeeping_mask); > > > - if (cpulist_parse(str, non_housekeeping_mask) < 0) { > > > - pr_warn("Housekeeping: nohz_full= or isolcpus= incorrect CPU > > > range\n"); > > > goto free_non_housekeeping_mask; > > > } >
Re: [linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx [RT]
In message: [linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx [RT] on 17/08/2023 Ruiqiang Hao wrote: > Hi Bruce, > > Please help to merge code into our linux-yocto repo. > > repo: > linux-yocto > branch: > v6.1/standard/preempt-rt/cn-sdkv5.15/octeon merged. Bruce > > Thanks, > Ruiqiang > > The following changes since commit 87fb080409cccf2e6dc752164b5af988622e86dd: > > Merge branch 'v6.1/standard/base' into > v6.1/standard/preempt-rt/cn-sdkv5.15/octeon (2023-08-14 12:12:36 -0400) > > are available in the Git repository at: > > g...@github.com:cythe/linux.git > linux-yocto/v6.1/standard/preempt-rt/cn-sdkv5.15/octeon > > for you to fetch changes up to 499a6c331620077037a8ed5e426e881314bcc012: > > drivers: mpam: Drop the improper assertions (2023-08-16 08:05:21 +) > > > Amritha Nambiar (1): > act_skbedit: skbedit queue mapping for receive queue > > Bharat Bhushan (3): > Watchdog: Add marvell GTI watchdog driver > hwrng: cn10k: Add extended trng register support > dt-bindings: watchdog: marvell GTI system watchdog driver > > Bruno Matic (1): > drivers: i2c-octeon-core: Add error state recovery > > Emeel Hakim (2): > vlan: Add MACsec offload operations for VLAN interface > macsec: Don't rely solely on the dst MAC address to identify > destination MACsec device > > Geetha sowjanya (5): > Revert: 'octeontx2-af: Secure APR table update with the lock' > octeontx2-pf: Fix xdp frame start address > octeontx2-pf: Remove xdp queues on program detach > octeontx2-af: mcs: Fix sa entries size > octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 > > George Cherian (2): > watchdog: sbsa_gwdt: Apply the Errata workaround seen on CN10K > Processors > watchdog:marvell_gti: Update missing MODULE_LICENSE > > Hariprasad Kelam (2): > octeontx2-pf: Qos: Validate quantum parameter > octeontx2-pf: Qos: fix root node dwrr priority corruption > > Kevin Hao (1): > drivers: mpam: Drop the improper assertions > > Kiran Kumar K (1): > octeontx2-af: Add KPU parsing support for IPV6 SRH header > > Linu Cherian (6): > coresight: tmc: Keep reserved region parsing common > coresight: core: Add provision for panic callbacks > coresight: tmc: Enable panic sync handling > coresight: etm4x: Configure ETM to trigger on panic > coresight: cti: Add CTI id for Neoverse N2 core CTI > coresight: tmc: Stop trace capture on FlIn > > Min Li (2): > ptp: idt82p33: Add PTP_CLK_REQ_EXTTS support > ptp: idt82p33: remove PEROUT_ENABLE_OUTPUT_MASK > > Naveen Mamindlapalli (7): > octeontx2-bphy-netdev: Fix register offset definitions > octeontx2-bphy-netdev: cnf10k: don't drop packets with macsec errors > driver: mfd/misc/ptp: update renasas smu drivers to v1.0 tag > ptp_clockmatrix: print driver version during probe > octeontx2-pf: Use TL2 level for egress match all configuration > octeontx2-bphy-netdev: Add an ioctl to reset PTP PHC sw timecounter > offset > octeontx-bphy-netdev: enable mbt full drop enable > > Nithin Dabilpuram (2): > crypto: octeontx2: support setting ctx ilen for inline CPT LF > octeontx2-af: avoid RXC register access in FLR on CN10KB > > Ratheesh Kannoth (3): > octeontx2-pf: Add support for page pool > octeontx2-pf: TC flower offload support for rxqueue mapping > octeontx-pf: Fix Call trace' while running netdev rss test > > Ruiqiang Hao (2): > mmc: cavium-thunderx: Drop the IRQF_NO_THREAD constraint > octeontx2-pf: drop unused parts introduced by marvell SDK12 > > Sai Krishna (1): > octeontx2-pf: Use HW PTP timestamp atomic update to avoid SW > timecounter. > > Sebastien Dubois (4): > drivers: mrvl_swup: Add logging for clone and get_version calls > drivers: mrvl_swup: Add logging for read flash call > drivers: mrvl_swup: Add debug flag for SMC calls > drivers: mrvl_swup: clear SMC log buffer for each SMC call > > Srujana Challa (3): > crypto: octeontx2: add devlink option to set t106 mode > crypto: octeontx2: fix opcode incase of SGv2 > crypto: octeontx2: fix devlink params get callback > > Subbaraya Sundeep (3): > octeontx2-pf: mcs: Support VLAN in clear text > macsec: Use helper macsec_netdev_priv for offload drivers > octeontx2-af: Remove the PF_FUNC validation for NPC transmit rules > > Suman Ghosh (6): > octeontx2-pf: Allow ntuple rule to direct packet to VF with higher Rx > queue than its PF > octeontx2-pf: Fix memory leak during interface down > octeontx2-af: Add a new mbox to read/write MCAM hit status > octeontx2-af: Tc flower offload support for inner VLAN > octeonxt2-pf: Fix backpressure config for multiple PFC priorities to >
Re: [linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx
In message: [linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx on 17/08/2023 Ruiqiang Hao wrote: > Hi Bruce, > > Please help to merge code into our linux-yocto repo. > > repo: > linux-yocto > branch: > v6.1/standard/cn-sdkv5.15/octeon merged. Bruce > > Thanks, > Ruiqiang > > The following changes since commit 5fea53f290b75bf67cce970cdaa9aa6bc0ea0bce: > > Merge branch 'v6.1/standard/base' into v6.1/standard/cn-sdkv5.15/octeon > (2023-08-14 12:00:15 -0400) > > are available in the Git repository at: > > g...@github.com:cythe/linux.git linux-yocto/v6.1/standard/cn-sdkv5.15/octeon > > for you to fetch changes up to 4eb388761b1d7b457477284742979a6492d08599: > > drivers: mpam: Drop the improper assertions (2023-08-16 08:04:45 +) > > > Amritha Nambiar (1): > act_skbedit: skbedit queue mapping for receive queue > > Bharat Bhushan (3): > Watchdog: Add marvell GTI watchdog driver > hwrng: cn10k: Add extended trng register support > dt-bindings: watchdog: marvell GTI system watchdog driver > > Bruno Matic (1): > drivers: i2c-octeon-core: Add error state recovery > > Emeel Hakim (2): > vlan: Add MACsec offload operations for VLAN interface > macsec: Don't rely solely on the dst MAC address to identify > destination MACsec device > > Geetha sowjanya (5): > Revert: 'octeontx2-af: Secure APR table update with the lock' > octeontx2-pf: Fix xdp frame start address > octeontx2-pf: Remove xdp queues on program detach > octeontx2-af: mcs: Fix sa entries size > octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 > > George Cherian (2): > watchdog: sbsa_gwdt: Apply the Errata workaround seen on CN10K > Processors > watchdog:marvell_gti: Update missing MODULE_LICENSE > > Hariprasad Kelam (2): > octeontx2-pf: Qos: Validate quantum parameter > octeontx2-pf: Qos: fix root node dwrr priority corruption > > Kevin Hao (1): > drivers: mpam: Drop the improper assertions > > Kiran Kumar K (1): > octeontx2-af: Add KPU parsing support for IPV6 SRH header > > Linu Cherian (6): > coresight: tmc: Keep reserved region parsing common > coresight: core: Add provision for panic callbacks > coresight: tmc: Enable panic sync handling > coresight: etm4x: Configure ETM to trigger on panic > coresight: cti: Add CTI id for Neoverse N2 core CTI > coresight: tmc: Stop trace capture on FlIn > > Min Li (2): > ptp: idt82p33: Add PTP_CLK_REQ_EXTTS support > ptp: idt82p33: remove PEROUT_ENABLE_OUTPUT_MASK > > Naveen Mamindlapalli (7): > octeontx2-bphy-netdev: Fix register offset definitions > octeontx2-bphy-netdev: cnf10k: don't drop packets with macsec errors > driver: mfd/misc/ptp: update renasas smu drivers to v1.0 tag > ptp_clockmatrix: print driver version during probe > octeontx2-pf: Use TL2 level for egress match all configuration > octeontx2-bphy-netdev: Add an ioctl to reset PTP PHC sw timecounter > offset > octeontx-bphy-netdev: enable mbt full drop enable > > Nithin Dabilpuram (2): > crypto: octeontx2: support setting ctx ilen for inline CPT LF > octeontx2-af: avoid RXC register access in FLR on CN10KB > > Ratheesh Kannoth (3): > octeontx2-pf: Add support for page pool > octeontx2-pf: TC flower offload support for rxqueue mapping > octeontx-pf: Fix Call trace' while running netdev rss test > > Ruiqiang Hao (2): > mmc: cavium-thunderx: Drop the IRQF_NO_THREAD constraint > octeontx2-pf: drop unused parts introduced by marvell SDK12 > > Sai Krishna (1): > octeontx2-pf: Use HW PTP timestamp atomic update to avoid SW > timecounter. > > Sebastien Dubois (4): > drivers: mrvl_swup: Add logging for clone and get_version calls > drivers: mrvl_swup: Add logging for read flash call > drivers: mrvl_swup: Add debug flag for SMC calls > drivers: mrvl_swup: clear SMC log buffer for each SMC call > > Srujana Challa (3): > crypto: octeontx2: add devlink option to set t106 mode > crypto: octeontx2: fix opcode incase of SGv2 > crypto: octeontx2: fix devlink params get callback > > Subbaraya Sundeep (3): > octeontx2-pf: mcs: Support VLAN in clear text > macsec: Use helper macsec_netdev_priv for offload drivers > octeontx2-af: Remove the PF_FUNC validation for NPC transmit rules > > Suman Ghosh (6): > octeontx2-pf: Allow ntuple rule to direct packet to VF with higher Rx > queue than its PF > octeontx2-pf: Fix memory leak during interface down > octeontx2-af: Add a new mbox to read/write MCAM hit status > octeontx2-af: Tc flower offload support for inner VLAN > octeonxt2-pf: Fix backpressure config for multiple PFC priorities to > work simultaneously. >
Re: [linux-yocto][v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc][PATCH] gpio: zynq: fix zynqmp_gpio not an immutable chip warning
In message: [linux-yocto][v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc][PATCH] gpio: zynq: fix zynqmp_gpio not an immutable chip warning on 17/08/2023 quanyang.w...@windriver.com wrote: > From: Manikanta Guntupalli > > commit f5691439353783ef114876849c70d2a641e09498 upstream. > > Make the struct irq_chip const and flag it as IRQCHIP_IMMUTABLE, > call gpiochip_disable_irq() in the .irq_mask() callback and > gpiochip_enable_irq() in the .irq_unmask() callback to fix > "gpio gpiochip1: (zynqmp_gpio): not an immutable chip" warning. > > Signed-off-by: Manikanta Guntupalli > Reviewed-by: Linus Walleij > Signed-off-by: Bartosz Golaszewski > --- > Hi Bruce, > Would you please help merge this patch to the branches: > v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc > v6.1/standard/sdkv6.1/xlnx-soc merged. Bruce > Thanks, > Quanyang > --- > drivers/gpio/gpio-zynq.c | 22 +++--- > 1 file changed, 15 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c > index 06c6401f02b89..c334e46033bae 100644 > --- a/drivers/gpio/gpio-zynq.c > +++ b/drivers/gpio/gpio-zynq.c > @@ -151,8 +151,8 @@ struct zynq_platform_data { > int bank_max[ZYNQMP_GPIO_MAX_BANK]; > }; > > -static struct irq_chip zynq_gpio_level_irqchip; > -static struct irq_chip zynq_gpio_edge_irqchip; > +static const struct irq_chip zynq_gpio_level_irqchip; > +static const struct irq_chip zynq_gpio_edge_irqchip; > > /** > * zynq_gpio_is_zynq - test if HW is zynq or zynqmp > @@ -404,9 +404,12 @@ static int zynq_gpio_get_direction(struct gpio_chip > *chip, unsigned int pin) > static void zynq_gpio_irq_mask(struct irq_data *irq_data) > { > unsigned int device_pin_num, bank_num, bank_pin_num; > + const unsigned long offset = irqd_to_hwirq(irq_data); > + struct gpio_chip *chip = irq_data_get_irq_chip_data(irq_data); > struct zynq_gpio *gpio = > gpiochip_get_data(irq_data_get_irq_chip_data(irq_data)); > > + gpiochip_disable_irq(chip, offset); > device_pin_num = irq_data->hwirq; > zynq_gpio_get_bank_pin(device_pin_num, _num, _pin_num, gpio); > writel_relaxed(BIT(bank_pin_num), > @@ -425,9 +428,12 @@ static void zynq_gpio_irq_mask(struct irq_data *irq_data) > static void zynq_gpio_irq_unmask(struct irq_data *irq_data) > { > unsigned int device_pin_num, bank_num, bank_pin_num; > + const unsigned long offset = irqd_to_hwirq(irq_data); > + struct gpio_chip *chip = irq_data_get_irq_chip_data(irq_data); > struct zynq_gpio *gpio = > gpiochip_get_data(irq_data_get_irq_chip_data(irq_data)); > > + gpiochip_enable_irq(chip, offset); > device_pin_num = irq_data->hwirq; > zynq_gpio_get_bank_pin(device_pin_num, _num, _pin_num, gpio); > writel_relaxed(BIT(bank_pin_num), > @@ -590,7 +596,7 @@ static void zynq_gpio_irq_relres(struct irq_data *d) > } > > /* irq chip descriptor */ > -static struct irq_chip zynq_gpio_level_irqchip = { > +static const struct irq_chip zynq_gpio_level_irqchip = { > .name = DRIVER_NAME, > .irq_enable = zynq_gpio_irq_enable, > .irq_eoi= zynq_gpio_irq_ack, > @@ -601,10 +607,11 @@ static struct irq_chip zynq_gpio_level_irqchip = { > .irq_request_resources = zynq_gpio_irq_reqres, > .irq_release_resources = zynq_gpio_irq_relres, > .flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | > - IRQCHIP_MASK_ON_SUSPEND, > + IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, > + GPIOCHIP_IRQ_RESOURCE_HELPERS, > }; > > -static struct irq_chip zynq_gpio_edge_irqchip = { > +static const struct irq_chip zynq_gpio_edge_irqchip = { > .name = DRIVER_NAME, > .irq_enable = zynq_gpio_irq_enable, > .irq_ack= zynq_gpio_irq_ack, > @@ -614,7 +621,8 @@ static struct irq_chip zynq_gpio_edge_irqchip = { > .irq_set_wake = zynq_gpio_set_wake, > .irq_request_resources = zynq_gpio_irq_reqres, > .irq_release_resources = zynq_gpio_irq_relres, > - .flags = IRQCHIP_MASK_ON_SUSPEND, > + .flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, > + GPIOCHIP_IRQ_RESOURCE_HELPERS, > }; > > static void zynq_gpio_handle_bank_irq(struct zynq_gpio *gpio, > @@ -962,7 +970,7 @@ static int zynq_gpio_probe(struct platform_device *pdev) > > /* Set up the GPIO irqchip */ > girq = >irq; > - girq->chip = _gpio_edge_irqchip; > + gpio_irq_chip_set_chip(girq, _gpio_edge_irqchip); > girq->parent_handler = zynq_gpio_irqhandler; > girq->num_parents = 1; > girq->parents = devm_kcalloc(>dev, 1, > -- > 2.36.1 > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12988): https://lists.yoctoproject.org/g/linux-yocto/message/12988 Mute This Topic: https://lists.yoctoproject.org/mt/100792612/21656 Group Owner:
Re: [linux-yocto][v6.1/standard/preempt-rt/nxp-sdk-6.1/nxp-soc & v6.1/standard/nxp-sdk-6.1/nxp-soc][PATCH] video: fbdev: mxc: hdmi: Fix a memory leak in mxc_hdmi_disp_init
merged. Bruce In message: [linux-yocto][v6.1/standard/preempt-rt/nxp-sdk-6.1/nxp-soc & v6.1/standard/nxp-sdk-6.1/nxp-soc][PATCH] video: fbdev: mxc: hdmi: Fix a memory leak in mxc_hdmi_disp_init on 16/08/2023 Xiaolei Wang wrote: > When mxc_hdmi_disp_init returns failure, hdmi->fbi->modelist needs > to be released in mxc_hdmi_disp_deinit(), this patch solves the > following memory leaks: > > unreferenced object 0xc52a45c0 (size 64): > comm "swapper/0", pid 1, jiffies 4294937844 (age 159.630s) > hex dump (first 32 bytes): > 80 45 2a c5 00 46 2a c5 00 00 00 00 32 00 00 00 .E*..F*.2... > 80 07 00 00 38 04 00 00 4e 1a 00 00 94 00 00 00 8...N... > backtrace: > [<409cb2e6>] kmalloc_trace+0x30/0x60 > [<0417ea10>] fb_add_videomode+0xfc/0x14c > [] mxc_hdmi_disp_init+0x3b8/0x908 > [<70d3b62e>] mxc_dispdrv_gethandle+0x70/0xc4 > [] mxcfb_probe+0xa00/0xea0 > [<478fecea>] platform_probe+0x64/0xb8 > [] really_probe+0xd0/0x2f4 > [<0131a04b>] __driver_probe_device+0x90/0x1a8 > [] driver_probe_device+0x38/0x110 > [] __driver_attach+0x9c/0x188 > [] bus_for_each_dev+0x84/0xcc > [<537260d8>] bus_add_driver+0x16c/0x1f8 > [<1df9678d>] driver_register+0x90/0x124 > [<75e3b051>] do_one_initcall+0x84/0x330 > [] kernel_init_freeable+0x2a4/0x2fc > [] kernel_init+0x20/0x140 > > Signed-off-by: Xiaolei Wang > --- > drivers/video/fbdev/mxc/mxc_hdmi.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/video/fbdev/mxc/mxc_hdmi.c > b/drivers/video/fbdev/mxc/mxc_hdmi.c > index 66783a691455..222d5946ae6b 100644 > --- a/drivers/video/fbdev/mxc/mxc_hdmi.c > +++ b/drivers/video/fbdev/mxc/mxc_hdmi.c > @@ -2712,6 +2712,7 @@ static void mxc_hdmi_disp_deinit(struct > mxc_dispdrv_handle *disp) > > dev_dbg(>pdev->dev, "%s\n", __func__); > > + fb_destroy_modelist(>fbi->modelist); > device_remove_file(>pdev->dev, _attr_fb_name); > device_remove_file(>pdev->dev, _attr_cable_state); > device_remove_file(>pdev->dev, _attr_edid); > -- > 2.25.1 > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12987): https://lists.yoctoproject.org/g/linux-yocto/message/12987 Mute This Topic: https://lists.yoctoproject.org/mt/100772366/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/leave/6687884/21656/624485779/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [linux-yocto] [linux-yocto v5.10] [PATCH 1/2] dt-bindings: hwmon: add tmp464.yaml
The backports look ok, but did I miss where you indicated which 5.10 branches they are for ? Bruce In message: [linux-yocto] [linux-yocto v5.10] [PATCH 1/2] dt-bindings: hwmon: add tmp464.yaml on 15/08/2023 Stefan Ghinea via lists.yoctoproject.org wrote: > From: Agathe Porte > > commit b4fa042e92e17f243bdfa2c53e3cd4c8b3dfb56c upstream > > Add basic description of the tmp464 driver DT bindings. > > Signed-off-by: Agathe Porte > Cc: Krzysztof Adamski > Reviewed-by: Rob Herring > Link: https://lore.kernel.org/r/2022023610.23098-1-li...@roeck-us.net > Signed-off-by: Guenter Roeck > Signed-off-by: Stefan Ghinea > --- > .../devicetree/bindings/hwmon/ti,tmp464.yaml | 114 ++ > MAINTAINERS | 7 ++ > 2 files changed, 121 insertions(+) > create mode 100644 Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml > > diff --git a/Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml > b/Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml > new file mode 100644 > index ..801ca9ba7d34 > --- /dev/null > +++ b/Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml > @@ -0,0 +1,114 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/hwmon/ti,tmp464.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: TMP464 and TMP468 temperature sensors > + > +maintainers: > + - Agathe Porte > + > +description: | > + ±0.0625°C Remote and Local temperature sensor > + https://www.ti.com/lit/ds/symlink/tmp464.pdf > + https://www.ti.com/lit/ds/symlink/tmp468.pdf > + > +properties: > + compatible: > +enum: > + - ti,tmp464 > + - ti,tmp468 > + > + reg: > +maxItems: 1 > + > + '#address-cells': > +const: 1 > + > + '#size-cells': > +const: 0 > + > +required: > + - compatible > + - reg > + > +additionalProperties: false > + > +patternProperties: > + "^channel@([0-8])$": > +type: object > +description: | > + Represents channels of the device and their specific configuration. > + > +properties: > + reg: > +description: | > + The channel number. 0 is local channel, 1-8 are remote channels. > +items: > + minimum: 0 > + maximum: 8 > + > + label: > +description: | > + A descriptive name for this channel, like "ambient" or "psu". > + > + ti,n-factor: > +description: | > + The value (two's complement) to be programmed in the channel > specific N correction register. > + For remote channels only. > +$ref: /schemas/types.yaml#/definitions/int32 > +items: > + minimum: -128 > + maximum: 127 > + > +required: > + - reg > + > +additionalProperties: false > + > +examples: > + - | > +i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + sensor@4b { > +compatible = "ti,tmp464"; > +reg = <0x4b>; > + }; > +}; > + - | > +i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + sensor@4b { > +compatible = "ti,tmp464"; > +reg = <0x4b>; > +#address-cells = <1>; > +#size-cells = <0>; > + > +channel@0 { > + reg = <0x0>; > + label = "local"; > +}; > + > +channel@1 { > + reg = <0x1>; > + ti,n-factor = <(-10)>; > + label = "external"; > +}; > + > +channel@2 { > + reg = <0x2>; > + ti,n-factor = <0x10>; > + label = "somelabel"; > +}; > + > +channel@3 { > + reg = <0x3>; > + status = "disabled"; > +}; > + }; > +}; > diff --git a/MAINTAINERS b/MAINTAINERS > index 436bf762a66e..24613696c630 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -17670,6 +17670,13 @@ S: Maintained > F: Documentation/hwmon/tmp401.rst > F: drivers/hwmon/tmp401.c > > +TMP464 HARDWARE MONITOR DRIVER > +M: Agathe Porte > +M: Guenter Roeck > +L: linux-hw...@vger.kernel.org > +S: Maintained > +F: Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml > + > TMP513 HARDWARE MONITOR DRIVER > M: Eric Tremblay > L: linux-hw...@vger.kernel.org > -- > 2.41.0 > > > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12986): https://lists.yoctoproject.org/g/linux-yocto/message/12986 Mute This Topic: https://lists.yoctoproject.org/mt/100763689/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/leave/6687884/21656/624485779/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [linux-yocto] [PATCH] kconfig-diff2frag.py: add
In message: [PATCH] kconfig-diff2frag.py: add on 15/08/2023 Trevor Woerner wrote: > Add a python tool to generate a config fragment from a unified diff of two > kernel configurations. The diff is read from stdin and the fragment is printed > to stdout. > > Usage: > $ diff -u config1 config2 | kconfig-diff2frag.py > > Signed-off-by: Trevor Woerner Thanks Trevor! I've queued this, and will run it through some tests. Bruce > --- > Makefile | 3 ++- > tools/kconfig-diff2frag.py | 31 +++ > 2 files changed, 33 insertions(+), 1 deletion(-) > create mode 100755 tools/kconfig-diff2frag.py > > diff --git a/Makefile b/Makefile > index 2818ecd2fefc..6d481ed52f04 100644 > --- a/Makefile > +++ b/Makefile > @@ -3,7 +3,8 @@ kern_tools_LIST = kgit kgit-meta \ > kgit-create-buckets \ > get_defconfig scc \ > merge_config.sh spp kgit-s2q \ > - symbol_why.py > + symbol_why.py \ > + kconfig-diff2frag.py > > cmds := $(wildcard tools/scc-cmds/*) > libs := Kconfiglib/kconfiglib.py > diff --git a/tools/kconfig-diff2frag.py b/tools/kconfig-diff2frag.py > new file mode 100755 > index ..2c2b2e37b826 > --- /dev/null > +++ b/tools/kconfig-diff2frag.py > @@ -0,0 +1,31 @@ > +#! /usr/bin/env python3 > +# > +## Copyright (C) 2023 Trevor Woerner > +## SPDX-License-Identifier: OSLv3 > +## vim: sw=4 ts=4 sts=4 expandtab > + > +# This tool takes a unified diff (diff -u ) of two kconfig > +# files and generates a kconfig fragment from the differences. > +# It reads the diff on stdin and outputs the fragment on stdout. > +# > +# Example usage: > +#$ diff -u config-before config-after | ./kconfig-diff2frag.py > + > +import sys > + > +def main(): > +for LINE in sys.stdin: > +# if a line starts with '+CONFIG_*' > +# then output the line without the leading '+' > +if LINE.find('+CONFIG_') == 0: > +print(LINE[1:],end='') > + > +# if a line starts with '+# CONFIG_* is not set' > +# then output the line as: CONFIG_*=n > +if LINE.find('+# CONFIG_') == 0: > +print(LINE.split()[1].strip(),'=n',sep='') > + > +# ignore any other lines > + > +if __name__ == "__main__": > +main() > -- > 2.41.0.327.gaa9166bcc0ba > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12985): https://lists.yoctoproject.org/g/linux-yocto/message/12985 Mute This Topic: https://lists.yoctoproject.org/mt/100761334/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/leave/6687884/21656/624485779/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [linux-yocto] [kernel-cache][PATCH] ralink-pci.cfg: fix config syntax
In message: [linux-yocto] [kernel-cache][PATCH] ralink-pci.cfg: fix config syntax on 15/08/2023 Mikko Rapeli wrote: > Fixes do_kernel_configcheck warnings: > > WARNING: [kernel config]: This BSP contains fragments with warnings: > > [INFO]: Fragments with badly formatted configuration options: > - fragment configs/v6.4/standard/features/wifi/ralink-pci.cfg has the > following issues: config RT2800PCI_RT35XX=y > - fragment configs/v6.4/standard/features/wifi/ralink-pci.cfg has the > following issues: config RT2800PCI_RT53XX=y > - fragment configs/v6.4/standard/features/wifi/ralink-pci.cfg has the > following issues: config RT2800PCI_RT3290=y Interesting that this has been warning since 2018. Clearly not commonly used. I've merged this into 5.15+ and it will be in my next round of SRCREV bumps. Bruce > > Signed-off-by: Mikko Rapeli > --- > features/wifi/ralink-pci.cfg | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/features/wifi/ralink-pci.cfg b/features/wifi/ralink-pci.cfg > index b4639ea0..c7e95040 100644 > --- a/features/wifi/ralink-pci.cfg > +++ b/features/wifi/ralink-pci.cfg > @@ -10,7 +10,7 @@ CONFIG_RT2500PCI=m > CONFIG_RT61PCI=m > CONFIG_RT2800PCI=m > CONFIG_RT2800PCI_RT33XX=y > -config RT2800PCI_RT35XX=y > -config RT2800PCI_RT53XX=y > -config RT2800PCI_RT3290=y > +CONFIG_RT2800PCI_RT35XX=y > +CONFIG_RT2800PCI_RT53XX=y > +CONFIG_RT2800PCI_RT3290=y > > -- > 2.34.1 > > > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12984): https://lists.yoctoproject.org/g/linux-yocto/message/12984 Mute This Topic: https://lists.yoctoproject.org/mt/100754319/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/leave/6687884/21656/624485779/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx
Hi Bruce, Please help to merge code into our linux-yocto repo. repo: linux-yocto branch: v6.1/standard/cn-sdkv5.15/octeon Thanks, Ruiqiang The following changes since commit 5fea53f290b75bf67cce970cdaa9aa6bc0ea0bce: Merge branch 'v6.1/standard/base' into v6.1/standard/cn-sdkv5.15/octeon (2023-08-14 12:00:15 -0400) are available in the Git repository at: g...@github.com:cythe/linux.git linux-yocto/v6.1/standard/cn-sdkv5.15/octeon for you to fetch changes up to 4eb388761b1d7b457477284742979a6492d08599: drivers: mpam: Drop the improper assertions (2023-08-16 08:04:45 +) Amritha Nambiar (1): act_skbedit: skbedit queue mapping for receive queue Bharat Bhushan (3): Watchdog: Add marvell GTI watchdog driver hwrng: cn10k: Add extended trng register support dt-bindings: watchdog: marvell GTI system watchdog driver Bruno Matic (1): drivers: i2c-octeon-core: Add error state recovery Emeel Hakim (2): vlan: Add MACsec offload operations for VLAN interface macsec: Don't rely solely on the dst MAC address to identify destination MACsec device Geetha sowjanya (5): Revert: 'octeontx2-af: Secure APR table update with the lock' octeontx2-pf: Fix xdp frame start address octeontx2-pf: Remove xdp queues on program detach octeontx2-af: mcs: Fix sa entries size octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 George Cherian (2): watchdog: sbsa_gwdt: Apply the Errata workaround seen on CN10K Processors watchdog:marvell_gti: Update missing MODULE_LICENSE Hariprasad Kelam (2): octeontx2-pf: Qos: Validate quantum parameter octeontx2-pf: Qos: fix root node dwrr priority corruption Kevin Hao (1): drivers: mpam: Drop the improper assertions Kiran Kumar K (1): octeontx2-af: Add KPU parsing support for IPV6 SRH header Linu Cherian (6): coresight: tmc: Keep reserved region parsing common coresight: core: Add provision for panic callbacks coresight: tmc: Enable panic sync handling coresight: etm4x: Configure ETM to trigger on panic coresight: cti: Add CTI id for Neoverse N2 core CTI coresight: tmc: Stop trace capture on FlIn Min Li (2): ptp: idt82p33: Add PTP_CLK_REQ_EXTTS support ptp: idt82p33: remove PEROUT_ENABLE_OUTPUT_MASK Naveen Mamindlapalli (7): octeontx2-bphy-netdev: Fix register offset definitions octeontx2-bphy-netdev: cnf10k: don't drop packets with macsec errors driver: mfd/misc/ptp: update renasas smu drivers to v1.0 tag ptp_clockmatrix: print driver version during probe octeontx2-pf: Use TL2 level for egress match all configuration octeontx2-bphy-netdev: Add an ioctl to reset PTP PHC sw timecounter offset octeontx-bphy-netdev: enable mbt full drop enable Nithin Dabilpuram (2): crypto: octeontx2: support setting ctx ilen for inline CPT LF octeontx2-af: avoid RXC register access in FLR on CN10KB Ratheesh Kannoth (3): octeontx2-pf: Add support for page pool octeontx2-pf: TC flower offload support for rxqueue mapping octeontx-pf: Fix Call trace' while running netdev rss test Ruiqiang Hao (2): mmc: cavium-thunderx: Drop the IRQF_NO_THREAD constraint octeontx2-pf: drop unused parts introduced by marvell SDK12 Sai Krishna (1): octeontx2-pf: Use HW PTP timestamp atomic update to avoid SW timecounter. Sebastien Dubois (4): drivers: mrvl_swup: Add logging for clone and get_version calls drivers: mrvl_swup: Add logging for read flash call drivers: mrvl_swup: Add debug flag for SMC calls drivers: mrvl_swup: clear SMC log buffer for each SMC call Srujana Challa (3): crypto: octeontx2: add devlink option to set t106 mode crypto: octeontx2: fix opcode incase of SGv2 crypto: octeontx2: fix devlink params get callback Subbaraya Sundeep (3): octeontx2-pf: mcs: Support VLAN in clear text macsec: Use helper macsec_netdev_priv for offload drivers octeontx2-af: Remove the PF_FUNC validation for NPC transmit rules Suman Ghosh (6): octeontx2-pf: Allow ntuple rule to direct packet to VF with higher Rx queue than its PF octeontx2-pf: Fix memory leak during interface down octeontx2-af: Add a new mbox to read/write MCAM hit status octeontx2-af: Tc flower offload support for inner VLAN octeonxt2-pf: Fix backpressure config for multiple PFC priorities to work simultaneously. octeontx2-af: Remove MAC address validation check Suneel Garapati (2): drivers: spi: Add arbitration support for Cadence SPI spi: Add xfer() function for cadence xSPI Sunil Goutham (1): octeontx-83: Ignore BGX operations for LBK interfaces Vasyl Gomonovych (1): driver: edac: octeontx: Init MC grain Witold Sadowski (1): drivers: spi: cadence: Reconfigure xSPI
[linux-yocto][linux-yocto v6.1] kernel code for marvell cn96xx [RT]
Hi Bruce, Please help to merge code into our linux-yocto repo. repo: linux-yocto branch: v6.1/standard/preempt-rt/cn-sdkv5.15/octeon Thanks, Ruiqiang The following changes since commit 87fb080409cccf2e6dc752164b5af988622e86dd: Merge branch 'v6.1/standard/base' into v6.1/standard/preempt-rt/cn-sdkv5.15/octeon (2023-08-14 12:12:36 -0400) are available in the Git repository at: g...@github.com:cythe/linux.git linux-yocto/v6.1/standard/preempt-rt/cn-sdkv5.15/octeon for you to fetch changes up to 499a6c331620077037a8ed5e426e881314bcc012: drivers: mpam: Drop the improper assertions (2023-08-16 08:05:21 +) Amritha Nambiar (1): act_skbedit: skbedit queue mapping for receive queue Bharat Bhushan (3): Watchdog: Add marvell GTI watchdog driver hwrng: cn10k: Add extended trng register support dt-bindings: watchdog: marvell GTI system watchdog driver Bruno Matic (1): drivers: i2c-octeon-core: Add error state recovery Emeel Hakim (2): vlan: Add MACsec offload operations for VLAN interface macsec: Don't rely solely on the dst MAC address to identify destination MACsec device Geetha sowjanya (5): Revert: 'octeontx2-af: Secure APR table update with the lock' octeontx2-pf: Fix xdp frame start address octeontx2-pf: Remove xdp queues on program detach octeontx2-af: mcs: Fix sa entries size octeontx2-pf: Fix adding mbox work queue entry when num_vfs > 64 George Cherian (2): watchdog: sbsa_gwdt: Apply the Errata workaround seen on CN10K Processors watchdog:marvell_gti: Update missing MODULE_LICENSE Hariprasad Kelam (2): octeontx2-pf: Qos: Validate quantum parameter octeontx2-pf: Qos: fix root node dwrr priority corruption Kevin Hao (1): drivers: mpam: Drop the improper assertions Kiran Kumar K (1): octeontx2-af: Add KPU parsing support for IPV6 SRH header Linu Cherian (6): coresight: tmc: Keep reserved region parsing common coresight: core: Add provision for panic callbacks coresight: tmc: Enable panic sync handling coresight: etm4x: Configure ETM to trigger on panic coresight: cti: Add CTI id for Neoverse N2 core CTI coresight: tmc: Stop trace capture on FlIn Min Li (2): ptp: idt82p33: Add PTP_CLK_REQ_EXTTS support ptp: idt82p33: remove PEROUT_ENABLE_OUTPUT_MASK Naveen Mamindlapalli (7): octeontx2-bphy-netdev: Fix register offset definitions octeontx2-bphy-netdev: cnf10k: don't drop packets with macsec errors driver: mfd/misc/ptp: update renasas smu drivers to v1.0 tag ptp_clockmatrix: print driver version during probe octeontx2-pf: Use TL2 level for egress match all configuration octeontx2-bphy-netdev: Add an ioctl to reset PTP PHC sw timecounter offset octeontx-bphy-netdev: enable mbt full drop enable Nithin Dabilpuram (2): crypto: octeontx2: support setting ctx ilen for inline CPT LF octeontx2-af: avoid RXC register access in FLR on CN10KB Ratheesh Kannoth (3): octeontx2-pf: Add support for page pool octeontx2-pf: TC flower offload support for rxqueue mapping octeontx-pf: Fix Call trace' while running netdev rss test Ruiqiang Hao (2): mmc: cavium-thunderx: Drop the IRQF_NO_THREAD constraint octeontx2-pf: drop unused parts introduced by marvell SDK12 Sai Krishna (1): octeontx2-pf: Use HW PTP timestamp atomic update to avoid SW timecounter. Sebastien Dubois (4): drivers: mrvl_swup: Add logging for clone and get_version calls drivers: mrvl_swup: Add logging for read flash call drivers: mrvl_swup: Add debug flag for SMC calls drivers: mrvl_swup: clear SMC log buffer for each SMC call Srujana Challa (3): crypto: octeontx2: add devlink option to set t106 mode crypto: octeontx2: fix opcode incase of SGv2 crypto: octeontx2: fix devlink params get callback Subbaraya Sundeep (3): octeontx2-pf: mcs: Support VLAN in clear text macsec: Use helper macsec_netdev_priv for offload drivers octeontx2-af: Remove the PF_FUNC validation for NPC transmit rules Suman Ghosh (6): octeontx2-pf: Allow ntuple rule to direct packet to VF with higher Rx queue than its PF octeontx2-pf: Fix memory leak during interface down octeontx2-af: Add a new mbox to read/write MCAM hit status octeontx2-af: Tc flower offload support for inner VLAN octeonxt2-pf: Fix backpressure config for multiple PFC priorities to work simultaneously. octeontx2-af: Remove MAC address validation check Suneel Garapati (2): drivers: spi: Add arbitration support for Cadence SPI spi: Add xfer() function for cadence xSPI Sunil Goutham (1): octeontx-83: Ignore BGX operations for LBK interfaces Vasyl Gomonovych (1): driver: edac: octeontx: Init MC grain Witold Sadowski (1):
[linux-yocto][v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc][PATCH] gpio: zynq: fix zynqmp_gpio not an immutable chip warning
From: Manikanta Guntupalli commit f5691439353783ef114876849c70d2a641e09498 upstream. Make the struct irq_chip const and flag it as IRQCHIP_IMMUTABLE, call gpiochip_disable_irq() in the .irq_mask() callback and gpiochip_enable_irq() in the .irq_unmask() callback to fix "gpio gpiochip1: (zynqmp_gpio): not an immutable chip" warning. Signed-off-by: Manikanta Guntupalli Reviewed-by: Linus Walleij Signed-off-by: Bartosz Golaszewski --- Hi Bruce, Would you please help merge this patch to the branches: v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc v6.1/standard/sdkv6.1/xlnx-soc Thanks, Quanyang --- drivers/gpio/gpio-zynq.c | 22 +++--- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c index 06c6401f02b89..c334e46033bae 100644 --- a/drivers/gpio/gpio-zynq.c +++ b/drivers/gpio/gpio-zynq.c @@ -151,8 +151,8 @@ struct zynq_platform_data { int bank_max[ZYNQMP_GPIO_MAX_BANK]; }; -static struct irq_chip zynq_gpio_level_irqchip; -static struct irq_chip zynq_gpio_edge_irqchip; +static const struct irq_chip zynq_gpio_level_irqchip; +static const struct irq_chip zynq_gpio_edge_irqchip; /** * zynq_gpio_is_zynq - test if HW is zynq or zynqmp @@ -404,9 +404,12 @@ static int zynq_gpio_get_direction(struct gpio_chip *chip, unsigned int pin) static void zynq_gpio_irq_mask(struct irq_data *irq_data) { unsigned int device_pin_num, bank_num, bank_pin_num; + const unsigned long offset = irqd_to_hwirq(irq_data); + struct gpio_chip *chip = irq_data_get_irq_chip_data(irq_data); struct zynq_gpio *gpio = gpiochip_get_data(irq_data_get_irq_chip_data(irq_data)); + gpiochip_disable_irq(chip, offset); device_pin_num = irq_data->hwirq; zynq_gpio_get_bank_pin(device_pin_num, _num, _pin_num, gpio); writel_relaxed(BIT(bank_pin_num), @@ -425,9 +428,12 @@ static void zynq_gpio_irq_mask(struct irq_data *irq_data) static void zynq_gpio_irq_unmask(struct irq_data *irq_data) { unsigned int device_pin_num, bank_num, bank_pin_num; + const unsigned long offset = irqd_to_hwirq(irq_data); + struct gpio_chip *chip = irq_data_get_irq_chip_data(irq_data); struct zynq_gpio *gpio = gpiochip_get_data(irq_data_get_irq_chip_data(irq_data)); + gpiochip_enable_irq(chip, offset); device_pin_num = irq_data->hwirq; zynq_gpio_get_bank_pin(device_pin_num, _num, _pin_num, gpio); writel_relaxed(BIT(bank_pin_num), @@ -590,7 +596,7 @@ static void zynq_gpio_irq_relres(struct irq_data *d) } /* irq chip descriptor */ -static struct irq_chip zynq_gpio_level_irqchip = { +static const struct irq_chip zynq_gpio_level_irqchip = { .name = DRIVER_NAME, .irq_enable = zynq_gpio_irq_enable, .irq_eoi= zynq_gpio_irq_ack, @@ -601,10 +607,11 @@ static struct irq_chip zynq_gpio_level_irqchip = { .irq_request_resources = zynq_gpio_irq_reqres, .irq_release_resources = zynq_gpio_irq_relres, .flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | - IRQCHIP_MASK_ON_SUSPEND, + IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, + GPIOCHIP_IRQ_RESOURCE_HELPERS, }; -static struct irq_chip zynq_gpio_edge_irqchip = { +static const struct irq_chip zynq_gpio_edge_irqchip = { .name = DRIVER_NAME, .irq_enable = zynq_gpio_irq_enable, .irq_ack= zynq_gpio_irq_ack, @@ -614,7 +621,8 @@ static struct irq_chip zynq_gpio_edge_irqchip = { .irq_set_wake = zynq_gpio_set_wake, .irq_request_resources = zynq_gpio_irq_reqres, .irq_release_resources = zynq_gpio_irq_relres, - .flags = IRQCHIP_MASK_ON_SUSPEND, + .flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, + GPIOCHIP_IRQ_RESOURCE_HELPERS, }; static void zynq_gpio_handle_bank_irq(struct zynq_gpio *gpio, @@ -962,7 +970,7 @@ static int zynq_gpio_probe(struct platform_device *pdev) /* Set up the GPIO irqchip */ girq = >irq; - girq->chip = _gpio_edge_irqchip; + gpio_irq_chip_set_chip(girq, _gpio_edge_irqchip); girq->parent_handler = zynq_gpio_irqhandler; girq->num_parents = 1; girq->parents = devm_kcalloc(>dev, 1, -- 2.36.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12981): https://lists.yoctoproject.org/g/linux-yocto/message/12981 Mute This Topic: https://lists.yoctoproject.org/mt/100792612/21656 Group Owner: linux-yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-