Re: [linux-yocto] [PATCH v4.14&v4.15] linux-yocto: Fix the Ethernet broken on mpc8315e-rdb board
On 03/21/2018 02:32 AM, Kevin Hao wrote: This patch series fix the Ethernet broken on the mpc8315erdb board introduced by commit b6b5e8a69118 ("gianfar: Disable EEE autoneg by default"). The two kernel patches are based some suggestions from Andrew Lunn(PHY maintainer), and I have sent them to netdev mail list, and get no objection so far. Good enough for me. I've merged these changes and will send SRCREV updates in a day or so. If there are any changes based on the upstream comments, send additional patches. Bruce Thanks, Kevin -- ___ linux-yocto mailing list linux-yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/linux-yocto
Re: [linux-yocto] [kernel-cache][PATCH] features/wifi: Add WiFi driver fragments for various vendors/interfaces
On 03/20/2018 10:10 AM, Nathan Rossi wrote: This change adds WiFi driver configuration fragments. The fragments are split into vendor and interface files to allow for easy selection of drivers for specific interface types (USB, PCI, SDIO) which is useful for BSPs with specific interfaces. The specific vendor/interface config fragments can be included by specific BSPs in its .scc files. However .scc files (wifi-*.scc) are provided to allow enabling interface specific or all interfaces drivers via KERNEL_FEATURES or inclusion via other .scc files. And wifi-common.scc is provided to enable the base config options required for all WiFi drivers, which is done to ensure correct configuration for default no config setups (e.g. linux-yocto-tiny). This patch only enables a limited set of drivers, which is based on what the common-pc-wifi.cfg fragment sets as well as some additional drivers, that primarily appear in USB WiFi devices. These changes look good to me. I'll let them sit on the list for another day or so, and see if anyone else has any comments. Signed-off-by: Nathan Rossi --- These changes are very similar to a set of configuration fragments that were included (?) in minnow branches in ~2013. However they never made it into the current set of configuration fragments. https://lists.yoctoproject.org/pipermail/linux-yocto/2013-November/001393.html Interesting. I'm not sure how they ended up getting dropped or lost, but when I merge this, it will go into the versioned branches and master, so it can't be lost again. Also whilst not in this patch, if accepted these fragments could replace the common-pc-wifi.cfg to reduce duplication. Indeed. We can look at that in follow up commits. For completeness I have tested these fragments on linux-yocto version v4.14 and v4.15 for qemux86, qemux86-64 and qemuarm builds as well as for the beaglebone-yocto target. For v4.12 compatibility, due to the iwlwifi fragments adding patches (which do not apply correctly to standard/base) the fragments would need to be modified. What configuration were you building to trigger those errors ? Just qemux86-64 ? something else ? The patches should have been ignored, as long as the fragment wasn't directly on the SRC_URI. Bruce --- features/wifi/atheros-pci.cfg | 11 +++ features/wifi/atheros-usb.cfg | 8 features/wifi/broadcom-pci.cfg | 11 +++ features/wifi/broadcom-sdio.cfg | 11 +++ features/wifi/broadcom-usb.cfg | 7 +++ features/wifi/mediatek-pci.cfg | 3 +++ features/wifi/mediatek-usb.cfg | 3 +++ features/wifi/ralink-pci.cfg| 15 +++ features/wifi/ralink-usb.cfg| 12 features/wifi/realtek-pci.cfg | 18 ++ features/wifi/realtek-usb.cfg | 11 +++ features/wifi/wifi-all.scc | 7 +++ features/wifi/wifi-common.cfg | 4 features/wifi/wifi-common.scc | 7 +++ features/wifi/wifi-pci.scc | 14 ++ features/wifi/wifi-sdio.scc | 7 +++ features/wifi/wifi-usb.scc | 11 +++ 17 files changed, 160 insertions(+) create mode 100644 features/wifi/atheros-pci.cfg create mode 100644 features/wifi/atheros-usb.cfg create mode 100644 features/wifi/broadcom-pci.cfg create mode 100644 features/wifi/broadcom-sdio.cfg create mode 100644 features/wifi/broadcom-usb.cfg create mode 100644 features/wifi/mediatek-pci.cfg create mode 100644 features/wifi/mediatek-usb.cfg create mode 100644 features/wifi/ralink-pci.cfg create mode 100644 features/wifi/ralink-usb.cfg create mode 100644 features/wifi/realtek-pci.cfg create mode 100644 features/wifi/realtek-usb.cfg create mode 100644 features/wifi/wifi-all.scc create mode 100644 features/wifi/wifi-common.cfg create mode 100644 features/wifi/wifi-common.scc create mode 100644 features/wifi/wifi-pci.scc create mode 100644 features/wifi/wifi-sdio.scc create mode 100644 features/wifi/wifi-usb.scc diff --git a/features/wifi/atheros-pci.cfg b/features/wifi/atheros-pci.cfg new file mode 100644 index 00..1c48a0528a --- /dev/null +++ b/features/wifi/atheros-pci.cfg @@ -0,0 +1,11 @@ +CONFIG_WLAN_VENDOR_ATH=y + +# ath5k +CONFIG_ATH5K=m + +# ath9k +CONFIG_ATH9K=m +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_PCI=y + diff --git a/features/wifi/atheros-usb.cfg b/features/wifi/atheros-usb.cfg new file mode 100644 index 00..b9767dc164 --- /dev/null +++ b/features/wifi/atheros-usb.cfg @@ -0,0 +1,8 @@ +CONFIG_WLAN_VENDOR_ATH=y + +# ath9k +CONFIG_ATH9K=m +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_HTC=y + diff --git a/features/wifi/broadcom-pci.cfg b/features/wifi/broadcom-pci.cfg new file mode 100644 index 00..2b5abe5842 --- /dev/null +++ b/features/wifi/broadcom-pci.cfg @@ -0,0 +1,11 @@ +CONFIG_WLAN_VENDOR_BROADCOM=y + +# brcm80211 +CONFIG_BRCMUTIL=m +CONFIG_BRCMSMAC=m +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PCIE=y + +# b43 +CONFIG_B43
Re: [linux-yocto] [PATCH 077/269] kernel/irq/manage.c: Fix irq_set_affinity to allow use with buslocks
On 03/02/2018 12:46 PM, Daniel Dragomir wrote: From: David Mercado Modify irq_set_affinity() to allow usage of bus locks with "slow bus" IRQ controllers. This only affects those BSPs that use bus locks in their IRQ controllers, such as the LSI Axxia GIC. The recommendation for this change originated from Thomax Gleixner at Linutronix. Signed-off-by: David Mercado --- kernel/irq/manage.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 425170d..ff0 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -244,16 +244,16 @@ int irq_set_affinity_locked(struct irq_data *data, const struct cpumask *mask, int __irq_set_affinity(unsigned int irq, const struct cpumask *mask, bool force) { - struct irq_desc *desc = irq_to_desc(irq); unsigned long flags; + struct irq_desc *desc = irq_get_desc_buslock(irq, &flags, + IRQ_GET_DESC_CHECK_GLOBAL); int ret; if (!desc) return -EINVAL; - raw_spin_lock_irqsave(&desc->lock, flags); ret = irq_set_affinity_locked(irq_desc_get_irq_data(desc), mask, force); - raw_spin_unlock_irqrestore(&desc->lock, flags); + irq_put_desc_busunlock(desc, flags); I'd suggest that this just be an #idef'd implementation of the entire __irq_set_affinity(). Make it selected by the board's top level Kconfig. Bruce return ret; } -- ___ linux-yocto mailing list linux-yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/linux-yocto
Re: [linux-yocto] [PATCH 052/269] arch/arm: arm changes to support the axxia BSP
On 03/02/2018 12:46 PM, Daniel Dragomir wrote: From: Charlie Paul These files were changed to support the LSI axxia 5500 board. I'm finally looking at these, sorry for the delay. See some questions below. I have questions, since this commit log has no details. :D Signed-off-by: Charlie Paul Signed-off-by: John Jacques --- arch/arm/Kconfig | 84 ++- arch/arm/Kconfig.debug| 4 ++ arch/arm/Makefile | 2 +- arch/arm/include/asm/kmap_types.h | 5 +++ arch/arm/include/asm/spinlock.h | 6 +++ arch/arm/kernel/head.S| 8 arch/arm/kernel/irq.c | 2 +- arch/arm/kernel/perf_event_v7.c | 3 +- arch/arm/tools/mach-types | 1 + 9 files changed, 111 insertions(+), 4 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index c0fcab6..0f6c9e0 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -359,6 +359,29 @@ config ARM_SINGLE_ARMV7M select SPARSE_IRQ select USE_OF +config ARCH_AXXIA + bool "LSI Axxia family" + select ARCH_PHYS_ADDR_T_64BIT + select ARCH_DMA_ADDR_T_64BIT + select ARCH_WANT_OPTIONAL_GPIOLIB + select ARM_AMBA + select COMMON_CLK + select CLKDEV_LOOKUP + select CLKSRC_MMIO + select GENERIC_CLOCKEVENTS + select HAVE_CLK + select HAVE_PATA_PLATFORM + select ARM_TIMER_SP804 + select ICST + select NEED_MACH_IO_H + select ZONE_DMA + select PCI + select PCI_DOMAINS if PCI + select ARCH_SUPPORTS_MSI if PCI + select HAS_RAPIDIO + help + This enables support for the LSI Axxia boards. + config ARCH_EBSA110 bool "EBSA-110" select ARCH_USES_GETTIMEOFFSET @@ -839,6 +862,8 @@ source "arch/arm/mach-ux500/Kconfig" source "arch/arm/mach-versatile/Kconfig" +source "arch/arm/mach-axxia/Kconfig" + source "arch/arm/mach-vexpress/Kconfig" source "arch/arm/plat-versatile/Kconfig" @@ -1268,6 +1293,19 @@ source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" +config HAS_RAPIDIO + bool + default n + +config RAPIDIO + bool "RapidIO support" + depends on HAS_RAPIDIO || PCI Shouldn't this be an "&&", not an "||" ? This is going to get turned on for every config that has PCI, which from the HAS_RAPIDIO doesn't look to be the intent. + help + If you say Y here, the kernel will include drivers and + infrastructure code to support RapidIO interconnect devices. + +source "drivers/rapidio/Kconfig" + endmenu menu "Kernel Features" @@ -1438,12 +1476,46 @@ config NR_CPUS depends on SMP default "4" +menu "Support for hot-pluggable CPUs" + config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" - depends on SMP + depends on SMP && HOTPLUG I don't see why this is being changed. Depending on SMP should still be enough. help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. +choice + prompt "CPU Power Down Mode" + default HOTPLUG_CPU_COMPLETE_POWER_DOWN + help + This is used to select how the CPU is going to be powered down. If LOW POWER + is selected then the CPU enters a WFI state and waits for an interrupt to + wake up. If COMPLETE POWER down is selected the CPU power is turned off. The only + way to power on the CPU is to execute a command. + +config HOTPLUG_CPU_COMPLETE_POWER_DOWN + bool "Power off the CPU" + help + This will power off the CPU completely. The irqs are migrated + to another CPU. + +config HOTPLUG_CPU_LOW_POWER + bool "Low Power CPU (wfi)" + help + This will put the CPU into a low power mode wfi mode. When an interrupt + is received the CPU will power on again. + +endchoice + +config HOTPLUG_CPU_L2_POWER_DOWN + bool "Power Off L2 Cache" + depends on HOTPLUG_CPU_COMPLETE_POWER_DOWN + default n if HOTPLUG_CPU_LOW_POWER + help + Select this if you want to power down the L2 cache when + all CPUS of a cluster have been powered off. + +endmenu config ARM_PSCI bool "Support for the ARM Power State Coordination Interface (PSCI)" @@ -1456,6 +1528,16 @@ config ARM_PSCI 0022A ("Power State Coordination Interface System Software on ARM processors"). +config LOCAL_TIMERS + bool "Use local timer interrupts" + depends on SMP + default y A new option, should never be default 'y'. This should be default 'n' and just add it to your config frags, or select it in the top level board Kconfig. + help + Enable support for local timers on SMP platforms, rather then the + legacy IPI broadcast method. Local timers all