diff options
author | Vitaly Bordug <vbordug@ru.mvista.com> | 2006-09-21 14:38:05 -0400 |
---|---|---|
committer | Vitaly Bordug <vbordug@ru.mvista.com> | 2006-09-21 14:38:05 -0400 |
commit | 611a15afcdaacec6efba984c7eb089b853564bdf (patch) | |
tree | 6d33fdbb9354d4548fa44e5115de7186f38ac8c0 /drivers/serial/cpm_uart | |
parent | d3465c921f79cfef0a4a8ceeeef9a3721bbbb57d (diff) |
POWERPC: Bring the fs_no calculation to the relevant SoC enumeration
The fs_no mean used to be fs_enet driver driven, hence it was an
enumeration across all the possible fs_enet "users" in the SoC. Now, with
QE on the pipeline, and to make DTS descriptions more clear, fs_no features
relevant SoC part number, with additional field to describe the SoC type.
Another reason for that is now not only fs_enet is going to utilize those
stuff. There might be UART, HLDC, and even USB, so to prevent confusion and
be ready for upcoming OF_device transfer, fs_enet and cpm_uart drivers were
updated in that concern, as well as the relevant DTS.
Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com>
Diffstat (limited to 'drivers/serial/cpm_uart')
-rw-r--r-- | drivers/serial/cpm_uart/cpm_uart_core.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/serial/cpm_uart/cpm_uart_core.c b/drivers/serial/cpm_uart/cpm_uart_core.c index 24613a68f5cc..a0d6136deb9b 100644 --- a/drivers/serial/cpm_uart/cpm_uart_core.c +++ b/drivers/serial/cpm_uart/cpm_uart_core.c | |||
@@ -1023,15 +1023,17 @@ int cpm_uart_drv_get_platform_data(struct platform_device *pdev, int is_con) | |||
1023 | { | 1023 | { |
1024 | struct resource *r; | 1024 | struct resource *r; |
1025 | struct fs_uart_platform_info *pdata = pdev->dev.platform_data; | 1025 | struct fs_uart_platform_info *pdata = pdev->dev.platform_data; |
1026 | int idx = pdata->fs_no; /* It is UART_SMCx or UART_SCCx index */ | 1026 | int idx; /* It is UART_SMCx or UART_SCCx index */ |
1027 | struct uart_cpm_port *pinfo; | 1027 | struct uart_cpm_port *pinfo; |
1028 | int line; | 1028 | int line; |
1029 | u32 mem, pram; | 1029 | u32 mem, pram; |
1030 | 1030 | ||
1031 | idx = pdata->fs_no = fs_uart_get_id(pdata); | ||
1032 | |||
1031 | line = cpm_uart_id2nr(idx); | 1033 | line = cpm_uart_id2nr(idx); |
1032 | if(line < 0) { | 1034 | if(line < 0) { |
1033 | printk(KERN_ERR"%s(): port %d is not registered", __FUNCTION__, idx); | 1035 | printk(KERN_ERR"%s(): port %d is not registered", __FUNCTION__, idx); |
1034 | return -1; | 1036 | return -EINVAL; |
1035 | } | 1037 | } |
1036 | 1038 | ||
1037 | pinfo = (struct uart_cpm_port *) &cpm_uart_ports[idx]; | 1039 | pinfo = (struct uart_cpm_port *) &cpm_uart_ports[idx]; |
@@ -1263,11 +1265,12 @@ static int cpm_uart_drv_probe(struct device *dev) | |||
1263 | } | 1265 | } |
1264 | 1266 | ||
1265 | pdata = pdev->dev.platform_data; | 1267 | pdata = pdev->dev.platform_data; |
1266 | pr_debug("cpm_uart_drv_probe: Adding CPM UART %d\n", cpm_uart_id2nr(pdata->fs_no)); | ||
1267 | 1268 | ||
1268 | if ((ret = cpm_uart_drv_get_platform_data(pdev, 0))) | 1269 | if ((ret = cpm_uart_drv_get_platform_data(pdev, 0))) |
1269 | return ret; | 1270 | return ret; |
1270 | 1271 | ||
1272 | pr_debug("cpm_uart_drv_probe: Adding CPM UART %d\n", cpm_uart_id2nr(pdata->fs_no)); | ||
1273 | |||
1271 | if (pdata->init_ioports) | 1274 | if (pdata->init_ioports) |
1272 | pdata->init_ioports(pdata); | 1275 | pdata->init_ioports(pdata); |
1273 | 1276 | ||