Lines Matching refs:dsi

34 	struct mipi_dsi_device *dsi[2];
70 struct mipi_dsi_device *dsi0 = pinfo->dsi[0];
71 struct mipi_dsi_device *dsi1 = pinfo->dsi[1];
290 struct mipi_dsi_device *dsi0 = pinfo->dsi[0];
291 struct mipi_dsi_device *dsi1 = pinfo->dsi[1];
488 struct mipi_dsi_device *dsi = pinfo->dsi[0];
489 struct device *dev = &dsi->dev;
492 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x20);
493 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
494 mipi_dsi_dcs_write_seq(dsi, 0x05, 0xd9);
495 mipi_dsi_dcs_write_seq(dsi, 0x07, 0x78);
496 mipi_dsi_dcs_write_seq(dsi, 0x08, 0x5a);
497 mipi_dsi_dcs_write_seq(dsi, 0x0d, 0x63);
498 mipi_dsi_dcs_write_seq(dsi, 0x0e, 0x91);
499 mipi_dsi_dcs_write_seq(dsi, 0x0f, 0x73);
500 mipi_dsi_dcs_write_seq(dsi, 0x95, 0xeb);
501 mipi_dsi_dcs_write_seq(dsi, 0x96, 0xeb);
502 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_ROWS, 0x11);
503 mipi_dsi_dcs_write_seq(dsi, 0x6d, 0x66);
504 mipi_dsi_dcs_write_seq(dsi, 0x75, 0xa2);
505 mipi_dsi_dcs_write_seq(dsi, 0x77, 0xb3);
506 mipi_dsi_dcs_write_seq(dsi, 0xb0, 0x00, 0x08, 0x00, 0x23, 0x00, 0x4d, 0x00, 0x6d, 0x00,
508 mipi_dsi_dcs_write_seq(dsi, 0xb1, 0x00, 0xda, 0x01, 0x13, 0x01, 0x3c, 0x01, 0x7e, 0x01,
510 mipi_dsi_dcs_write_seq(dsi, 0xb2, 0x02, 0x67, 0x02, 0xa6, 0x02, 0xd1, 0x03, 0x08, 0x03,
512 mipi_dsi_dcs_write_seq(dsi, 0xb3, 0x03, 0x8e, 0x03, 0xa2, 0x03, 0xb7, 0x03, 0xe7, 0x03,
514 mipi_dsi_dcs_write_seq(dsi, 0xb4, 0x00, 0x08, 0x00, 0x23, 0x00, 0x4d, 0x00, 0x6d, 0x00,
516 mipi_dsi_dcs_write_seq(dsi, 0xb5, 0x00, 0xda, 0x01, 0x13, 0x01, 0x3c, 0x01, 0x7e, 0x01,
518 mipi_dsi_dcs_write_seq(dsi, 0xb6, 0x02, 0x67, 0x02, 0xa6, 0x02, 0xd1, 0x03, 0x08, 0x03,
520 mipi_dsi_dcs_write_seq(dsi, 0xb7, 0x03, 0x8e, 0x03, 0xa2, 0x03, 0xb7, 0x03, 0xe7, 0x03,
522 mipi_dsi_dcs_write_seq(dsi, 0xb8, 0x00, 0x08, 0x00, 0x23, 0x00, 0x4d, 0x00, 0x6d, 0x00,
524 mipi_dsi_dcs_write_seq(dsi, 0xb9, 0x00, 0xda, 0x01, 0x13, 0x01, 0x3c, 0x01, 0x7e, 0x01,
526 mipi_dsi_dcs_write_seq(dsi, 0xba, 0x02, 0x67, 0x02, 0xa6, 0x02, 0xd1, 0x03, 0x08, 0x03,
528 mipi_dsi_dcs_write_seq(dsi, 0xbb, 0x03, 0x8e, 0x03, 0xa2, 0x03, 0xb7, 0x03, 0xe7, 0x03,
530 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x21);
531 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
532 mipi_dsi_dcs_write_seq(dsi, 0xb0, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x45, 0x00, 0x65, 0x00,
534 mipi_dsi_dcs_write_seq(dsi, 0xb1, 0x00, 0xd2, 0x01, 0x0b, 0x01, 0x34, 0x01, 0x76, 0x01,
536 mipi_dsi_dcs_write_seq(dsi, 0xb2, 0x02, 0x5f, 0x02, 0x9e, 0x02, 0xc9, 0x03, 0x00, 0x03,
538 mipi_dsi_dcs_write_seq(dsi, 0xb3, 0x03, 0x86, 0x03, 0x9a, 0x03, 0xaf, 0x03, 0xdf, 0x03,
540 mipi_dsi_dcs_write_seq(dsi, 0xb4, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x45, 0x00, 0x65, 0x00,
542 mipi_dsi_dcs_write_seq(dsi, 0xb5, 0x00, 0xd2, 0x01, 0x0b, 0x01, 0x34, 0x01, 0x76, 0x01,
544 mipi_dsi_dcs_write_seq(dsi, 0xb6, 0x02, 0x5f, 0x02, 0x9e, 0x02, 0xc9, 0x03, 0x00, 0x03,
546 mipi_dsi_dcs_write_seq(dsi, 0xb7, 0x03, 0x86, 0x03, 0x9a, 0x03, 0xaf, 0x03, 0xdf, 0x03,
548 mipi_dsi_dcs_write_seq(dsi, 0xb8, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x45, 0x00, 0x65, 0x00,
550 mipi_dsi_dcs_write_seq(dsi, 0xb9, 0x00, 0xd2, 0x01, 0x0b, 0x01, 0x34, 0x01, 0x76, 0x01,
552 mipi_dsi_dcs_write_seq(dsi, 0xba, 0x02, 0x5f, 0x02, 0x9e, 0x02, 0xc9, 0x03, 0x00, 0x03,
554 mipi_dsi_dcs_write_seq(dsi, 0xbb, 0x03, 0x86, 0x03, 0x9a, 0x03, 0xaf, 0x03, 0xdf, 0x03,
556 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x23);
557 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
558 mipi_dsi_dcs_write_seq(dsi, 0x00, 0x80);
559 mipi_dsi_dcs_write_seq(dsi, 0x07, 0x00);
560 mipi_dsi_dcs_write_seq(dsi, 0x11, 0x01);
561 mipi_dsi_dcs_write_seq(dsi, 0x12, 0x77);
562 mipi_dsi_dcs_write_seq(dsi, 0x15, 0x07);
563 mipi_dsi_dcs_write_seq(dsi, 0x16, 0x07);
564 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x24);
565 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
566 mipi_dsi_dcs_write_seq(dsi, 0x00, 0x00);
567 mipi_dsi_dcs_write_seq(dsi, 0x01, 0x00);
568 mipi_dsi_dcs_write_seq(dsi, 0x02, 0x1c);
569 mipi_dsi_dcs_write_seq(dsi, 0x03, 0x1c);
570 mipi_dsi_dcs_write_seq(dsi, 0x04, 0x1d);
571 mipi_dsi_dcs_write_seq(dsi, 0x05, 0x1d);
572 mipi_dsi_dcs_write_seq(dsi, 0x06, 0x04);
573 mipi_dsi_dcs_write_seq(dsi, 0x07, 0x04);
574 mipi_dsi_dcs_write_seq(dsi, 0x08, 0x0f);
575 mipi_dsi_dcs_write_seq(dsi, 0x09, 0x0f);
576 mipi_dsi_dcs_write_seq(dsi, 0x0a, 0x0e);
577 mipi_dsi_dcs_write_seq(dsi, 0x0b, 0x0e);
578 mipi_dsi_dcs_write_seq(dsi, 0x0c, 0x0d);
579 mipi_dsi_dcs_write_seq(dsi, 0x0d, 0x0d);
580 mipi_dsi_dcs_write_seq(dsi, 0x0e, 0x0c);
581 mipi_dsi_dcs_write_seq(dsi, 0x0f, 0x0c);
582 mipi_dsi_dcs_write_seq(dsi, 0x10, 0x08);
583 mipi_dsi_dcs_write_seq(dsi, 0x11, 0x08);
584 mipi_dsi_dcs_write_seq(dsi, 0x12, 0x00);
585 mipi_dsi_dcs_write_seq(dsi, 0x13, 0x00);
586 mipi_dsi_dcs_write_seq(dsi, 0x14, 0x00);
587 mipi_dsi_dcs_write_seq(dsi, 0x15, 0x00);
588 mipi_dsi_dcs_write_seq(dsi, 0x16, 0x00);
589 mipi_dsi_dcs_write_seq(dsi, 0x17, 0x00);
590 mipi_dsi_dcs_write_seq(dsi, 0x18, 0x1c);
591 mipi_dsi_dcs_write_seq(dsi, 0x19, 0x1c);
592 mipi_dsi_dcs_write_seq(dsi, 0x1a, 0x1d);
593 mipi_dsi_dcs_write_seq(dsi, 0x1b, 0x1d);
594 mipi_dsi_dcs_write_seq(dsi, 0x1c, 0x04);
595 mipi_dsi_dcs_write_seq(dsi, 0x1d, 0x04);
596 mipi_dsi_dcs_write_seq(dsi, 0x1e, 0x0f);
597 mipi_dsi_dcs_write_seq(dsi, 0x1f, 0x0f);
598 mipi_dsi_dcs_write_seq(dsi, 0x20, 0x0e);
599 mipi_dsi_dcs_write_seq(dsi, 0x21, 0x0e);
600 mipi_dsi_dcs_write_seq(dsi, 0x22, 0x0d);
601 mipi_dsi_dcs_write_seq(dsi, 0x23, 0x0d);
602 mipi_dsi_dcs_write_seq(dsi, 0x24, 0x0c);
603 mipi_dsi_dcs_write_seq(dsi, 0x25, 0x0c);
604 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_GAMMA_CURVE, 0x08);
605 mipi_dsi_dcs_write_seq(dsi, 0x27, 0x08);
606 mipi_dsi_dcs_write_seq(dsi, 0x28, 0x00);
607 mipi_dsi_dcs_write_seq(dsi, 0x29, 0x00);
608 mipi_dsi_dcs_write_seq(dsi, 0x2a, 0x00);
609 mipi_dsi_dcs_write_seq(dsi, 0x2b, 0x00);
610 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_WRITE_LUT, 0x20);
611 mipi_dsi_dcs_write_seq(dsi, 0x2f, 0x0a);
612 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_ROWS, 0x44);
613 mipi_dsi_dcs_write_seq(dsi, 0x33, 0x0c);
614 mipi_dsi_dcs_write_seq(dsi, 0x34, 0x32);
615 mipi_dsi_dcs_write_seq(dsi, 0x37, 0x44);
616 mipi_dsi_dcs_write_seq(dsi, 0x38, 0x40);
617 mipi_dsi_dcs_write_seq(dsi, 0x39, 0x00);
619 ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x9a);
625 mipi_dsi_dcs_write_seq(dsi, 0x3b, 0xa0);
626 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_3D_CONTROL, 0x42);
627 mipi_dsi_dcs_write_seq(dsi, 0x3f, 0x06);
628 mipi_dsi_dcs_write_seq(dsi, 0x43, 0x06);
629 mipi_dsi_dcs_write_seq(dsi, 0x47, 0x66);
630 mipi_dsi_dcs_write_seq(dsi, 0x4a, 0x9a);
631 mipi_dsi_dcs_write_seq(dsi, 0x4b, 0xa0);
632 mipi_dsi_dcs_write_seq(dsi, 0x4c, 0x91);
633 mipi_dsi_dcs_write_seq(dsi, 0x4d, 0x21);
634 mipi_dsi_dcs_write_seq(dsi, 0x4e, 0x43);
636 ret = mipi_dsi_dcs_set_display_brightness(dsi, 18);
642 mipi_dsi_dcs_write_seq(dsi, 0x52, 0x34);
643 mipi_dsi_dcs_write_seq(dsi, 0x55, 0x82, 0x02);
644 mipi_dsi_dcs_write_seq(dsi, 0x56, 0x04);
645 mipi_dsi_dcs_write_seq(dsi, 0x58, 0x21);
646 mipi_dsi_dcs_write_seq(dsi, 0x59, 0x30);
647 mipi_dsi_dcs_write_seq(dsi, 0x5a, 0xba);
648 mipi_dsi_dcs_write_seq(dsi, 0x5b, 0xa0);
649 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_CABC_MIN_BRIGHTNESS, 0x00, 0x06);
650 mipi_dsi_dcs_write_seq(dsi, 0x5f, 0x00);
651 mipi_dsi_dcs_write_seq(dsi, 0x65, 0x82);
652 mipi_dsi_dcs_write_seq(dsi, 0x7e, 0x20);
653 mipi_dsi_dcs_write_seq(dsi, 0x7f, 0x3c);
654 mipi_dsi_dcs_write_seq(dsi, 0x82, 0x04);
655 mipi_dsi_dcs_write_seq(dsi, 0x97, 0xc0);
656 mipi_dsi_dcs_write_seq(dsi, 0xb6,
659 mipi_dsi_dcs_write_seq(dsi, 0x92, 0xc4);
660 mipi_dsi_dcs_write_seq(dsi, 0x93, 0x1a);
661 mipi_dsi_dcs_write_seq(dsi, 0x94, 0x5f);
662 mipi_dsi_dcs_write_seq(dsi, 0xd7, 0x55);
663 mipi_dsi_dcs_write_seq(dsi, 0xda, 0x0a);
664 mipi_dsi_dcs_write_seq(dsi, 0xde, 0x08);
665 mipi_dsi_dcs_write_seq(dsi, 0xdb, 0x05);
666 mipi_dsi_dcs_write_seq(dsi, 0xdc, 0xc4);
667 mipi_dsi_dcs_write_seq(dsi, 0xdd, 0x22);
668 mipi_dsi_dcs_write_seq(dsi, 0xdf, 0x05);
669 mipi_dsi_dcs_write_seq(dsi, 0xe0, 0xc4);
670 mipi_dsi_dcs_write_seq(dsi, 0xe1, 0x05);
671 mipi_dsi_dcs_write_seq(dsi, 0xe2, 0xc4);
672 mipi_dsi_dcs_write_seq(dsi, 0xe3, 0x05);
673 mipi_dsi_dcs_write_seq(dsi, 0xe4, 0xc4);
674 mipi_dsi_dcs_write_seq(dsi, 0xe5, 0x05);
675 mipi_dsi_dcs_write_seq(dsi, 0xe6, 0xc4);
676 mipi_dsi_dcs_write_seq(dsi, 0x5c, 0x88);
677 mipi_dsi_dcs_write_seq(dsi, 0x5d, 0x08);
678 mipi_dsi_dcs_write_seq(dsi, 0x8d, 0x88);
679 mipi_dsi_dcs_write_seq(dsi, 0x8e, 0x08);
680 mipi_dsi_dcs_write_seq(dsi, 0xb5, 0x90);
681 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x25);
682 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
683 mipi_dsi_dcs_write_seq(dsi, 0x05, 0x00);
684 mipi_dsi_dcs_write_seq(dsi, 0x19, 0x07);
685 mipi_dsi_dcs_write_seq(dsi, 0x1f, 0xba);
686 mipi_dsi_dcs_write_seq(dsi, 0x20, 0xa0);
687 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_GAMMA_CURVE, 0xba);
688 mipi_dsi_dcs_write_seq(dsi, 0x27, 0xa0);
689 mipi_dsi_dcs_write_seq(dsi, 0x33, 0xba);
690 mipi_dsi_dcs_write_seq(dsi, 0x34, 0xa0);
691 mipi_dsi_dcs_write_seq(dsi, 0x3f, 0xe0);
692 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_VSYNC_TIMING, 0x00);
693 mipi_dsi_dcs_write_seq(dsi, 0x44, 0x00);
694 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_GET_SCANLINE, 0x40);
695 mipi_dsi_dcs_write_seq(dsi, 0x48, 0xba);
696 mipi_dsi_dcs_write_seq(dsi, 0x49, 0xa0);
697 mipi_dsi_dcs_write_seq(dsi, 0x5b, 0x00);
698 mipi_dsi_dcs_write_seq(dsi, 0x5c, 0x00);
699 mipi_dsi_dcs_write_seq(dsi, 0x5d, 0x00);
700 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_CABC_MIN_BRIGHTNESS, 0xd0);
701 mipi_dsi_dcs_write_seq(dsi, 0x61, 0xba);
702 mipi_dsi_dcs_write_seq(dsi, 0x62, 0xa0);
703 mipi_dsi_dcs_write_seq(dsi, 0xf1, 0x10);
704 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x2a);
705 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
706 mipi_dsi_dcs_write_seq(dsi, 0x64, 0x16);
707 mipi_dsi_dcs_write_seq(dsi, 0x67, 0x16);
708 mipi_dsi_dcs_write_seq(dsi, 0x6a, 0x16);
709 mipi_dsi_dcs_write_seq(dsi, 0x70, 0x30);
710 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_READ_PPS_START, 0xf3);
711 mipi_dsi_dcs_write_seq(dsi, 0xa3, 0xff);
712 mipi_dsi_dcs_write_seq(dsi, 0xa4, 0xff);
713 mipi_dsi_dcs_write_seq(dsi, 0xa5, 0xff);
714 mipi_dsi_dcs_write_seq(dsi, 0xd6, 0x08);
715 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x26);
716 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
717 mipi_dsi_dcs_write_seq(dsi, 0x00, 0xa1);
718 mipi_dsi_dcs_write_seq(dsi, 0x0a, 0xf2);
719 mipi_dsi_dcs_write_seq(dsi, 0x04, 0x28);
720 mipi_dsi_dcs_write_seq(dsi, 0x06, 0x30);
721 mipi_dsi_dcs_write_seq(dsi, 0x0c, 0x13);
722 mipi_dsi_dcs_write_seq(dsi, 0x0d, 0x0a);
723 mipi_dsi_dcs_write_seq(dsi, 0x0f, 0x0a);
724 mipi_dsi_dcs_write_seq(dsi, 0x11, 0x00);
725 mipi_dsi_dcs_write_seq(dsi, 0x12, 0x50);
726 mipi_dsi_dcs_write_seq(dsi, 0x13, 0x51);
727 mipi_dsi_dcs_write_seq(dsi, 0x14, 0x65);
728 mipi_dsi_dcs_write_seq(dsi, 0x15, 0x00);
729 mipi_dsi_dcs_write_seq(dsi, 0x16, 0x10);
730 mipi_dsi_dcs_write_seq(dsi, 0x17, 0xa0);
731 mipi_dsi_dcs_write_seq(dsi, 0x18, 0x86);
732 mipi_dsi_dcs_write_seq(dsi, 0x19, 0x11);
733 mipi_dsi_dcs_write_seq(dsi, 0x1a, 0x7b);
734 mipi_dsi_dcs_write_seq(dsi, 0x1b, 0x10);
735 mipi_dsi_dcs_write_seq(dsi, 0x1c, 0xbb);
736 mipi_dsi_dcs_write_seq(dsi, 0x22, 0x00);
737 mipi_dsi_dcs_write_seq(dsi, 0x23, 0x00);
738 mipi_dsi_dcs_write_seq(dsi, 0x2a, 0x11);
739 mipi_dsi_dcs_write_seq(dsi, 0x2b, 0x7b);
740 mipi_dsi_dcs_write_seq(dsi, 0x1d, 0x00);
741 mipi_dsi_dcs_write_seq(dsi, 0x1e, 0xc3);
742 mipi_dsi_dcs_write_seq(dsi, 0x1f, 0xc3);
743 mipi_dsi_dcs_write_seq(dsi, 0x24, 0x00);
744 mipi_dsi_dcs_write_seq(dsi, 0x25, 0xc3);
745 mipi_dsi_dcs_write_seq(dsi, 0x2f, 0x05);
746 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_ROWS, 0xc3);
747 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_COLUMNS, 0x00);
748 mipi_dsi_dcs_write_seq(dsi, 0x32, 0xc3);
749 mipi_dsi_dcs_write_seq(dsi, 0x39, 0x00);
751 ret = mipi_dsi_dcs_set_pixel_format(dsi, 0xc3);
757 mipi_dsi_dcs_write_seq(dsi, 0x20, 0x01);
758 mipi_dsi_dcs_write_seq(dsi, 0x33, 0x11);
759 mipi_dsi_dcs_write_seq(dsi, 0x34, 0x78);
760 mipi_dsi_dcs_write_seq(dsi, 0x35, 0x16);
761 mipi_dsi_dcs_write_seq(dsi, 0xc8, 0x04);
762 mipi_dsi_dcs_write_seq(dsi, 0xc9, 0x82);
763 mipi_dsi_dcs_write_seq(dsi, 0xca, 0x4e);
764 mipi_dsi_dcs_write_seq(dsi, 0xcb, 0x00);
765 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_READ_PPS_CONTINUE, 0x4c);
766 mipi_dsi_dcs_write_seq(dsi, 0xaa, 0x47);
767 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x27);
768 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
769 mipi_dsi_dcs_write_seq(dsi, 0x56, 0x06);
770 mipi_dsi_dcs_write_seq(dsi, 0x58, 0x80);
771 mipi_dsi_dcs_write_seq(dsi, 0x59, 0x53);
772 mipi_dsi_dcs_write_seq(dsi, 0x5a, 0x00);
773 mipi_dsi_dcs_write_seq(dsi, 0x5b, 0x14);
774 mipi_dsi_dcs_write_seq(dsi, 0x5c, 0x00);
775 mipi_dsi_dcs_write_seq(dsi, 0x5d, 0x01);
776 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_CABC_MIN_BRIGHTNESS, 0x20);
777 mipi_dsi_dcs_write_seq(dsi, 0x5f, 0x10);
778 mipi_dsi_dcs_write_seq(dsi, 0x60, 0x00);
779 mipi_dsi_dcs_write_seq(dsi, 0x61, 0x1d);
780 mipi_dsi_dcs_write_seq(dsi, 0x62, 0x00);
781 mipi_dsi_dcs_write_seq(dsi, 0x63, 0x01);
782 mipi_dsi_dcs_write_seq(dsi, 0x64, 0x24);
783 mipi_dsi_dcs_write_seq(dsi, 0x65, 0x1c);
784 mipi_dsi_dcs_write_seq(dsi, 0x66, 0x00);
785 mipi_dsi_dcs_write_seq(dsi, 0x67, 0x01);
786 mipi_dsi_dcs_write_seq(dsi, 0x68, 0x25);
787 mipi_dsi_dcs_write_seq(dsi, 0x00, 0x00);
788 mipi_dsi_dcs_write_seq(dsi, 0x78, 0x00);
789 mipi_dsi_dcs_write_seq(dsi, 0xc3, 0x00);
790 mipi_dsi_dcs_write_seq(dsi, 0xd1, 0x24);
791 mipi_dsi_dcs_write_seq(dsi, 0xd2, 0x30);
792 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x2a);
793 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
794 mipi_dsi_dcs_write_seq(dsi, 0x22, 0x2f);
795 mipi_dsi_dcs_write_seq(dsi, 0x23, 0x08);
796 mipi_dsi_dcs_write_seq(dsi, 0x24, 0x00);
797 mipi_dsi_dcs_write_seq(dsi, 0x25, 0xc3);
798 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_GAMMA_CURVE, 0xf8);
799 mipi_dsi_dcs_write_seq(dsi, 0x27, 0x00);
800 mipi_dsi_dcs_write_seq(dsi, 0x28, 0x1a);
801 mipi_dsi_dcs_write_seq(dsi, 0x29, 0x00);
802 mipi_dsi_dcs_write_seq(dsi, 0x2a, 0x1a);
803 mipi_dsi_dcs_write_seq(dsi, 0x2b, 0x00);
804 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_WRITE_LUT, 0x1a);
805 mipi_dsi_dcs_write_seq(dsi, 0xff, 0xe0);
806 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
807 mipi_dsi_dcs_write_seq(dsi, 0x14, 0x60);
808 mipi_dsi_dcs_write_seq(dsi, 0x16, 0xc0);
809 mipi_dsi_dcs_write_seq(dsi, 0xff, 0xf0);
810 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
812 ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x08);
818 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x24);
819 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
821 ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x5d);
827 mipi_dsi_dcs_write_seq(dsi, 0x3b, 0x60);
828 mipi_dsi_dcs_write_seq(dsi, 0x4a, 0x5d);
829 mipi_dsi_dcs_write_seq(dsi, 0x4b, 0x60);
830 mipi_dsi_dcs_write_seq(dsi, 0x5a, 0x70);
831 mipi_dsi_dcs_write_seq(dsi, 0x5b, 0x60);
832 mipi_dsi_dcs_write_seq(dsi, 0x91, 0x44);
833 mipi_dsi_dcs_write_seq(dsi, 0x92, 0x75);
834 mipi_dsi_dcs_write_seq(dsi, 0xdb, 0x05);
835 mipi_dsi_dcs_write_seq(dsi, 0xdc, 0x75);
836 mipi_dsi_dcs_write_seq(dsi, 0xdd, 0x22);
837 mipi_dsi_dcs_write_seq(dsi, 0xdf, 0x05);
838 mipi_dsi_dcs_write_seq(dsi, 0xe0, 0x75);
839 mipi_dsi_dcs_write_seq(dsi, 0xe1, 0x05);
840 mipi_dsi_dcs_write_seq(dsi, 0xe2, 0x75);
841 mipi_dsi_dcs_write_seq(dsi, 0xe3, 0x05);
842 mipi_dsi_dcs_write_seq(dsi, 0xe4, 0x75);
843 mipi_dsi_dcs_write_seq(dsi, 0xe5, 0x05);
844 mipi_dsi_dcs_write_seq(dsi, 0xe6, 0x75);
845 mipi_dsi_dcs_write_seq(dsi, 0x5c, 0x00);
846 mipi_dsi_dcs_write_seq(dsi, 0x5d, 0x00);
847 mipi_dsi_dcs_write_seq(dsi, 0x8d, 0x00);
848 mipi_dsi_dcs_write_seq(dsi, 0x8e, 0x00);
849 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x25);
850 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
851 mipi_dsi_dcs_write_seq(dsi, 0x1f, 0x70);
852 mipi_dsi_dcs_write_seq(dsi, 0x20, 0x60);
853 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_GAMMA_CURVE, 0x70);
854 mipi_dsi_dcs_write_seq(dsi, 0x27, 0x60);
855 mipi_dsi_dcs_write_seq(dsi, 0x33, 0x70);
856 mipi_dsi_dcs_write_seq(dsi, 0x34, 0x60);
857 mipi_dsi_dcs_write_seq(dsi, 0x48, 0x70);
858 mipi_dsi_dcs_write_seq(dsi, 0x49, 0x60);
859 mipi_dsi_dcs_write_seq(dsi, 0x5b, 0x00);
860 mipi_dsi_dcs_write_seq(dsi, 0x61, 0x70);
861 mipi_dsi_dcs_write_seq(dsi, 0x62, 0x60);
862 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x26);
863 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
864 mipi_dsi_dcs_write_seq(dsi, 0x02, 0x31);
865 mipi_dsi_dcs_write_seq(dsi, 0x19, 0x0a);
866 mipi_dsi_dcs_write_seq(dsi, 0x1a, 0x7f);
867 mipi_dsi_dcs_write_seq(dsi, 0x1b, 0x0a);
868 mipi_dsi_dcs_write_seq(dsi, 0x1c, 0x0c);
869 mipi_dsi_dcs_write_seq(dsi, 0x2a, 0x0a);
870 mipi_dsi_dcs_write_seq(dsi, 0x2b, 0x7f);
871 mipi_dsi_dcs_write_seq(dsi, 0x1e, 0x75);
872 mipi_dsi_dcs_write_seq(dsi, 0x1f, 0x75);
873 mipi_dsi_dcs_write_seq(dsi, 0x25, 0x75);
874 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_ROWS, 0x75);
875 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_SET_PARTIAL_COLUMNS, 0x05);
876 mipi_dsi_dcs_write_seq(dsi, 0x32, 0x8d);
878 ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x75);
884 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x2a);
885 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
886 mipi_dsi_dcs_write_seq(dsi, 0x25, 0x75);
887 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x10);
888 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
889 mipi_dsi_dcs_write_seq(dsi, 0xb9, 0x01);
890 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x20);
891 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
892 mipi_dsi_dcs_write_seq(dsi, 0x18, 0x40);
893 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x10);
894 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
895 mipi_dsi_dcs_write_seq(dsi, 0xb9, 0x02);
897 ret = mipi_dsi_dcs_set_tear_on(dsi, MIPI_DSI_DCS_TEAR_MODE_VBLANK);
903 mipi_dsi_dcs_write_seq(dsi, 0xbb, 0x13);
904 mipi_dsi_dcs_write_seq(dsi, 0x3b, 0x03, 0x5f, 0x1a, 0x04, 0x04);
905 mipi_dsi_dcs_write_seq(dsi, 0xff, 0x10);
907 mipi_dsi_dcs_write_seq(dsi, 0xfb, 0x01);
909 ret = mipi_dsi_dcs_set_display_brightness(dsi, 0);
915 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY, 0x2c);
916 mipi_dsi_dcs_write_seq(dsi, MIPI_DCS_WRITE_POWER_SAVE, 0x00);
917 mipi_dsi_dcs_write_seq(dsi, 0x68, 0x05, 0x01);
919 ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
926 ret = mipi_dsi_dcs_set_display_on(dsi);
1078 ret = mipi_dsi_dcs_set_display_off(pinfo->dsi[i]);
1080 dev_err(&pinfo->dsi[i]->dev, "failed to set display off: %d\n", ret);
1084 ret = mipi_dsi_dcs_enter_sleep_mode(pinfo->dsi[i]);
1086 dev_err(&pinfo->dsi[i]->dev, "failed to enter sleep mode: %d\n", ret);
1109 static void nt36523_remove(struct mipi_dsi_device *dsi)
1111 struct panel_info *pinfo = mipi_dsi_get_drvdata(dsi);
1114 ret = mipi_dsi_detach(pinfo->dsi[0]);
1116 dev_err(&dsi->dev, "failed to detach from DSI0 host: %d\n", ret);
1119 ret = mipi_dsi_detach(pinfo->dsi[1]);
1121 dev_err(&pinfo->dsi[1]->dev, "failed to detach from DSI1 host: %d\n", ret);
1122 mipi_dsi_device_unregister(pinfo->dsi[1]);
1177 struct mipi_dsi_device *dsi = bl_get_data(bl);
1181 dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
1183 ret = mipi_dsi_dcs_set_display_brightness_large(dsi, brightness);
1187 dsi->mode_flags |= MIPI_DSI_MODE_LPM;
1194 struct mipi_dsi_device *dsi = bl_get_data(bl);
1198 dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
1200 ret = mipi_dsi_dcs_get_display_brightness_large(dsi, &brightness);
1204 dsi->mode_flags |= MIPI_DSI_MODE_LPM;
1214 static struct backlight_device *nt36523_create_backlight(struct mipi_dsi_device *dsi)
1216 struct device *dev = &dsi->dev;
1224 return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
1228 static int nt36523_probe(struct mipi_dsi_device *dsi)
1230 struct device *dev = &dsi->dev;
1253 /* If the panel is dual dsi, register DSI1 */
1257 dsi1 = of_graph_get_remote_node(dsi->dev.of_node, 1, -1);
1268 pinfo->dsi[1] = mipi_dsi_device_register_full(dsi1_host, info);
1269 if (IS_ERR(pinfo->dsi[1])) {
1271 return PTR_ERR(pinfo->dsi[1]);
1275 pinfo->dsi[0] = dsi;
1276 mipi_dsi_set_drvdata(dsi, pinfo);
1286 pinfo->panel.backlight = nt36523_create_backlight(dsi);
1299 pinfo->dsi[i]->lanes = pinfo->desc->lanes;
1300 pinfo->dsi[i]->format = pinfo->desc->format;
1301 pinfo->dsi[i]->mode_flags = pinfo->desc->mode_flags;
1303 ret = mipi_dsi_attach(pinfo->dsi[i]);