aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-03-01alx: fix DMA-write-pending issueHEADalx-linux-v3.9-rc1-1alx-linux-v3.8.3-1alx-linux-v3.8.2-1masterlinux-3.9.ylinux-3.8.yxiong1-1/+0
the chip can only handle aligned DMA address (4byte align) for rx-buffers, skb_reserve(skb, NET_IP_ALIGN) will break the rule, so, just remove it. Signed-off-by: xiong <xiong@qca.qualcomm.com>
2013-03-01alx: fix dead loop for hardware fatal errorxiong3-11/+12
when reset in alx_task/alx_reinit, alx_halt function calls cancel_work_sync(task), which makes a dead loop. This patch fixes it by adding parameter of in_task for alx_halt & alx_reinit. Signed-off-by: xiong <xiong@qca.qualcomm.com>
2013-02-15alx: fix implicit-function-declaration build errorsBen Collins1-0/+2
Fixes build breakage in Ubuntu PPC build, e.g.: alx_main.c: error: implicit declaration of function ‘vzalloc’ [-Werror=implicit-function-declaration] Signer-off-by: Kamal Mostafa <kamal@canonical.com>
2013-02-04alx: remove __devinit qualifiersKamal Mostafa5-13/+13
Use of __dev{init,exit}* is deprecated. Signed-off-by: Kamal Mostafa <kamal@canonical.com>
2013-02-04alx: fix wrong MDCxiong1-2/+2
the clock for MDIO should be slow if link down, and be fast if link on. Signed-off-by: xiong <xiong@qca.qualcomm.com>
2013-01-24alx: improve self-test for FPGAalx-20130124xiong3-4/+122
define new registers value for C0 version for register checking test, and untouch PHY setting when do MAC loopback test. PS. PHY external loopback isn't supported for FPGA due to board limitation. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: show correct DUPLEX info for ethtoolxiong2-3/+15
because FULL_DUPLEX & DUPLEX_FULL are different, 'ethtool ethX' will show wrong duplex info, this patch fix it. the PHY initial advertisement is also changed to reflect real HW capability. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: reduce RSS indirection table size to 128xiong1-1/+1
256 table size will casue wrong CPU/Q number in RRD description. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: reduce num txq to 1 if MSIX disabledxiong2-3/+3
ONLY 1 napi is allocated for MSI & INTx mode interrupt, so, only 1 txq/rxq is supported. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: support version C0 FPGAxiong4-28/+249
current C0 FPGA platform is ready, this patch adds new register difinition for C0. To run this driver on FPGA, just revised hw->is_fpga to 'true' in init_sw Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: add loopback testxiong4-16/+469
loopback (both MAC and PHY) test is added for self-test. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: add self test for interruptxiong3-5/+269
MSIX, MSI, and INTx interrupt modes are tested, if the platform support. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: remove the 'running' condition to change MTUxiong1-2/+3
MTU ought to be set whether the interface is 'Up' or 'Down'. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: add stats/self-test for ethtoolxiong2-20/+643
basic function of hw-stats and self-test is added. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: fix tx-timeout after sleep/resumexiong2-114/+136
tx-timeout after sleep/resume is caused by wrong interrupt mode used after resume. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: add version infoxiong3-2/+11
version format : MAJ.MIN.PATCH Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24alx: fix wrong speed setting for WoLxiong1-12/+11
WoL speed is wrongly set to 100M, revise it to 10M as 1st priority for powersaving. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2013-01-24Revert "alx: fix tx-timeout and WoL wrong speed setting"Luis R. Rodriguez5-884/+194
Xiong is sending out other patches that split this one into other smaller patches. This reverts commit fcbfd447c62159501fb817eac6cd99ea8577975f.
2012-12-17alx: fix tx-timeout and WoL wrong speed settingxiong5-194/+884
this patch fixed followking issues: 1. WoL seed is wrongly set to 100M, revise it to 10M. 2. tx-timeout after sleep/resume. it's caused by wrong interrupt mode. 3. add stats/diag features for ethtool. TODO: the diag(self-test) function is very simple for this version, we will add loopback/interrupt test for next version. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-12-17alx: split register definitions to seperated filexiong6-3668/+4124
this patch include: 1. split register definitions to alx_reg.h. 2. MAC/DMA is reset when PHY link change Down. 3. fixed all error/warnings found by checkpatch. Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: add pre tags for README.md for Linux instructionsalx-20121214Luis R. Rodriguez1-0/+2
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: update Linux build instructionsLuis R. Rodriguez1-3/+12
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: add LICENSE and extend documentation for development processLuis R. Rodriguez2-0/+40
The LICENSE is ISC and some original code came from me based on the compat project, I have relicensed that stuff to ISC and contributed here. The rest is the QCA alx driver which is all ISC licensed. The documentation for submitting patches and using the Signed-off-by is added. This follows the Linux kernel's Developer's Certificate of Origin 1.1. We don't yet have a mailing list but what we do have is commitment to support this by the QCA alx development team. Adrian has offered to help address the BSD target support. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: add .tmp_versions/ to .gitignoreLuis R. Rodriguez1-0/+2
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: extend help menuLuis R. Rodriguez1-1/+12
Provide clear instructions as to what is required. To make things easier for users make the linux target depend on the linux-src target. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: add clean-linux targetLuis R. Rodriguez2-2/+6
While at it update the Linux help targets. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: add a linux-backport targetLuis R. Rodriguez2-4/+7
This is an implicit target not exposed to the user through the help menu but used within the port Makefile to separate backporting from a clean linux-next target build. This also calls ./refresh-compat for us. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: move Linux Makefile to target/linux/Luis R. Rodriguez5-149/+178
This should make it cleaner at the top level to understand what belongs to what OS. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-30alx: update linux targetLuis R. Rodriguez4-34/+36
compat-drivers had removed alx from being cherry picked as a crap type patch. The alx driver is not yet upstream and a compromise has been reached to try to help enable users with the alx module and to help address killing proprietary drivers. This unified alx git tree will be used to supply the target OS support for Linux and FreeBSD, and compat-drivers will cherry pick the alx driver from here while it is not yet upstream as the project aims to provide a foundation for how to do open unified driver development. This also adds the -DCOMPAT_BASE which is now required on the latest compat-drivers. The changes in this commit address the latest changes to compat-drivers to support unified drivers. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-29alx: update copyright header on refresh-compatLuis R. Rodriguez1-1/+14
This clarifies this is under the ISC license. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-11-17re-orgnize code, Multi-TX feature added.xiong14-12312/+5990
1. code are re-orgnized, abstract layer is removed. struct alx_hw is removed. 2. Multi-TX feature is added since the HW have 4 tx-Qs. 3. Interrupt usage for MSIX for RSS/Multi-TX is revised to share vector to save system resources. Interrupt allocation is moved to .probe routine. 4. Extension PHY resgister access is added as well. please NOTE, this version of code just pass compiler (under net-next.git env), only load/unload test is done. any other network related functions are not tested yet. BTW, when I run checkpatch on this code, there are many warnings about: WARNING: networking block comments put the trailing */ on a separate line there are also many many same warnings when I run it on other drivers in the kernel such as broadcom/tg3, intel/igbe Signed-off-by: xiong <xiong@qca.qualcomm.com> Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-08-23alx: add killing proprietary drivers goal as a project statementLuis R. Rodriguez1-1/+4
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
2012-08-23alx: Unified OS driver attempt for Linux / FreeBSDLuis R. Rodriguez17-0/+13643
Goal is to use modern tools like coccinelle to see if we can unify the alx Ethernet driver between Linux and FreeBSD. The objective is to see if in practice even with these tools we can keep getting updates to both OSes through a single tree but at the same time see what challenges we face. This is part of the lofty effort on killing proprietary drivers. I have taken the alx driver code from public postings on public mailing lists. At this point I have not updated the alx driver to match the newest v2 patch iterations. Work is still being done to modify that driver to meet community standards. Ideally we should try to first complete the driver with FreeBSD support here prior to getting it upstream in the Linux kernel as it would make the development easier. Once we have support targets for both FreeBSD and Linux we can push upstream. If we don't care then forget about this project. Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>