29 Sep, 2015
1 commit
-
of_default_bus_match_table was not exported earlier, so it could only
be accessed by code compiled into the kernel. A new function
of_platform_default_populate() was added which uses
of_default_bus_match_table and this function is also exported. This way
it is possible to create a bus with the content of
of_default_bus_match_table and we can remove the hacks from bcma.Signed-off-by: Hauke Mehrtens
Signed-off-by: Kalle Valo
18 Aug, 2015
1 commit
-
This switches the BCMA GPIO driver to use GPIOLIB_IRQCHIP to
handle its interrupts instead of rolling its own copy of the
irqdomain handling etc.Signed-off-by: Linus Walleij
Signed-off-by: Hauke Mehrtens
Signed-off-by: Kalle Valo
11 Aug, 2015
1 commit
-
bus->host_pdev is part of a union so bus->host_pdev != NULL is probably
also true for PCIe devices, because there it accesses bus->host_pci. If
we access the dev member at the offset defined in struct
platform_device in struct pci_dev instead we probably get something
else.This patch adds a new function which returns the host dev struct and
NULL if we do not have a host dev. When this gets registered on MIPS
brcm47xx we do not have a host dev in some situations.
This function could also be used in other places.This problem was introduced in this commit:
commit cae761b5a6bdc597ba476a040fdcd5b4bc559b85
Author: Rafa? Mi?ecki
Date: Sun Jun 28 17:17:13 2015 +0200bcma: populate bus DT subnodes as platform_device-s
Signed-off-by: Hauke Mehrtens
Signed-off-by: Kalle Valo
26 Jul, 2015
1 commit
-
Currently of_default_bus_match_table is not exported so we can only use
this feature when bcma is build into the kernel. This patch removes
support for child buses when bcma is build as a module as a temporary
fix for a build problem introduces in this commit:commit cae761b5a6bdc597ba476a040fdcd5b4bc559b85
Author: Rafał Miłecki
Date: Sun Jun 28 17:17:13 2015 +0200bcma: populate bus DT subnodes as platform_device-s
Reported-by: Stephen Rothwell
Fixes: cae761b5a6bd ("bcma: populate bus DT subnodes as platform_device-s")
Signed-off-by: Hauke Mehrtens
Signed-off-by: Kalle Valo
21 Jul, 2015
1 commit
-
Our bus should allow defining children nodes as we may want to specify
devices attached to the bus. This is required e.g. to specify NAND or
ChipCommon cores and use bus's address and IRQ mappings.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
08 Jun, 2015
1 commit
-
This extension of BCMA_DRIVER_PCI has no reason to depend on
BCMA_HOST_PCI. User may just want to have PCI device attached to SoC
registered without enabling any extra client mode code.
This can be useful when having non-bcma PCI device attached or when
using other PCI driver.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
09 May, 2015
2 commits
-
Signed-off-by: Felix Fietkau
Signed-off-by: Kalle Valo -
On some BCM5301x ARM devices, user space still needs to control some
system GPIO pins for which no driver exists. This is a lot easier to do
with a predictable GPIO base.Signed-off-by: Felix Fietkau
Signed-off-by: Kalle Valo
18 Apr, 2015
1 commit
-
Pull MIPS updates from Ralf Baechle:
"This is the main pull request for MIPS for Linux 4.1. Most
noteworthy:- Add more Octeon-optimized crypto functions
- Octeon crypto preemption and locking fixes
- Little endian support for Octeon
- Use correct CSR to soft reset Octeons
- Support LEDs on the Octeon-based DSR-1000N
- Fix PCI interrupt mapping for the Octeon-based DSR-1000N
- Mark prom_free_prom_memory() as __init for a number of systems
- Support for Imagination's Pistachio SOC. This includes arch and
CLK bits. I'd like to merge pinctrl bits later
- Improve parallelism of csum_partial for certain pipelines
- Organize DTB files in subdirs like other architectures
- Implement read_sched_clock for all MIPS platforms other than
Octeon
- Massive series of 38 fixes and cleanups for the FPU emulator /
kernel
- Further FPU remulator work to support new features. This sits on a
separate branch which also has been pulled into the 4.1 KVM branch
- Clean up and fixes for the SEAD3 eval board; remove unused file
- Various updates for Netlogic platforms
- A number of small updates for Loongson 3 platforms
- Increase the memory limit for ATH79 platforms to 256MB
- A fair number of fixes and updates for BCM47xx platforms
- Finish the implementation of XPA support
- MIPS FDC support. No, not floppy controller but Fast Debug Channel :)
- Detect the R16000 used in SGI legacy platforms
- Fix Kconfig dependencies for the SSB bus support"* 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (265 commits)
MIPS: Makefile: Fix MIPS ASE detection code
MIPS: asm: elf: Set O32 default FPU flags
MIPS: BCM47XX: Fix detecting Microsoft MN-700 & Asus WL500G
MIPS: Kconfig: Disable SMP/CPS for 64-bit
MIPS: Hibernate: flush TLB entries earlier
MIPS: smp-cps: cpu_set FPU mask if FPU present
MIPS: lose_fpu(): Disable FPU when MSA enabled
MIPS: ralink: add missing symbol for RALINK_ILL_ACC
MIPS: ralink: Fix bad config symbol in PCI makefile.
SSB: fix Kconfig dependencies
MIPS: Malta: Detect and fix bad memsize values
Revert "MIPS: Avoid pipeline stalls on some MIPS32R2 cores."
MIPS: Octeon: Delete override of cpu_has_mips_r2_exec_hazard.
MIPS: Fix cpu_has_mips_r2_exec_hazard.
MIPS: kernel: entry.S: Set correct ISA level for mips_ihb
MIPS: asm: spinlock: Fix addiu instruction for R10000_LLSC_WAR case
MIPS: r4kcache: Use correct base register for MIPS R6 cache flushes
MIPS: Kconfig: Fix typo for the r2-to-r6 emulator kernel parameter
MIPS: unaligned: Fix regular load/store instruction emulation for EVA
MIPS: unaligned: Surround load/store macros in do {} while statements
...
01 Apr, 2015
1 commit
-
There are two reasons for having this header in the common place:
1) Simplifying drivers that read NVRAM entries. We will be able to
safely call bcm47xx_nvram_* functions without #ifdef-s.
2) Getting NVRAM driver out of MIPS arch code. This is needed to support
BCM5301X arch which also requires this NVRAM driver. Patch for that
will follow once we get is reviewed.Signed-off-by: Rafał Miłecki
Acked-by: Hauke Mehrtens
Cc: linux-mips@linux-mips.org
Cc: Arnd Bergmann
Cc: Paul Walmsley
Cc: linux-soc@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/8619/
Signed-off-by: Ralf Baechle
20 Mar, 2015
1 commit
-
Some BCM47XX SoC routers have LEDs connected to extra PCIe bcma buses.
Handling them in arch code requires predictable GPIO numbers.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
13 Mar, 2015
3 commits
-
This reverts commit b09f5ec18b16b82f4db8a735e453332db7514275.
Now that we have fully working BCMA_DRIVER_PCI symbol (in can be safely
disabled), there is no risk bcma will try to use PCI code without PCI
available.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
It isn't required for bcma bus on SoCs, so provide some empty functions
and allow disabling it.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
This function isn't really related to any bus core. It touches PCI
device config registers only, so move it to the (PCI) host file.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
05 Mar, 2015
3 commits
-
Driver for PCIe core requires PCI to be enabled, however we shouldn't
require it for the whole bus. Someone may be not interested in extra
PCI devices and what's more there are SoCs without any PCI at all (like
BCM5356C0, BCM5357*, BCM47186B0). For more details see Kconfig "help".
Please note this patch doesn't allow disabling PCI drivers yet, as it
requires more work on calls to bcma_core_pci_* functions.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
These functions are not exported nor used anywhere, so there is no
reason to put them in public headers.
Also drop unused bcma_chipco_(suspend|resume).Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
bcma also needs PCI, just like IOMEM and DMA, so let it depend on PCI,
or will cause building break for allmodconfig under c6x:CC [M] drivers/bcma/driver_pcie2.o
drivers/bcma/driver_pcie2.c: In function 'bcma_core_pcie2_up':
drivers/bcma/driver_pcie2.c:196:8: error: implicit declaration of function 'pcie_set_readrq' [-Werror=implicit-function-declaration]
err = pcie_set_readrq(dev, pcie2->reqsize);
^Signed-off-by: Chen Gang
Signed-off-by: Kalle Valo
03 Mar, 2015
2 commits
-
Just like on BCM47XX arch, BCM5301X also has ChipCommon with IRQ for
GPIOs. Now we have interrupts working on BCM5301X we can finally make
use of it. This has been successfully tested on 5 different devices
(Buffalo, Luxul, Netgear).Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
kbuild found out that commit 804e27dee49e ("bcma: support bringing up
bus hosted on PCIe Gen 2") broke the build on m68k:drivers/bcma/driver_pcie2.c: In function 'bcma_core_pcie2_up':
>> drivers/bcma/driver_pcie2.c:196:2: error: implicit declaration of function 'pcie_set_readrq' [-Werror\
=implicit-function-declaration]
err = pcie_set_readrq(dev, pcie2->reqsize);
^
cc1: some warnings being treated as errorsReported-by: kbuild test robot
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
02 Mar, 2015
4 commits
-
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
It doesn't operate on PCI core, but PCI host device, so there is no
point of passing core related struct.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
Bringing PCIe hosted bus up requires operating on host-related core.
Since we plan to support PCIe Gen 2 devices we should provide a helper
picking the correct one (PCIE or PCIE2).Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
29 Jan, 2015
6 commits
-
This is stil incomplete, so we don't add PCI IDs of new devices yet.
Purpose of this patch is to allow testing & adjusting rest of the code.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
There are some PCIe core fixes that need to be applied before accessing
SPROM, otherwise reading it may fail.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
This allows us to drop some #ifdef magic (mess).
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
Extracting values from it is still unsupported, but at least we'll
display some meaningful error now.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
These chipsets don't need changing clock mode.
Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
24 Jan, 2015
2 commits
-
Starting with kernel 3.19-rc1 early registration of bcma on MIPS is done
a bit later, with memory allocator available. This allows us to simplify
code by using standard bus scanning method.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo -
This moves main bus init code to the main.c and renames old function to
make its purpose clear.
Thanks to this change we'll also be able to separate scanning from
registration (and support PCIe Gen 2 devices) in the future.Signed-off-by: Rafał Miłecki
Signed-off-by: Kalle Valo
15 Jan, 2015
1 commit
-
Three lines with more than 80 characters per line have been split in several lines.
Signed-off-by: Oscar Forner Martinez
Acked-by: Rafa? Mi?ecki
Signed-off-by: Kalle Valo
12 Dec, 2014
1 commit
-
Pull MIPS updates from Ralf Baechle:
"This is an unusually large pull request for MIPS - in parts because
lots of patches missed the 3.18 deadline but primarily because some
folks opened the flood gates.- Retire the MIPS-specific phys_t with the generic phys_addr_t.
- Improvments for the backtrace code used by oprofile.
- Better backtraces on SMP systems.
- Cleanups for the Octeon platform code.
- Cleanups and fixes for the Loongson platform code.
- Cleanups and fixes to the firmware library.
- Switch ATH79 platform to use the firmware library.
- Grand overhault to the SEAD3 and Malta interrupt code.
- Move the GIC interrupt code to drivers/irqchip
- Lots of GIC cleanups and updates to the GIC code to use modern IRQ
infrastructures and features of the kernel.
- OF documentation updates for the GIC bindings
- Move GIC clocksource driver to drivers/clocksource
- Merge GIC clocksource driver with clockevent driver.
- Further updates to bring the GIC clocksource driver up to date.
- R3000 TLB code cleanups
- Improvments to the Loongson 3 platform code.
- Convert pr_warning to pr_warn.
- Merge a bunch of small lantiq and ralink fixes that have been
staged/lingering inside the openwrt tree for a while.
- Update archhelp for IP22/IP32
- Fix a number of issues for Loongson 1B.
- New clocksource and clockevent driver for Loongson 1B.
- Further work on clk handling for Loongson 1B.
- Platform work for Broadcom BMIPS.
- Error handling cleanups for TurboChannel.
- Fixes and optimization to the microMIPS support.
- Option to disable the FTLB.
- Dump more relevant information on machine check exception
- Change binfmt to allow arch to examine PT_*PROC headers
- Support for new style FPU register model in O32
- VDSO randomization.
- BCM47xx cleanups
- BCM47xx reimplement the way the kernel accesses NVRAM information.
- Random cleanups
- Add support for ATH25 platforms
- Remove pointless locking code in some PCI platforms.
- Some improvments to EVA support
- Minor Alchemy cleanup"* 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (185 commits)
MIPS: Add MFHC0 and MTHC0 instructions to uasm.
MIPS: Cosmetic cleanups of page table headers.
MIPS: Add CP0 macros for extended EntryLo registers
MIPS: Remove now unused definition of phys_t.
MIPS: Replace use of phys_t with phys_addr_t.
MIPS: Replace MIPS-specific 64BIT_PHYS_ADDR with generic PHYS_ADDR_T_64BIT
PCMCIA: Alchemy Don't select 64BIT_PHYS_ADDR in Kconfig.
MIPS: lib: memset: Clean up some MIPS{EL,EB} ifdefery
MIPS: iomap: Use __mem_{read,write}{b,w,l} for MMIO
MIPS: fix indentation.
MAINTAINERS: Add entry for BMIPS multiplatform kernel
MIPS: Enable VDSO randomization
MIPS: Remove a temporary hack for debugging cache flushes in SMTC configuration
MIPS: Remove declaration of obsolete arch_init_clk_ops()
MIPS: atomic.h: Reformat to fit in 79 columns
MIPS: Apply `.insn' to fixup labels throughout
MIPS: Fix microMIPS LL/SC immediate offsets
MIPS: Kconfig: Only allow 32-bit microMIPS builds
MIPS: signal.c: Fix an invalid cast in ISA mode bit handling
MIPS: mm: Only build one microassembler that is suitable
...
24 Nov, 2014
1 commit
-
This drops ssb/bcma dependency and will allow us to make it a standalone
driver.Signed-off-by: Rafał Miłecki
Cc: linux-mips@linux-mips.org
Cc: Hauke Mehrtens
Patchwork: https://patchwork.linux-mips.org/patch/8233/
Signed-off-by: Ralf Baechle
20 Nov, 2014
1 commit
-
…pub/scm/linux/kernel/git/linville/wireless
12 Nov, 2014
2 commits
-
It is not possible to auto detect the irq numbers used by the cores on
an arm SoC. If bcma was registered with device tree it will search for
some device tree nodes with the irq number and add it to the core
configuration.Signed-off-by: Hauke Mehrtens
Signed-off-by: John W. Linville -
This moves bcma_core_irq() to main.c and add a extra parameter with a
number so that we can return different irq number for devices with more
than one.Signed-off-by: Hauke Mehrtens
Signed-off-by: John W. Linville
28 Oct, 2014
1 commit
-
We were setting things like dma_dev, IRQ, etc. during core registration
only. We need such info for cores handled internally (e.g. ChipCommon)
as well.Signed-off-by: Rafał Miłecki
Acked-by: Hauke Mehrtens
Signed-off-by: John W. Linville
24 Oct, 2014
2 commits
-
It was found attached to the BCM47081A0 SoC. Log:
bcma: bus0: Found chip with id 43228, rev 0x00 and package 0x08Signed-off-by: Rafał Miłecki
Signed-off-by: John W. Linville -
Commit 2101e533f41a ("bcma: register bcma as device tree driver")
introduces a hard dependency on OF_ADDRESS into the bcma driver.
OF_ADDRESS is specifically disabled for the sparc architecture.
This results in the following error when building sparc64:allmodconfig.drivers/bcma/main.c: In function 'bcma_of_find_child_device':
drivers/bcma/main.c:150:3: error: implicit declaration of function 'of_translate_address'Fixes: 2101e533f41a ("bcma: register bcma as device tree driver")
Reported-by: Guenter Roeck
Signed-off-by: Hauke Mehrtens
Reviewed-by: Guenter Roeck
Signed-off-by: John W. Linville