Lines Matching +full:1000 +full:mbps
211 …{ .msps = 1000, .rx2 = 0x3e, .trio0 = 0x024a, .trio1 = 0x0012, .trio2 = 0x0a, .lane27 = 0x0400, .l…
246 u16 mbps; member
251 { .mbps = 1500, .reg = 0xcc },
252 { .mbps = 1550, .reg = 0x1d },
253 { .mbps = 1600, .reg = 0x27 },
254 { .mbps = 1650, .reg = 0x30 },
255 { .mbps = 1700, .reg = 0x39 },
256 { .mbps = 1750, .reg = 0x42 },
257 { .mbps = 1800, .reg = 0x4b },
258 { .mbps = 1850, .reg = 0x55 },
259 { .mbps = 1900, .reg = 0x5e },
260 { .mbps = 1950, .reg = 0x67 },
261 { .mbps = 2000, .reg = 0x71 },
262 { .mbps = 2050, .reg = 0x79 },
263 { .mbps = 2100, .reg = 0x83 },
264 { .mbps = 2150, .reg = 0x8c },
265 { .mbps = 2200, .reg = 0x95 },
266 { .mbps = 2250, .reg = 0x9e },
267 { .mbps = 2300, .reg = 0xa7 },
268 { .mbps = 2350, .reg = 0xb0 },
269 { .mbps = 2400, .reg = 0xba },
270 { .mbps = 2450, .reg = 0xc3 },
271 { .mbps = 2500, .reg = 0xcc },
276 { .mbps = 80, .reg = 0x86 },
277 { .mbps = 90, .reg = 0x86 },
278 { .mbps = 100, .reg = 0x87 },
279 { .mbps = 110, .reg = 0x87 },
280 { .mbps = 120, .reg = 0x88 },
281 { .mbps = 130, .reg = 0x88 },
282 { .mbps = 140, .reg = 0x89 },
283 { .mbps = 150, .reg = 0x89 },
284 { .mbps = 160, .reg = 0x8a },
285 { .mbps = 170, .reg = 0x8a },
286 { .mbps = 180, .reg = 0x8b },
287 { .mbps = 190, .reg = 0x8b },
288 { .mbps = 205, .reg = 0x8c },
289 { .mbps = 220, .reg = 0x8d },
290 { .mbps = 235, .reg = 0x8e },
291 { .mbps = 250, .reg = 0x8e },
296 { .mbps = 80, .reg = 0x00 },
297 { .mbps = 90, .reg = 0x20 },
298 { .mbps = 100, .reg = 0x40 },
299 { .mbps = 110, .reg = 0x02 },
300 { .mbps = 130, .reg = 0x22 },
301 { .mbps = 140, .reg = 0x42 },
302 { .mbps = 150, .reg = 0x04 },
303 { .mbps = 170, .reg = 0x24 },
304 { .mbps = 180, .reg = 0x44 },
305 { .mbps = 200, .reg = 0x06 },
306 { .mbps = 220, .reg = 0x26 },
307 { .mbps = 240, .reg = 0x46 },
308 { .mbps = 250, .reg = 0x08 },
309 { .mbps = 270, .reg = 0x28 },
310 { .mbps = 300, .reg = 0x0a },
311 { .mbps = 330, .reg = 0x2a },
312 { .mbps = 360, .reg = 0x4a },
313 { .mbps = 400, .reg = 0x0c },
314 { .mbps = 450, .reg = 0x2c },
315 { .mbps = 500, .reg = 0x0e },
316 { .mbps = 550, .reg = 0x2e },
317 { .mbps = 600, .reg = 0x10 },
318 { .mbps = 650, .reg = 0x30 },
319 { .mbps = 700, .reg = 0x12 },
320 { .mbps = 750, .reg = 0x32 },
321 { .mbps = 800, .reg = 0x52 },
322 { .mbps = 850, .reg = 0x72 },
323 { .mbps = 900, .reg = 0x14 },
324 { .mbps = 950, .reg = 0x34 },
325 { .mbps = 1000, .reg = 0x54 },
326 { .mbps = 1050, .reg = 0x74 },
327 { .mbps = 1125, .reg = 0x16 },
340 { .mbps = 80, .reg = 0x00 },
341 { .mbps = 90, .reg = 0x10 },
342 { .mbps = 100, .reg = 0x20 },
343 { .mbps = 110, .reg = 0x30 },
344 { .mbps = 120, .reg = 0x01 },
345 { .mbps = 130, .reg = 0x11 },
346 { .mbps = 140, .reg = 0x21 },
347 { .mbps = 150, .reg = 0x31 },
348 { .mbps = 160, .reg = 0x02 },
349 { .mbps = 170, .reg = 0x12 },
350 { .mbps = 180, .reg = 0x22 },
351 { .mbps = 190, .reg = 0x32 },
352 { .mbps = 205, .reg = 0x03 },
353 { .mbps = 220, .reg = 0x13 },
354 { .mbps = 235, .reg = 0x23 },
355 { .mbps = 250, .reg = 0x33 },
356 { .mbps = 275, .reg = 0x04 },
357 { .mbps = 300, .reg = 0x14 },
358 { .mbps = 325, .reg = 0x25 },
359 { .mbps = 350, .reg = 0x35 },
360 { .mbps = 400, .reg = 0x05 },
361 { .mbps = 450, .reg = 0x16 },
362 { .mbps = 500, .reg = 0x26 },
363 { .mbps = 550, .reg = 0x37 },
364 { .mbps = 600, .reg = 0x07 },
365 { .mbps = 650, .reg = 0x18 },
366 { .mbps = 700, .reg = 0x28 },
367 { .mbps = 750, .reg = 0x39 },
368 { .mbps = 800, .reg = 0x09 },
369 { .mbps = 850, .reg = 0x19 },
370 { .mbps = 900, .reg = 0x29 },
371 { .mbps = 950, .reg = 0x3a },
372 { .mbps = 1000, .reg = 0x0a },
373 { .mbps = 1050, .reg = 0x1a },
374 { .mbps = 1100, .reg = 0x2a },
375 { .mbps = 1150, .reg = 0x3b },
376 { .mbps = 1200, .reg = 0x0b },
377 { .mbps = 1250, .reg = 0x1b },
378 { .mbps = 1300, .reg = 0x2b },
379 { .mbps = 1350, .reg = 0x3c },
380 { .mbps = 1400, .reg = 0x0c },
381 { .mbps = 1450, .reg = 0x1c },
382 { .mbps = 1500, .reg = 0x2c },
383 { .mbps = 1550, .reg = 0x3d },
384 { .mbps = 1600, .reg = 0x0d },
385 { .mbps = 1650, .reg = 0x1d },
386 { .mbps = 1700, .reg = 0x2e },
387 { .mbps = 1750, .reg = 0x3e },
388 { .mbps = 1800, .reg = 0x0e },
389 { .mbps = 1850, .reg = 0x1e },
390 { .mbps = 1900, .reg = 0x2f },
391 { .mbps = 1950, .reg = 0x3f },
392 { .mbps = 2000, .reg = 0x0f },
393 { .mbps = 2050, .reg = 0x40 },
394 { .mbps = 2100, .reg = 0x41 },
395 { .mbps = 2150, .reg = 0x42 },
396 { .mbps = 2200, .reg = 0x43 },
397 { .mbps = 2300, .reg = 0x45 },
398 { .mbps = 2350, .reg = 0x46 },
399 { .mbps = 2400, .reg = 0x47 },
400 { .mbps = 2450, .reg = 0x48 },
401 { .mbps = 2500, .reg = 0x49 },
406 { .mbps = 80, .reg = 0x00 },
407 { .mbps = 90, .reg = 0x10 },
408 { .mbps = 100, .reg = 0x20 },
409 { .mbps = 110, .reg = 0x30 },
410 { .mbps = 120, .reg = 0x01 },
411 { .mbps = 130, .reg = 0x11 },
412 { .mbps = 140, .reg = 0x21 },
413 { .mbps = 150, .reg = 0x31 },
414 { .mbps = 160, .reg = 0x02 },
415 { .mbps = 170, .reg = 0x12 },
416 { .mbps = 180, .reg = 0x22 },
417 { .mbps = 190, .reg = 0x32 },
418 { .mbps = 205, .reg = 0x03 },
419 { .mbps = 220, .reg = 0x13 },
420 { .mbps = 235, .reg = 0x23 },
421 { .mbps = 250, .reg = 0x33 },
422 { .mbps = 275, .reg = 0x04 },
423 { .mbps = 300, .reg = 0x14 },
424 { .mbps = 325, .reg = 0x25 },
425 { .mbps = 350, .reg = 0x35 },
426 { .mbps = 400, .reg = 0x05 },
427 { .mbps = 450, .reg = 0x16 },
428 { .mbps = 500, .reg = 0x26 },
429 { .mbps = 550, .reg = 0x37 },
430 { .mbps = 600, .reg = 0x07 },
431 { .mbps = 650, .reg = 0x18 },
432 { .mbps = 700, .reg = 0x28 },
433 { .mbps = 750, .reg = 0x39 },
434 { .mbps = 800, .reg = 0x09 },
435 { .mbps = 850, .reg = 0x19 },
436 { .mbps = 900, .reg = 0x29 },
437 { .mbps = 950, .reg = 0x3a },
438 { .mbps = 1000, .reg = 0x0a },
439 { .mbps = 1050, .reg = 0x1a },
440 { .mbps = 1100, .reg = 0x2a },
441 { .mbps = 1150, .reg = 0x3b },
442 { .mbps = 1200, .reg = 0x0b },
443 { .mbps = 1250, .reg = 0x1b },
444 { .mbps = 1300, .reg = 0x2b },
445 { .mbps = 1350, .reg = 0x3c },
446 { .mbps = 1400, .reg = 0x0c },
447 { .mbps = 1450, .reg = 0x1c },
448 { .mbps = 1500, .reg = 0x2c },
453 { .mbps = 80, .reg = 0x00 },
454 { .mbps = 90, .reg = 0x10 },
455 { .mbps = 100, .reg = 0x20 },
456 { .mbps = 110, .reg = 0x30 },
457 { .mbps = 120, .reg = 0x01 },
458 { .mbps = 130, .reg = 0x11 },
459 { .mbps = 140, .reg = 0x21 },
460 { .mbps = 150, .reg = 0x31 },
461 { .mbps = 160, .reg = 0x02 },
462 { .mbps = 170, .reg = 0x12 },
463 { .mbps = 180, .reg = 0x22 },
464 { .mbps = 190, .reg = 0x32 },
465 { .mbps = 205, .reg = 0x03 },
466 { .mbps = 220, .reg = 0x13 },
467 { .mbps = 235, .reg = 0x23 },
468 { .mbps = 250, .reg = 0x33 },
469 { .mbps = 275, .reg = 0x04 },
470 { .mbps = 300, .reg = 0x14 },
471 { .mbps = 325, .reg = 0x05 },
472 { .mbps = 350, .reg = 0x15 },
473 { .mbps = 400, .reg = 0x25 },
474 { .mbps = 450, .reg = 0x06 },
475 { .mbps = 500, .reg = 0x16 },
476 { .mbps = 550, .reg = 0x07 },
477 { .mbps = 600, .reg = 0x17 },
478 { .mbps = 650, .reg = 0x08 },
479 { .mbps = 700, .reg = 0x18 },
480 { .mbps = 750, .reg = 0x09 },
481 { .mbps = 800, .reg = 0x19 },
482 { .mbps = 850, .reg = 0x29 },
483 { .mbps = 900, .reg = 0x39 },
484 { .mbps = 950, .reg = 0x0a },
485 { .mbps = 1000, .reg = 0x1a },
486 { .mbps = 1050, .reg = 0x2a },
487 { .mbps = 1100, .reg = 0x3a },
488 { .mbps = 1150, .reg = 0x0b },
489 { .mbps = 1200, .reg = 0x1b },
490 { .mbps = 1250, .reg = 0x2b },
491 { .mbps = 1300, .reg = 0x3b },
492 { .mbps = 1350, .reg = 0x0c },
493 { .mbps = 1400, .reg = 0x1c },
494 { .mbps = 1450, .reg = 0x2c },
495 { .mbps = 1500, .reg = 0x3c },
588 int (*init_phtw)(struct rcar_csi2 *priv, unsigned int mbps);
701 usleep_range(1000, 2000); in rcsi2_wait_phy_start()
709 static int rcsi2_set_phypll(struct rcar_csi2 *priv, unsigned int mbps) in rcsi2_set_phypll() argument
714 if (mbps < priv->info->hsfreqrange->mbps) in rcsi2_set_phypll()
715 dev_warn(priv->dev, "%u Mbps less than min PHY speed %u Mbps", in rcsi2_set_phypll()
716 mbps, priv->info->hsfreqrange->mbps); in rcsi2_set_phypll()
718 for (hsfreq = priv->info->hsfreqrange; hsfreq->mbps != 0; hsfreq++) { in rcsi2_set_phypll()
719 if (hsfreq->mbps >= mbps) in rcsi2_set_phypll()
724 if (!hsfreq->mbps) { in rcsi2_set_phypll()
725 dev_err(priv->dev, "Unsupported PHY speed (%u Mbps)", mbps); in rcsi2_set_phypll()
730 ((mbps - hsfreq_prev->mbps) <= (hsfreq->mbps - mbps))) in rcsi2_set_phypll()
743 u64 mbps; in rcsi2_calc_mbps() local
759 * Calculate the phypll in mbps. in rcsi2_calc_mbps()
763 mbps = v4l2_ctrl_g_ctrl_int64(ctrl) * bpp; in rcsi2_calc_mbps()
764 do_div(mbps, lanes * 1000000); in rcsi2_calc_mbps()
768 mbps = div_u64(mbps * 5, 14); in rcsi2_calc_mbps()
770 return mbps; in rcsi2_calc_mbps()
828 int mbps, ret; in rcsi2_start_receiver_gen3() local
887 mbps = rcsi2_calc_mbps(priv, format->bpp, lanes); in rcsi2_start_receiver_gen3()
888 if (mbps < 0) in rcsi2_start_receiver_gen3()
889 return mbps; in rcsi2_start_receiver_gen3()
915 ret = priv->info->init_phtw(priv, mbps); in rcsi2_start_receiver_gen3()
921 ret = rcsi2_set_phypll(priv, mbps); in rcsi2_start_receiver_gen3()
974 usleep_range(1000, 2000); in rcsi2_wait_phy_start_v4h()
1283 usleep_range(1000, 2000); in rcsi2_irq_thread()
1467 usleep_range(1000, 2000); in rcsi2_phtw_write()
1490 static int rcsi2_phtw_write_mbps(struct rcar_csi2 *priv, unsigned int mbps, in rcsi2_phtw_write_mbps() argument
1496 for (value = values; value->mbps; value++) { in rcsi2_phtw_write_mbps()
1497 if (value->mbps >= mbps) in rcsi2_phtw_write_mbps()
1503 ((mbps - prev_value->mbps) <= (value->mbps - mbps))) in rcsi2_phtw_write_mbps()
1506 if (!value->mbps) { in rcsi2_phtw_write_mbps()
1507 dev_err(priv->dev, "Unsupported PHY speed (%u Mbps)", mbps); in rcsi2_phtw_write_mbps()
1515 unsigned int mbps) in __rcsi2_init_phtw_h3_v3h_m3n() argument
1541 if (mbps != 0 && mbps <= 250) { in __rcsi2_init_phtw_h3_v3h_m3n()
1546 ret = rcsi2_phtw_write_mbps(priv, mbps, phtw_mbps_h3_v3h_m3n, in __rcsi2_init_phtw_h3_v3h_m3n()
1555 static int rcsi2_init_phtw_h3_v3h_m3n(struct rcar_csi2 *priv, unsigned int mbps) in rcsi2_init_phtw_h3_v3h_m3n() argument
1557 return __rcsi2_init_phtw_h3_v3h_m3n(priv, mbps); in rcsi2_init_phtw_h3_v3h_m3n()
1560 static int rcsi2_init_phtw_h3es2(struct rcar_csi2 *priv, unsigned int mbps) in rcsi2_init_phtw_h3es2() argument
1565 static int rcsi2_init_phtw_v3m_e3(struct rcar_csi2 *priv, unsigned int mbps) in rcsi2_init_phtw_v3m_e3() argument
1567 return rcsi2_phtw_write_mbps(priv, mbps, phtw_mbps_v3m_e3, 0x44); in rcsi2_init_phtw_v3m_e3()
1585 unsigned int mbps) in rcsi2_init_phtw_v3u() argument
1587 /* In case of 1500Mbps or less */ in rcsi2_init_phtw_v3u()
1600 /* In case of 1500Mbps or less */ in rcsi2_init_phtw_v3u()
1616 if (mbps != 0 && mbps <= 1500) in rcsi2_init_phtw_v3u()
1619 ret = rcsi2_phtw_write_mbps(priv, mbps, phtw_mbps_v3u, 0xe2); in rcsi2_init_phtw_v3u()
1627 if (mbps != 0 && mbps <= 1500) { in rcsi2_init_phtw_v3u()