aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ip17xx: The big renameGabor Juhos2010-06-081-174/+174
| | | | | | | | | | | | | 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> SVN-Revision: 21723
* ip17xx: Keep all state locallyGabor Juhos2010-06-081-209/+3
| | | | | | | | | | | | 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> SVN-Revision: 21722
* ip17xx: Add support for IP175DGabor Juhos2010-06-081-1/+169
| | | | | | | | | | | | | | | | | 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> SVN-Revision: 21721
* ip17xx: Avoid auto-negotiationGabor Juhos2010-06-081-3/+5
| | | | | | | | | | | | | | 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> SVN-Revision: 21720
* ip17xx: New chip detectionGabor Juhos2010-06-081-28/+30
| | | | | | | | | | | | | 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> SVN-Revision: 21719
* ip17xx: Add VLAN tag fieldGabor Juhos2010-06-081-1/+44
| | | | | | | | | | 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> SVN-Revision: 21718
* ip17xx: Maintain state->remove_tag incrementallyGabor Juhos2010-06-081-3/+4
| | | | | | | | | | | | | 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> SVN-Revision: 21717
* ip17xx: Initialize VLAN state upon resetGabor Juhos2010-06-081-5/+15
| | | | | | | | | | | | | | 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> SVN-Revision: 21716
* ip17xx: Introduce vlan arrayGabor Juhos2010-06-081-12/+14
| | | | | | | | | 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> SVN-Revision: 21715
* ip17xx: Introduce indirection of low-level operationsGabor Juhos2010-06-081-49/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | 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> SVN-Revision: 21714
* ip17xx: Fix use of MODE_VALGabor Juhos2010-06-081-1/+1
| | | | | | | | | | | | 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> SVN-Revision: 21713
* ip17xx: Fix indentation in get_state() and update_state()Gabor Juhos2010-06-081-76/+76
| | | | | | | Signed-off-by: Martin Mares <mj@ucw.cz> Signed-off-by: Patrick Horn <patrick.horn@gmail.com> SVN-Revision: 21712
* ip17xx: Fixed error handling in ip175c_set_val()Gabor Juhos2010-06-081-1/+1
| | | | | | | | | 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> SVN-Revision: 21711
* ip17xx: Cosmetic cleanupsGabor Juhos2010-06-081-50/+35
| | | | | | | | | | 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> SVN-Revision: 21710
* ip17xx: Consolidate operations with PHY registersGabor Juhos2010-06-081-47/+40
| | | | | | | | | | | | | | | 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> SVN-Revision: 21709
* swconfig: Fix a bug in use of SWITCH_PORT_FLAG_TAGGEDGabor Juhos2010-06-081-1/+1
| | | | | | | | | 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> SVN-Revision: 21708
* brcm47xx: add kernel 2.6.35 preliminary supportAlexandros C. Couloumbis2010-06-0827-0/+2748
| | | | SVN-Revision: 21707
* generic-2.6: fix mini_fo 2.6.35 kernel issueAlexandros C. Couloumbis2010-06-081-0/+20
| | | | SVN-Revision: 21706
* fix a typo on commit r21704Alexandros C. Couloumbis2010-06-081-1/+1
| | | | SVN-Revision: 21705
* generic-2.6: generic: add missing config symbols for 2.6.35Alexandros C. Couloumbis2010-06-081-1/+8
| | | | SVN-Revision: 21704
* atheros: add kernel 2.6.35 preliminary supportAlexandros C. Couloumbis2010-06-0814-0/+6657
| | | | SVN-Revision: 21703
* generic: add missing config symbol for 2.6.34Gabor Juhos2010-06-071-0/+1
| | | | SVN-Revision: 21699
* ar71xx: fix 2.6.34 build errorsGabor Juhos2010-06-073-0/+3
| | | | SVN-Revision: 21698
* ar71xx: add missing 2.6.34 config symbolGabor Juhos2010-06-071-0/+1
| | | | SVN-Revision: 21697
* generic-2.6: add kernel 2.6.35 preliminary support (patches)Alexandros C. Couloumbis2010-06-07104-0/+38334
| | | | SVN-Revision: 21696
* refresh kernel patchesAlexandros C. Couloumbis2010-06-0621-69/+69
| | | | SVN-Revision: 21694
* generate NA and non-NA images for Titan platformsFlorian Fainelli2010-06-061-0/+7
| | | | SVN-Revision: 21692
* add Titan MTD partitionning support (#6632)Florian Fainelli2010-06-062-0/+289
| | | | SVN-Revision: 21691
* titan board also have CYWL as a product idFlorian Fainelli2010-06-061-1/+1
| | | | SVN-Revision: 21690
* do not override kmod-usb-storage-extras Kconfig symbols (#7285)Florian Fainelli2010-06-065-50/+0
| | | | SVN-Revision: 21688
* ar71xx: build firmware images if Minimal profile is selectedGabor Juhos2010-06-061-0/+4
| | | | SVN-Revision: 21684
* ar71xx: rename Minimal profileGabor Juhos2010-06-061-5/+5
| | | | SVN-Revision: 21683
* orion: Update Orion in trunk to kernel 2.6.34.Hauke Mehrtens2010-06-0610-3/+96
| | | | | | | | | Was flashed on WRT350Nv2, booted and is running for several days. Closes #7405 Thank you maddes for your patch. SVN-Revision: 21682
* generic: update mips multimachine patchGabor Juhos2010-06-053-42/+51
| | | | SVN-Revision: 21681
* adm5120: convert to use the new mips multimachine stuffGabor Juhos2010-06-0528-747/+55
| | | | SVN-Revision: 21680
* ar71xx: clarify the nand subtarget a bitFelix Fietkau2010-06-051-1/+1
| | | | SVN-Revision: 21679
* generic: merge mips multi machine update to generic patches for 2.6.34Gabor Juhos2010-06-045-337/+342
| | | | SVN-Revision: 21675
* generic: merge mips multi machine update to generic patches for 2.6.33Gabor Juhos2010-06-044-337/+332
| | | | SVN-Revision: 21674
* generic: merge mips multi machine update to generic patches for 2.6.32Gabor Juhos2010-06-045-470/+331
| | | | SVN-Revision: 21673
* adm5120: don't use linux/autoconf.hGabor Juhos2010-06-0412-1286/+0
| | | | SVN-Revision: 21672
* adm5120: fix build error on 2.6.34Gabor Juhos2010-06-041-0/+1
| | | | SVN-Revision: 21671
* Force usb features, fix dependsClaudio Mignanti2010-06-032-3/+2
| | | | SVN-Revision: 21664
* orion: fix lan and wan mac address for wrt530n v2 (patch by maddes from #7113)Felix Fietkau2010-06-011-0/+17
| | | | SVN-Revision: 21647
* ar71xx: fix rootfs mount issue (closes #7319)Alexandros C. Couloumbis2010-06-011-0/+1
| | | | SVN-Revision: 21645
* Fix ramips build when CONFIG_RALINK_DEV_GPIO_BUTTONS is not set.John Crispin2010-05-311-1/+1
| | | | | | Signed-off-by: Helmut Schaa SVN-Revision: 21643
* brcm-2.4: preinit: Renamed failsafe echo scriplet to reflect that it is ↵Daniel Dickinson2010-05-301-0/+0
| | | | | | brcm-specific SVN-Revision: 21637
* brcm-2.4: preinit: Removed duplicate failsafe switch config fileDaniel Dickinson2010-05-301-10/+0
| | | | SVN-Revision: 21636
* ramips: Added preinit scriptlet to set vars based on cpuinfo during ↵Daniel Dickinson2010-05-301-0/+7
| | | | | | preinit_main. This fixes a bug in which the vars were not set due to /proc not being mounted when ramips.sh was sourced SVN-Revision: 21635
* ar71xx: Added preinit scriptlet to set vars based on cpuinfo during ↵Daniel Dickinson2010-05-301-0/+7
| | | | | | preinit_main. This fixes a bug in which the vars were not set due to /proc not being mounted when ar71xx.sh was sourced SVN-Revision: 21634
* adm5120: Added preinit script to set vars based on cpuinfo during preinit ↵Daniel Dickinson2010-05-301-0/+7
| | | | | | main; This fixes a bug in which the per-board vars were not set due to cpuinfo not being mounted when the adm5120.sh was run SVN-Revision: 21633