![John Crispin](/assets/img/avatar_default.png)
The Lantiq family of SoCs have a EBU (External Bus Unit). This patch adds the driver that allows us to use the EBU as a PCI controller. In order for PCI to work the EBU is set to endianess swap all the data. In addition we need to make use of SWAP_IO_SPACE for device->host DMA to work. The clock of the PCI works in several modes (internal/external). If this is not configured correctly the SoC will hang. Signed-off-by: John Crispin <blogic@openwrt.org> Signed-off-by: Ralph Hempel <ralph.hempel@lantiq.com> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2250/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
19 lines
572 B
C
19 lines
572 B
C
/*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License version 2 as published
|
|
* by the Free Software Foundation.
|
|
*
|
|
* Copyright (C) 2010 John Crispin <blogic@openwrt.org>
|
|
*/
|
|
|
|
#ifndef _LTQ_PCI_H__
|
|
#define _LTQ_PCI_H__
|
|
|
|
extern __iomem void *ltq_pci_mapped_cfg;
|
|
extern int ltq_pci_read_config_dword(struct pci_bus *bus,
|
|
unsigned int devfn, int where, int size, u32 *val);
|
|
extern int ltq_pci_write_config_dword(struct pci_bus *bus,
|
|
unsigned int devfn, int where, int size, u32 val);
|
|
|
|
#endif
|