* [PATCH] ems_pci: fix size of CAN controllers BAR mapping for CPC-PCI v2
@ 2009-09-23 15:37 Sebastian Haas
[not found] ` <20090923153747.30154.99860.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Sebastian Haas @ 2009-09-23 15:37 UTC (permalink / raw)
To: netdev-u79uwXL29TY76Z2rM5mHXA
Cc: socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
davem-fT/PcQaiUtIeIZ0/mPfg9Q, wg-5Yr1BZd7O62+XT7JhA+gdA
The driver mapped only 128 bytes of the CAN controller address space when a
CPC-PCI v2 was detected (incl. CPC-104P). This patch will fix it by always
mapping the whole address space (4096 bytes on all boards) of the
corresponding PCI BAR.
Signed-off-by: Sebastian Haas <haas-zsNKPWJ8Pib6hrUXjxyGrA@public.gmane.org>
---
drivers/net/can/sja1000/ems_pci.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/net/can/sja1000/ems_pci.c b/drivers/net/can/sja1000/ems_pci.c
index 7d84b8a..ba98063 100644
--- a/drivers/net/can/sja1000/ems_pci.c
+++ b/drivers/net/can/sja1000/ems_pci.c
@@ -94,12 +94,14 @@ struct ems_pci_card {
#define EMS_PCI_CDR (CDR_CBP | CDR_CLKOUT_MASK)
#define EMS_PCI_V1_BASE_BAR 1
-#define EMS_PCI_V1_MEM_SIZE 4096
+#define EMS_PCI_V1_MEM_SIZE 4096 /* size of PITA control area */
#define EMS_PCI_V2_BASE_BAR 2
-#define EMS_PCI_V2_MEM_SIZE 128
+#define EMS_PCI_V2_MEM_SIZE 128 /* size of PLX control area */
#define EMS_PCI_CAN_BASE_OFFSET 0x400 /* offset where the controllers starts */
#define EMS_PCI_CAN_CTRL_SIZE 0x200 /* memory size for each controller */
+#define EMS_PCI_CONTR_MEM_SIZE 4096 /* size of controller area */
+
static struct pci_device_id ems_pci_tbl[] = {
/* CPC-PCI v1 */
{PCI_VENDOR_ID_SIEMENS, 0x2104, PCI_ANY_ID, PCI_ANY_ID,},
@@ -266,7 +268,7 @@ static int __devinit ems_pci_add_card(struct pci_dev *pdev,
goto failure_cleanup;
}
- card->base_addr = pci_iomap(pdev, base_bar, mem_size);
+ card->base_addr = pci_iomap(pdev, base_bar, EMS_PCI_CONTR_MEM_SIZE);
if (card->base_addr == NULL) {
err = -ENOMEM;
goto failure_cleanup;
--
EMS Dr. Thomas Wuensche e.K.
Sonnenhang 3
85304 Ilmmuenster
HRA Neuburg a.d. Donau, HR-Nr. 70.106
Phone: +49-8441-490260
Fax : +49-8441-81860
http://www.ems-wuensche.com
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] ems_pci: fix size of CAN controllers BAR mapping for CPC-PCI v2
[not found] ` <20090923153747.30154.99860.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
@ 2009-09-24 8:37 ` Wolfgang Grandegger
[not found] ` <4ABB2FBF.8080906-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Wolfgang Grandegger @ 2009-09-24 8:37 UTC (permalink / raw)
To: Sebastian Haas
Cc: socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
netdev-u79uwXL29TY76Z2rM5mHXA, davem-fT/PcQaiUtIeIZ0/mPfg9Q
Hi Sebastian,
Sebastian Haas wrote:
> The driver mapped only 128 bytes of the CAN controller address space when a
> CPC-PCI v2 was detected (incl. CPC-104P). This patch will fix it by always
> mapping the whole address space (4096 bytes on all boards) of the
> corresponding PCI BAR.
>
> Signed-off-by: Sebastian Haas <haas-zsNKPWJ8Pib6hrUXjxyGrA@public.gmane.org>
> ---
>
> drivers/net/can/sja1000/ems_pci.c | 8 +++++---
> 1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/can/sja1000/ems_pci.c b/drivers/net/can/sja1000/ems_pci.c
> index 7d84b8a..ba98063 100644
> --- a/drivers/net/can/sja1000/ems_pci.c
> +++ b/drivers/net/can/sja1000/ems_pci.c
> @@ -94,12 +94,14 @@ struct ems_pci_card {
> #define EMS_PCI_CDR (CDR_CBP | CDR_CLKOUT_MASK)
>
> #define EMS_PCI_V1_BASE_BAR 1
> -#define EMS_PCI_V1_MEM_SIZE 4096
> +#define EMS_PCI_V1_MEM_SIZE 4096 /* size of PITA control area */
> #define EMS_PCI_V2_BASE_BAR 2
> -#define EMS_PCI_V2_MEM_SIZE 128
> +#define EMS_PCI_V2_MEM_SIZE 128 /* size of PLX control area */
> #define EMS_PCI_CAN_BASE_OFFSET 0x400 /* offset where the controllers starts */
> #define EMS_PCI_CAN_CTRL_SIZE 0x200 /* memory size for each controller */
>
> +#define EMS_PCI_CONTR_MEM_SIZE 4096 /* size of controller area */
> +
> static struct pci_device_id ems_pci_tbl[] = {
> /* CPC-PCI v1 */
> {PCI_VENDOR_ID_SIEMENS, 0x2104, PCI_ANY_ID, PCI_ANY_ID,},
> @@ -266,7 +268,7 @@ static int __devinit ems_pci_add_card(struct pci_dev *pdev,
> goto failure_cleanup;
> }
>
> - card->base_addr = pci_iomap(pdev, base_bar, mem_size);
> + card->base_addr = pci_iomap(pdev, base_bar, EMS_PCI_CONTR_MEM_SIZE);
> if (card->base_addr == NULL) {
> err = -ENOMEM;
> goto failure_cleanup;
I see. To avoid confusion I suggest renaming some variables and defines:
s/EMS_PCI_V1_MEM_SIZE/EMS_PCI_V1_CONF_SIZE/
s/EMS_PCI_V2_MEM_SIZE/EMS_PCI_V2_CONF_SIZE/
s/mem_size/conf_size/
s/EMS_PCI_CONTR_MEM_SIZE/EMS_PCI_BASE_SIZE/
Would that not be more appropriate?
Wolfgang.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ems_pci: fix size of CAN controllers BAR mapping for CPC-PCI v2
[not found] ` <4ABB2FBF.8080906-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
@ 2009-09-24 11:52 ` Sebastian Haas
0 siblings, 0 replies; 3+ messages in thread
From: Sebastian Haas @ 2009-09-24 11:52 UTC (permalink / raw)
To: netdev-u79uwXL29TY76Z2rM5mHXA
Cc: socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
davem-fT/PcQaiUtIeIZ0/mPfg9Q, Wolfgang Grandegger
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Wolfgang,
Wolfgang Grandegger schrieb:
> Hi Sebastian,
>
> Sebastian Haas wrote:
>> The driver mapped only 128 bytes of the CAN controller address space when a
>> CPC-PCI v2 was detected (incl. CPC-104P). This patch will fix it by always
>> mapping the whole address space (4096 bytes on all boards) of the
>> corresponding PCI BAR.
>>
>> Signed-off-by: Sebastian Haas <haas-zsNKPWJ8Pib6hrUXjxyGrA@public.gmane.org>
>> ---
>>
>> drivers/net/can/sja1000/ems_pci.c | 8 +++++---
>> 1 files changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/net/can/sja1000/ems_pci.c b/drivers/net/can/sja1000/ems_pci.c
>> index 7d84b8a..ba98063 100644
>> --- a/drivers/net/can/sja1000/ems_pci.c
>> +++ b/drivers/net/can/sja1000/ems_pci.c
>> @@ -94,12 +94,14 @@ struct ems_pci_card {
>> #define EMS_PCI_CDR (CDR_CBP | CDR_CLKOUT_MASK)
>>
>> #define EMS_PCI_V1_BASE_BAR 1
>> -#define EMS_PCI_V1_MEM_SIZE 4096
>> +#define EMS_PCI_V1_MEM_SIZE 4096 /* size of PITA control area */
>> #define EMS_PCI_V2_BASE_BAR 2
>> -#define EMS_PCI_V2_MEM_SIZE 128
>> +#define EMS_PCI_V2_MEM_SIZE 128 /* size of PLX control area */
>> #define EMS_PCI_CAN_BASE_OFFSET 0x400 /* offset where the controllers starts */
>> #define EMS_PCI_CAN_CTRL_SIZE 0x200 /* memory size for each controller */
>>
>> +#define EMS_PCI_CONTR_MEM_SIZE 4096 /* size of controller area */
>> +
>> static struct pci_device_id ems_pci_tbl[] = {
>> /* CPC-PCI v1 */
>> {PCI_VENDOR_ID_SIEMENS, 0x2104, PCI_ANY_ID, PCI_ANY_ID,},
>> @@ -266,7 +268,7 @@ static int __devinit ems_pci_add_card(struct pci_dev *pdev,
>> goto failure_cleanup;
>> }
>>
>> - card->base_addr = pci_iomap(pdev, base_bar, mem_size);
>> + card->base_addr = pci_iomap(pdev, base_bar, EMS_PCI_CONTR_MEM_SIZE);
>> if (card->base_addr == NULL) {
>> err = -ENOMEM;
>> goto failure_cleanup;
>
> I see. To avoid confusion I suggest renaming some variables and defines:
>
> s/EMS_PCI_V1_MEM_SIZE/EMS_PCI_V1_CONF_SIZE/
> s/EMS_PCI_V2_MEM_SIZE/EMS_PCI_V2_CONF_SIZE/
> s/mem_size/conf_size/
> s/EMS_PCI_CONTR_MEM_SIZE/EMS_PCI_BASE_SIZE/
>
> Would that not be more appropriate?
Okay, I just wanted to minimize changes. Will change it and resubmit.
Sebastian
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAkq7XZQACgkQpqRB8PJG7XwjeQCfZZJP1FDD7TLBf2hK3dV64GgX
3oMAn2jIkdOx9Euc1UihiK/BXLSIUp06
=W9tL
-----END PGP SIGNATURE-----
--
EMS Dr. Thomas Wuensche e.K.
Sonnenhang 3
85304 Ilmmuenster
HRA Neuburg a.d. Donau, HR-Nr. 70.106
Phone: +49-8441-490260
Fax : +49-8441-81860
http://www.ems-wuensche.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-09-24 11:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-23 15:37 [PATCH] ems_pci: fix size of CAN controllers BAR mapping for CPC-PCI v2 Sebastian Haas
[not found] ` <20090923153747.30154.99860.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-09-24 8:37 ` Wolfgang Grandegger
[not found] ` <4ABB2FBF.8080906-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2009-09-24 11:52 ` Sebastian Haas
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).