Commit Graph

245 Commits

Author SHA1 Message Date
Sonic Zhang eb06c06494 blackfin: serial: Add serial port_fer and port_mux early platform resources.
The serial driver sets up port function manually in early platform probe stage
if the ADI GPIO2 driver is used. Remove the bfin_sport_uart early platform
devices.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
2013-11-15 18:14:33 +08:00
Sonic Zhang 54e4ff4d40 blackfin: adi gpio driver and pinctrl driver support
Remove gpio driver for new gpio controller on BF54x and BF60x.
Build the bfin_gpio driver only when other BF5xx processors are selected.
Replace the prefix of some gpio and peripheral functions with adi.
add portmux platform data in machine portmux.h

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Steven Miao <realmz6@gmail.com>
2013-11-15 17:33:42 +08:00
Lars-Peter Clausen 15502e0ca0 blackfin: Remove references to the bf5x_tdm driver
The bf5x_tdm driver has been removed. Remove all references to it from board
code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-30 12:33:41 +01:00
Sonic Zhang f1a1d52508 blackfin: anomaly: add anomaly 16000030 for bf5xx
Drivers common to both bf5xx and bf60x chip families may use this anomaly id.
So add it to bf5xx header files also.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-12-13 15:22:03 +08:00
Sonic Zhang 11b27cb5b9 bf60x: sec: Clean up interrupt initialization code for SEC.
Turn SEC related macro CONFIG_BF60x into SEC_GCTL.
Move machine specific GPIO_PINT macros to machine gpio header.
Split SEC init_arch_irq() and vec_to_irq() from old SIC.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-07-24 13:39:51 +08:00
Bob Liu b091694b5f blackfin: fix musb macro name
Musb can't work since the marco name has been changed.

Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-07-24 13:39:51 +08:00
Sonic Zhang cf93feb3a0 blackfin: twi: Move TWI peripheral pin request array to platform data
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-05-21 14:55:00 +08:00
Sonic Zhang 5b8163a3f9 blackfin: rotary: Add pm_wakeup flag to platform data structure.
Rotary can't be used as a wakeup source in all platform.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-05-21 14:54:43 +08:00
Sonic Zhang de45083831 blackfin: license: Change ADI BSD license
Change ADI BSD license to standart 3 clause BSD license for some blackfin arch
code requested by ADI Legal.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-05-21 14:54:30 +08:00
Sonic Zhang c55c89e939 blackfin: twi: move twi bit mask macro to twi head file
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-05-21 14:54:21 +08:00
Sonic Zhang eeec0a13e5 bf548: ssm2602: Add ssm2602 platform data into bf548 ezkit board file.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-03-21 11:00:10 +08:00
Scott Jiang 4e937ac112 bf548: add ppi interrupt mask and blanking clocks
Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-03-21 11:00:07 +08:00
Scott Jiang df864c309d blackfin: bf548: add capture support
Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-01-09 10:26:16 +08:00
Sonic Zhang 7d157fb02b blackfin: config: update macro SPI_BFIN in board file
Macro name for spi controller driver has been modified, so update default
board file accordingly.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2012-01-09 10:26:15 +08:00
Sonic Zhang edb0a6408a Blackfin: add serial TX IRQ in individual platform resource
The serial TX IRQ is not simply (RX IRQ + 1) on some Blackfin chips,
so move the values to the platform resources.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
2011-11-14 17:11:25 +08:00
Mike Frysinger 01f8e34c98 Blackfin: gpio/ints: generalize pint logic
Have the logic that uses peripheral interrupt blocks key off of pint
defines rather than CPU names so that things are generalized across
families.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-23 01:18:27 -04:00
Mike Frysinger b69c920cb1 Blackfin: bf54x: tweak MMR pint names
The hardware block uses the name "request" rather than "irq", so update
the struct accordingly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-23 01:18:25 -04:00
Mike Frysinger 979365ba4e Blackfin: update anomaly lists to latest public info
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-23 01:18:18 -04:00
Mike Frysinger 2f7d63f909 Blackfin: boards: clean up redundant/dead spi resources
The default for the Blackfin SPI driver is 8 bits and dma disabled,
so many of the bfin5xx_spi_chip resources are redundant.  So punt
those parts.

Further, drivers should themselves be declaring 16 bit transfers,
so for those that do, and for the ones which no longer do 16 bit
transfers, drop the bfin5xx_spi_chip resources.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-23 01:10:41 -04:00
Mike Frysinger 61aa818f7b Blackfin: bf52x/bf54x: fix up usb MMR defines
The bf52x/bf54x have the incorrect addresses for USB_EP_NI7_RXINTERVAL
and USB_EP_NI7_TXCOUNT, so adjust those.

Further, the bf54x header puts the USB defines in the wrong place, so
shuffle them back to the right grouping.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-28 17:02:56 -04:00
Mike Frysinger 63917efc4f Blackfin: mach/bfin_serial_5xx.h: punt now-unused header
Now that the serial code has been unified in bfin_serial.h, and the
Blackfin UART driver pushed its resources to the boards files, we
don't need these headers anymore.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-28 17:01:55 -04:00
Scott Jiang 6f53dbbb7f Blackfin: boards: update ASoC resources after machine driver overhaul
Now that the Blackfin machine drivers have been updated to the
multicomponent support, update the resources to match.  The pin
settings are now a board issue and removed from the driver.

Signed-off-by: Scott Jiang <scott.jiang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-25 08:24:14 -04:00
Mike Frysinger 5607204755 Blackfin: bf548-ezkit/bf561-ezkit: update nor flash layout
Both the BF548-EZKIT and the BF561-EZKIT use top boot flashes, so now
that Das U-Boot uses the last small sector for its environment, update
their nor layout in the kernel accordingly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-25 08:24:09 -04:00
Mike Frysinger 93f1742c63 Blackfin: update anomaly lists to latest public info
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-25 08:24:08 -04:00
Mike Frysinger 3dd666067d Blackfin: clean up style in irq defines
These files had a lot of whitespace damage, mostly due to copying and
pasting original files that had damage.

The BF561 header also had a lot of unused CONFIG_DEF_xxx defines, so
punt them all.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-25 08:13:42 -04:00
Mike Frysinger 6adc521e71 Blackfin: unify core IRQ definitions
Start a new common IRQ header and move all of the CEC pieces there.  This
lets the individual part headers worry just about its SIC defines.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-05-25 08:13:42 -04:00
Mike Frysinger de55aa33ca Blackfin: bf54x: re-enable anomaly 05000353 for all revs
Even though the anomaly sheet says that the the bootrom is fixed, tests
have shown that the fix itself does not handle all cases.  So until we
get a ROM update, assume the reset code is still broken and we need to
handle things ourselves.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-03-22 21:06:16 -04:00
Mike Frysinger 58ee0d3bb1 Blackfin: punt unused HDMA masks
No code uses these, and the short define names are polluting the global
namespace where they collide with things like common irq files.  So just
punt the damned things.  If in the future we need HDMA support, we can
make a standalone header for these things.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-03-18 04:29:17 -04:00
Aaron Wu 4c131c8c23 Blackfin: bf548-ezkit: add CAN1 support
Signed-off-by: Aaron Wu <aaronwu06@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-03-18 03:49:24 -04:00
steven miao 55835175a0 Blackfin: bf54x: add kconfig for UART2/3 DMA channel assignments
The BF54x lacks dedicated DMA channels for the UART peripherals and need
to be muxed between others.  So add a kconfig option so people can select
which channels the UARTs will use so they can pick between SPORTs and the
less commonly used EPPI/PIXC peripherals.

Signed-off-by: steven miao <realmz6@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-03-18 03:49:23 -04:00
Mike Frysinger a8b1988609 Blackfin: boards: add missing "static" to peripheral lists
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:25 -05:00
Sonic Zhang e54b673081 Blackfin: sport_uart resources: remove unused secondary RX/TX pins
The SPORT/UART driver doesn't use the secondary channel pins, so don't
try and request them thus keeping other drivers from using them.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:20 -05:00
Mike Frysinger 77c90e3d35 Blackfin: bf54x: add MMR layout for PINT
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:17 -05:00
Mike Frysinger 10cdc1a78a Blackfin: unify pll.h headers
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:16 -05:00
Mike Frysinger a2ce077ab3 Blackfin: drop asm/irq.h include from mach headers
These were only included because of the irq handling of the PLL funcs,
and those PLL funcs have been moved out into their own header now.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:10 -05:00
Mike Frysinger 1a5c226528 Blackfin: clean up mach header includes
The main asm/blackfin.h header will pull in mach/blackfin.h to get
all the fun Blackfin defines.  So having any of the sub-mach headers
trying to include asm/blackfin.h makes no sense -- punt it.

The mach/blackfin.h header takes care of including the part-specific
def headers which in turn will include any other needed def file.
Similarly, it takes care of pulling in the part-specific cdef header.
So move this logic out of the blackfin.h when necessary.

Further, make sure the cdef headers do not waste time including the
def headers again.

Since all parts need the common def/cdef headers, move this logic
out of the part-specific headers and into the mach/blackfin.h file.

Finally, we need to split the BF539 def header since the BF538 does
not have MXVR and we don't want to expose those MMRs.

So now all parts should have the same behavior:
	mach/blackfin.h
		asm/def_LPBlackfin.h
		part-specific def.h
		if ! asm
			asm/cdef_LPBlackfin.h
			part-specific cdef.h
And the sub def/cdef headers only tail into what they need.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:08 -05:00
Mike Frysinger 4de2bf8786 Blackfin: push gpio (port) defines into common headers
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:06 -05:00
Mike Frysinger 9887f41533 Blackfin: bf54x: drop unused legacy MMR names
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:06 -05:00
Mike Frysinger 5e3bcf30d6 Blackfin: dma: constify MMR pointer array
The array of pointers is never written, so constify it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:05 -05:00
Mike Frysinger 9346dba556 Blackfin: standardize DMAC traffic control MMRs & MDMA MMRs
Use the same naming convention for DMA traffic MMRs (most were legacy
anyways) so we can avoid useless ifdef trees.

Same goes for MDMA names -- this actually allows us to undo a bunch of
ifdef redirects that existed for this purpose alone.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:05 -05:00
Mike Frysinger b1524e29e3 Blackfin: bfin_serial.h: unify heavily duplicated serial code
Each Blackfin port has been duplicating UART structures and defines when
there really is no need for it.  So start a new bfin_serial.h header to
unify all these pieces and give ourselves a fresh start.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:18:02 -05:00
Bob Liu 759a3f3f31 Blackfin: musb-boards: push clkin value to platform resources
In order to not touch the driver file for different xtal usage,
push the clkin value to board file and calculate the register
value instead of hardcoding it.

Signed-off-by: Bob Liu <lliubbo@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-01-10 07:10:13 -05:00
Felipe Balbi 9cb0308eec usb: musb: split blackfin to its own platform_driver
Just adding its own platform_driver, not really
using it yet.

Later patches will come to split power management
code from musb_core and move it completely to HW
glue layer.

Signed-off-by: Felipe Balbi <balbi@ti.com>
2010-12-10 10:21:16 +02:00
Felipe Balbi 05ac10dd68 usb: musb: trivial search and replace patch
change all ocurrences of musb_hdrc to musb-hdrc.

We will call glue layer drivers musb-<glue layer>,
so in order to keep things somewhat standard, let's
change the underscore into a dash.

Signed-off-by: Felipe Balbi <balbi@ti.com>
2010-12-10 10:21:10 +02:00
Hema Kalliguddi fcf173e451 usb: musb: add names for IRQs in structure resource
Soon resource data will get automatically
populated from a set of autogenerated data
from TI's hardware database for the OMAP
platform.

Such database, might not have resources at
the expected order by the current drivers.

While we could hack in some exceptions to
that tool to generate resources in a specific
order, it seems less fragile to use the
resource name instead. That way, no matter
what order the resources are generated, the
driver still work.

Modified the OMAP, Blackfin and Davinci
architecture files to add the name of the IRQs
in the resource structures and musb driver to
use the platform_get_irq_byname() api to get
the device and dma irq numbers instead of using
the index.

Cc: Tony Lindgren <tony@atomide.com>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Hema HK <hemahk@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2010-12-01 10:56:33 +02:00
Mike Frysinger 9ebcaa47ba Blackfin: bf54x: add missing SIC_RVECT definition
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-22 16:30:01 -04:00
Mike Frysinger a71159b96a Blackfin: dma: bf54x: add missing break for SPORT1 TX IRQ
Reported-by: D Binderman <dcb314@hotmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-22 03:49:00 -04:00
Mike Frysinger 73775b892e Blackfin: bf548-ezkit: increase u-boot partition size
The BF54x processor has a ton of on-chip peripherals and in order to
support them all, the u-boot image is quite large.  So give it 512KiB
in all bootable flashes to make our lives easier.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-22 03:48:58 -04:00
steven miao 39d3c1ca1f Blackfin: boards: add example i2c resources for ad525x devices
Signed-off-by: steven miao <realmz6@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-22 03:48:58 -04:00
Mike Frysinger c5af5451fc Blackfin: boards: fix num_chipselect values for on-chip SPI buses
The num_chipselect field for on-chip Blackfin SPI buses is supposed to
be 1 larger than the number of actual CSs available.  This is because
the hardware starts counting at 1 and not 0.  There is a field for "CS0",
but it is marked as "reserved" everywhere.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-22 03:48:52 -04:00