1118 Commits

Author SHA1 Message Date
Claudio Mignanti
33b0c34dc2 [kernel] pci_set_mwi depends upon CONFIG_HAVE_PCI_SET_MWI
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21849 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-20 12:41:22 +00:00
Florian Fainelli
d18f13fcb8 [kernel] reinstate netdev LED trigger dependency against CONFIG_NET
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21804 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-14 19:39:04 +00:00
Claudio Mignanti
cb660e0895 [kernel] Add the generic PWM api from Bill Gatliff (experimental). Ignore the leds trigger part at the moment
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21800 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-14 18:01:11 +00:00
Felix Fietkau
a87a97347e backport the ssb dma device change to 2.6.30 as well
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21798 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-14 15:47:06 +00:00
Jo-Philipp Wich
d2cecd4779 [generic-2.6] add b43 dma_dev fix to 2.6.32 and 2.6.33
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21789 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 18:35:23 +00:00
Claudio Mignanti
032959e72e [kernel] Extend the gpio device driver (#5671)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21787 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 13:27:06 +00:00
Florian Fainelli
8cbb266569 [kernel] refresh 2.6.33 patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21784 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 12:20:48 +00:00
Florian Fainelli
0db2a74b2d [kernel] refresh 2.6.32 patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21783 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 12:20:42 +00:00
Gabor Juhos
2e2a19f327 swconfig: fix lock imbalance in unregister_switch()
Signed-off-by: Karl Beldan <karl.beldan@sagemcom.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21780 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 11:37:35 +00:00
Gabor Juhos
9a3782b35f swconfig: release switch in error path of swconfig_get_attr
Signed-off-by: Karl Beldan <karl.beldan@sagemcom.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21779 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 11:37:32 +00:00
Florian Fainelli
3ab4413eab [kernel] rename 014-samsung_flash -> 014-samsung_flash.patch
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21776 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 09:54:01 +00:00
Florian Fainelli
be088cec8b [kernel] fix samsung flash patch after r21408, thanks to Matthias Buecher (#7348)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21775 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-13 09:53:55 +00:00
Florian Fainelli
028489ba86 [package] add missing dma_dev member to struct ssb_device to make b43/b43legacy compile with current mac80211 version
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21770 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-12 18:10:22 +00:00
Florian Fainelli
c8a563a90b [kernel] refresh 2.6.34 patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21768 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-12 18:10:09 +00:00
Alexandros C. Couloumbis
1125b1194d generic-2.6/patches-2.6.35: fix ocf missing parts
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21757 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-11 13:49:39 +00:00
Gabor Juhos
93df402589 generic: move more common options to generic configuration
* CONFIG_ABX500_CORE
 * CONFIG_ATOMIC64_SELFTEST
 * CONFIG_BRIDGE_IGMP_SNOOPING
 * CONFIG_CAIF
 * CONFIG_CEPH_FS
 * CONFIG_CRYSTALHD
 * CONFIG_DEFAULT_SECURITY_SELINUX
 * CONFIG_DEFAULT_SECURITY_SMACK
 * CONFIG_DEFAULT_SECURITY_TOMOYO
 * CONFIG_DT3155
 * CONFIG_IP_MROUTE_MULTIPLE_TABLES
 * CONFIG_L2TP
 * CONFIG_LOGFS
 * CONFIG_LPC_SCH
 * CONFIG_MFD_JANZ_CMODIO
 * CONFIG_MFD_RDC321X
 * CONFIG_N_GSM
 * CONFIG_RAMOOPS
 * CONFIG_SERIAL_ALTERA_JTAGUART
 * CONFIG_SERIAL_ALTERA_UART
 * CONFIG_SERIAL_TIMBERDALE
 * CONFIG_SM_FTL
 * CONFIG_SQUASHFS_XATTRS


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21750 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-10 10:45:51 +00:00
Gabor Juhos
9ac326cb5e generic: move some common symbols to generic configuration
* CONFIG_MUTEX_SPIN_ON_OWNER
 * CONFIG_DEFAULT_HYDLA
 * CONFIG_DEFAULT_VENO


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21748 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-10 08:58:14 +00:00
Gabor Juhos
35574770c9 generic: remove trailing whitespaces from kernel configs
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21747 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-10 08:58:09 +00:00
Gabor Juhos
26eef8e23a generic: standardize CONFIG_INLINE_* symbols usage
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21746 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-10 08:09:41 +00:00
Gabor Juhos
9eae8e7e70 generic: update xt_layer7 module fix for 2.6.35
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21741 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 17:56:42 +00:00
Alexandros C. Couloumbis
1ca9cd3079 generic-2.6: layer7: convert xt_match_param to xt_action_param
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21740 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 17:29:25 +00:00
Gabor Juhos
b30a171ca2 generic: more missing symbols for 2.6.35
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21739 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 15:31:43 +00:00
Gabor Juhos
9b5f9109c1 generic: add missing layer7 patches for 2.6.35
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21738 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 15:31:39 +00:00
Alexandros C. Couloumbis
15c4fa696f generic-2.6: update patches-2.6.35/080-mtd_plat_nand_chip_fixup.patch
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21735 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 15:14:12 +00:00
Alexandros C. Couloumbis
138a74dfd2 generic-2.6: add (some) missing config symbols for kernel 2.6.35
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21733 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 10:43:59 +00:00
Gabor Juhos
4bee3eb501 generic: rename ip175c driver to ip17xx on 2.6.35 as well
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21732 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-09 07:52:48 +00:00
Gabor Juhos
1b6346478e ip17xx: fix autonegotioation issues
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21727 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:19:14 +00:00
Gabor Juhos
078d21f847 generic: add aneg_done and update_link functions for the phy_device
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21726 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:19:11 +00:00
Gabor Juhos
37c6d01b51 ip17xx: Update the copyright message
Update the copyright message to reflect my changes.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21725 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:19:08 +00:00
Gabor Juhos
3340977edb ip17xx: Rename the driver to ip17xx.c
Following the big internal rename, this is the external rename.
Rename the source file to ip17xx.c and adjust Makefile and Kconfig.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21724 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:19:05 +00:00
Gabor Juhos
f98b6ff6c8 ip17xx: The big rename
Recognize that the driver supports many more devices than the ip175c.

The driver itself is now called ip17xx, all generic functions have been
renamed to ip17xx_*. The model-dependent functions have prefixes ip175c_
and ip175d_.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21723 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:58 +00:00
Gabor Juhos
c73163553e ip17xx: Keep all state locally
Instead of reading the hardware state every time we want to inspect it or
to modify it, maintain it in struct ip175c_state.

This simplifies the code significantly.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21722 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:55 +00:00
Gabor Juhos
1746c45d51 ip17xx: Add support for IP175D
Add support for the IP175D chip. Since the register set is vastly different
from the previous models, we cannot not use the register number tables in struct
register_mappings (except for VLAN_DEFAULT_TAG_REG), so we supply a different
set of low-level functions.

Unlike with the previous models, we keep the VLAN setup in our state structure
instead of querying the hardware (it would be much harder in case of IP175D,
because the mapping between hardware and software state is not 1:1). Therefore,
get_flags() and get_state() are no-ops.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21721 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:51 +00:00
Gabor Juhos
6ae9f46b7f ip17xx: Avoid auto-negotiation
Let ip175c_config_init() initialize the link state of the PHY and set the
PHY state machine directly to the PHY_RUNNING state in order to skip the
auto-negotiation phase.

Previously, auto-negotiation on PHY 0 (switch port 0) influenced the ethernet
driver connected to the CPU port, causing all sorts of weird effects.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21720 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:47 +00:00
Gabor Juhos
50dc4ef20a ip17xx: New chip detection
Clean up get_model() and make it recognize IP175D using yet another
chip ID register. Log the detected model.

Also fix a bug in the interface between the PHY layer and our probe function,
which caused IP175A devices to be ignored.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21719 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:42 +00:00
Gabor Juhos
5dd433ee41 ip17xx: Add VLAN tag field
Since IP175D uses tag-based VLANs, we need an ability to set VLAN tag
of every VLAN.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21718 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:38 +00:00
Gabor Juhos
7b4b5ffe70 ip17xx: Maintain state->remove_tag incrementally
So far, state->remove_tag was sometimes updated incrementally, sometimes
left to correct_vlan_state() to recalculate. Since I want to avoid use of
correct_vlan_state() for IP175D, this patch fixes the only two remaining
places which leave state->remove_tag inconsistent with state->add_tag
and it drops the recalculation.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21717 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:34 +00:00
Gabor Juhos
b4a61f51bb ip17xx: Initialize VLAN state upon reset
Let VLAN state variables be initialized not only when the enable VLAN bit
is toggled, but also upon reset.

At this point, this should be a no-op, since the driver reads the current
hardware state before doing any modifications anyway, but I plan to keep
some state locally in the subsequent patches.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21716 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:30 +00:00
Gabor Juhos
21c047cd0b ip17xx: Introduce vlan array
Replace vlan_ports array in struct ip175c_state by an array of structures.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21715 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:25 +00:00
Gabor Juhos
83ae20132e ip17xx: Introduce indirection of low-level operations
This patch introduces seperation between low-level and high-level parts
of the driver. The low-level functions are now called via pointers stored
in struct ip175c_regs.

The only functional changes are:

  o  correct_vlan_state() is now called as a part of every update_state().

  o  The order of setting of MODE_REG and resetting switch ports
     has changed. (These are independent actions, so it should not matter.)

  o  ip175c_set_tagged() sets the tags via update_state() instead of writing
     directly to the registers.

  o  The same for ip175c_set_pvid().

The only gaps in this abstraction are operations on ports (get_port_speed
and friends), which access PHY registers directly.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21714 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:20 +00:00
Gabor Juhos
ce244e155a ip17xx: Fix use of MODE_VAL
The value written to MODE_REG in ip175c_reset() should be obviously MODE_VAL,
not RESET_VAL. Actually, this change is a NOP, because in the only case where
the MODE_REG is used, the two values are identical, but it makes the code
more readable.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21713 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:15 +00:00
Gabor Juhos
a8c13fe54f ip17xx: Fix indentation in get_state() and update_state()
Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21712 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:10 +00:00
Gabor Juhos
0bff315185 ip17xx: Fixed error handling in ip175c_set_val()
Upon error, ip175c_set_val() returned 0 instead of -EINVAL.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21711 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:05 +00:00
Gabor Juhos
b9eb7def42 ip17xx: Cosmetic cleanups
Trying to unify capitalization and formatting of comments. Writing of periods
at the end of comments is however still inconsistent.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21710 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:18:00 +00:00
Gabor Juhos
9d0a3a6f6b ip17xx: Consolidate operations with PHY registers
Call mdiobus_{read,write} instead of duplicating their code.

Introduce ip_phy_write_masked(), which changes a part of a register. Will
be used later in this patch series. Please note that it does not hold any
lock between reading and writing, so it is up to the caller to serialize.

Also add DUMP_MII_IO, which enables logging of all MII accesses.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21709 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:17:55 +00:00
Gabor Juhos
966a9bdb93 swconfig: Fix a bug in use of SWITCH_PORT_FLAG_TAGGED
SWITCH_PORT_FLAG_TAGGED is a bit index, not a bit mask.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21708 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 20:17:03 +00:00
Alexandros C. Couloumbis
7bc4ea6c95 generic-2.6: fix mini_fo 2.6.35 kernel issue
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21706 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 16:44:42 +00:00
Alexandros C. Couloumbis
321c2089bd fix a typo on commit r21704
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21705 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 16:19:34 +00:00
Alexandros C. Couloumbis
3b03d777c7 generic-2.6: generic: add missing config symbols for 2.6.35
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21704 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-08 16:13:37 +00:00
Gabor Juhos
ea4d51d1b3 generic: add missing config symbol for 2.6.34
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21699 3c298f89-4303-0410-b956-a3cf2f4a3e73
2010-06-07 09:18:18 +00:00