Commit graph

38 commits

Author SHA1 Message Date
Felix Fietkau
5e0bd41bbe atheros: update macroses names
Use AR2315_ prefix for macroses specific to AR2315/AR2316/AR2317 chips,
use AR5312_ prefix for macroses specific to AR5312/AR2312/AR2313 chips,
and use AR231X_ prefix for common macroses.

This patch should not cause any functional changes, only make clear
which macros is common and which macros is specific.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41701
2014-07-17 16:36:55 +00:00
Felix Fietkau
04f3012fba atheros[uart]: pass only physical I/O mem address to 8250 driver
Pass only physical address to 8250 serial port driver and set flag to
remap I/O memory inside the driver. Also fix AR5312 UART base address
definition, which seems specified already mapped.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41700
2014-07-17 16:36:52 +00:00
Felix Fietkau
e744878636 atheros[uart]: use 32-bit aligned I/O
Use 32-bit aligned I/O and update base UART address (remove +3 offset).

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41699
2014-07-17 16:36:49 +00:00
Felix Fietkau
572b532e6a atheros[ar231x-eth]: pass PHY I/O memory via device resources
Pass PHY I/O memory region via platform resources and remap them
unconditionally.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41698
2014-07-17 16:36:46 +00:00
Felix Fietkau
9041410017 atheros[ar231x-eth]: pass phys address of I/O memory via platform res
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41697
2014-07-17 16:36:43 +00:00
Felix Fietkau
a145d0410b atheros: simplify gpiolib realization
Each SoCs generation has own independent gpiolib realization, so we
have no reason to keep these realizations in semiuniversal form.
Following modifications are made:
 * Remove valid_mask field
 * Remove ar231x_gpio_chip structure
 * Rename AR2315_GPIO_CR to AR2315_GPIO_DIR
 * Fix count of AR5312 GPIOs
 * Simplify gpio_chip methods realization

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41696
2014-07-17 16:36:39 +00:00
Felix Fietkau
82e4cde1ce atheros: use irq_set_chained_handler()
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41695
2014-07-17 16:36:36 +00:00
Felix Fietkau
0a785ebb7d atheros: simplify AR2315 misc IRQ (un)masking
Currently AR5312 misc IRQ numbers are used for AR2315+ chips, what cause
us to use switch-case to map IRQ number to ISR bit. Introduce AR2315
specific misc IRQs set and simplify interrupt (un)mask operation.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41694
2014-07-17 16:36:33 +00:00
Felix Fietkau
d29b61b5f0 atheros: rename some interrupt control handlers
Rename interrupt control handlers to be consistent with operation names
and add IRQ chips names.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41693
2014-07-17 16:36:30 +00:00
Felix Fietkau
fceb7f7045 atheros: move AR2315 misc IRQ dispatching to separate function
Align code with AR5312 realization.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41692
2014-07-17 16:36:26 +00:00
Felix Fietkau
5c030111a9 atheros: pass UART IRQ number via function argument
UART IRQ number could be different for different SoCs, so make them
configurable.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41691
2014-07-17 16:36:23 +00:00
Felix Fietkau
6be418e3e1 atheros[ar231x-eth]: update MAC and PHY reset method
Pass reset_set and reset_clear callback functions pointers via
platform_data instead of reset register address.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41689
2014-07-17 16:36:16 +00:00
Felix Fietkau
4f05d696ad atheros[ar2315-wdt]: update I/O handling
* Pass iomem and IRQ via platform device resources
 * Remap iomem and use iowrite32 accessor function

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41688
2014-07-17 16:36:13 +00:00
Felix Fietkau
5ea0cff89c atheros[ar2315-wdt]: update interrupt handling
Acknowledge watchdog interrupt in arch irq dispatcher and remove odd
watchdog enable call from probe function.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41687
2014-07-17 16:36:10 +00:00
Felix Fietkau
d0f9972f1c atheros: use correct address space and pointer type for register access
Make sparse happy :)

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41686
2014-07-17 16:36:07 +00:00
Felix Fietkau
5e76534b23 atheros[ar2315-wdt]: update initialization
* update driver id to be consistent with other ar231x drivers
 * remove odd module_{init,exit}
 * add module metadata (description, name, etc.)

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41684
2014-07-17 16:35:59 +00:00
John Crispin
bcc7374d7d atheros[ar2315-spiflash]: remove duplicated definitions
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41325
2014-06-24 18:13:47 +00:00
John Crispin
78bdfeb30b atheros[ar2315-spiflash]: update driver id
Make id more specific and consistent with others platform drivers.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41324
2014-06-24 18:13:43 +00:00
John Crispin
08a9fcb0ef atheros[ar2315-spiflash]: pass I/O mem regions via resources
Pass I/O memory regions (flash read and MMR) via platform device
resources array and use them inside spiflash driver.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41320
2014-06-24 18:13:27 +00:00
John Crispin
8e3b055b2a atheros[ar2315]: don't detect flash size during board initialization
We should not detect actual flash size during board initialization to
find board config at the end of the flash, just use large enough mapping
size (currently 128 mbit). If mapping size is larger than the actual
flash size, than flash will simply be mapped multiple times. This change
simplifies code by removing duplication and saves about 200 bytes of
uncompressed kernel :)

Tested with Ubnt LS2 board equipped with STM 25p32v6p NOR flash (32 mbit).

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41317
2014-06-24 18:13:13 +00:00
Felix Fietkau
e49636472d atheros: shorten lines
Wrap lines over 80 chars or make them shorter by other ways.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41095
2014-06-10 09:06:22 +00:00
Felix Fietkau
a6cf23b76c atheros: constify some static structures
Constify some static structures as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41094
2014-06-10 09:06:18 +00:00
Felix Fietkau
70b2a81a2e atheros: trailing statements fixes
Move trailing statements to next line with indentation as suggested by
checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41092
2014-06-10 09:06:10 +00:00
Felix Fietkau
0bca3f9547 atheros: spaces fixes
Add missed spaces and remove odd space as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41091
2014-06-10 09:06:06 +00:00
Felix Fietkau
dd31da467f atheros: indent fixes
Various indent fixes suggested by checkpatch: use tabs, use same level
of indentation for switch and case, correct indentation levels.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41090
2014-06-10 09:06:03 +00:00
Felix Fietkau
66c64834f8 atheros: fix includes
Remove some unnecessary includes and use <linux/foo.h> instead of
<asm/foo.h> when it possible as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41089
2014-06-10 09:05:58 +00:00
Felix Fietkau
90ca9a582d atheros: various printk(...) fixes
Use more particular functions dev_<level> or pr_<level>(...) insead of
direct printk(...) call. Add KERN_LEVEL to calls what missed it.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41088
2014-06-10 09:05:55 +00:00
Felix Fietkau
15a2ebbc38 atheros: various braces fixes
Fix braces location, remove unnecessary empty lines before or after code
block, remove useless braces. All cases are detected by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41087
2014-06-10 09:05:51 +00:00
Felix Fietkau
58d70ff9b3 atheros: do not initialize statics to 0 or false
as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41086
2014-06-10 09:05:47 +00:00
Felix Fietkau
3406e402ef atheros: do not assignment in if condition
Remove assignments from if conditions as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41084
2014-06-10 09:05:40 +00:00
Felix Fietkau
5427e47e59 atheros: remove parentheses around return values
Remove parentheses around return values since return is no a function,
as suggested by checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41083
2014-06-10 09:05:36 +00:00
Felix Fietkau
630eac6638 atheros: parenthesis around complex macroses value
Use parenthesis around complex macroses value as suggested by
checkpatch.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41082
2014-06-10 09:05:32 +00:00
Felix Fietkau
cb50efa835 atheros: various comments fixes
Fix comment issues detected by checkpatch. Convert C99 // comments to
ordinary /* ... */ comments. Correct block comments style or convert
them to single line comments.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41081
2014-06-10 09:05:28 +00:00
Felix Fietkau
ea9360a5c6 atheros: avoid CamelCase
Change fooBar variables names to foo_bar as suggested by checkpatch,
write few tables names in lower case and correctly place __initdata
keyword.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 41080
2014-06-10 09:05:25 +00:00
Gabor Juhos
8daeba6d47 atheros: fix kernel warning about usage of reset gpio
During a reset the gpiolib warns about using the reset gpio
without explicit requesting it before:

[  147.930000] ------------[ cut here ]------------
[  147.930000] WARNING: at drivers/gpio/gpiolib.c:103 gpio_ensure_requested+0x68/0xcc()
[  147.930000] autorequest GPIO-5
[  147.930000] Modules linked in: ath5k ath mac80211 ipv6 cfg80211 compat arc4 crypto_blkcipher aead gpio_button_hotplug
[  147.930000] Call Trace:
[  147.930000] [<8004e3bc>] dump_stack+0x8/0x34
[  147.930000] [<80058430>] warn_slowpath_common+0x78/0xa4
[  147.930000] [<800584e4>] warn_slowpath_fmt+0x2c/0x38
[  147.930000] [<80166f18>] gpio_ensure_requested+0x68/0xcc
[  147.930000] [<80167264>] gpio_direction_output+0xdc/0x168
[  147.930000] [<8004aba8>] ar2315_restart+0x28/0x54
[  147.930000] [<80069778>] sys_reboot+0x178/0x1c0
[  147.930000] [<80043670>] stack_done+0x20/0x40
[  147.930000]
[  147.930000] ---[ end trace 2c7a53d8549562d6 ]---

This is fixed with this patch by using another gpiolib api call
which includes the missing request.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 38183
2013-09-25 17:51:12 +00:00
Gabor Juhos
043edd8074 kernel: update 3.10 to 3.10.9
Also refresh 3.10 patches.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 37832
2013-08-23 17:31:04 +00:00
Gabor Juhos
e9688455f6 kernel: update 3.10 to 3.10.3
Also refresh 3.10 patches.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 37546
2013-07-26 07:19:58 +00:00
John Crispin
9181c569c4 linux/atheros: add 3.10 kernel support
SVN-Revision: 37513
2013-07-22 19:10:59 +00:00